DatasetPickerAction

Qualified name: mv::gui::DatasetPickerAction

class DatasetPickerAction : public mv::gui::OptionAction

Dataset picker action class.

For picking a dataset from a list Automatically removes items when datasets are removed and renamed

Author

Thomas Kroes

Public Functions

Q_INVOKABLE DatasetPickerAction(QObject *parent, const QString &title)

Constructor.

Parameters:
  • parent – Pointer to parent object

  • title – Title of the action

mv::Datasets getDatasets() const

Get datasets.

Returns:

Datasets

void setDatasets(mv::Datasets datasets, bool silent = false)

Set the datasets from which can be picked (mode is set to StorageMode::Manual)

Parameters:
  • datasets – Datasets from which can be picked

  • silent – Whether the signal datasetsChanged is emitted

void setFilterFunction(const DatasetsFilterModel::FilterFunction &filterFunction)

Set datasets filter function.

Parameters:

filterFunction – Filter lambda (triggered when datasets are added and/or removed from the global datasets model)

mv::Dataset getCurrentDataset() const

Get the current dataset.

template<typename DatasetType>
inline mv::Dataset<DatasetType> getCurrentDataset() const

Get the current dataset.

void setCurrentDataset(mv::Dataset<mv::DatasetImpl> currentDataset)

Set current dataset to currentDataset.

Parameters:

currentDataset – Smart pointer to current dataset

void setCurrentDataset(const QString &datasetId)

Set current dataset by datasetId.

Parameters:

datasetId – Current dataset globally unique identifier

QString getCurrentDatasetId() const

Get current dataset globally unique identifier.

Returns:

The globally unique identifier of the currently selected dataset (if any)

void invalidateFilter()

Invalidate the current filter so that the internal datasets list is refreshed (only when population mode is AbstractDatasetsModel::PopulationMode::Automatic)

AbstractDatasetsModel::PopulationMode getPopulationMode() const

Get current population mode.

Returns:

Population mode

void setPopulationMode(AbstractDatasetsModel::PopulationMode populationMode)

Set population mode to populationMode.

Parameters:

populationMode – Population mode

virtual void fromVariantMap(const QVariantMap &variantMap) override

Load widget action from variant map.

Parameters:

variantMap – Variant map representation of the widget action

virtual QVariantMap toVariantMap() const override

Save widget action to variant map.

Returns:

Variant map representation of the widget action

void datasetAboutToBePicked(mv::Dataset<> currentDataset)

Signals that a dataset is about to be picked.

Parameters:

currentDataset – Smart pointer to current dataset (if any, otherwise an invalid dataset)

void datasetPicked(mv::Dataset<> pickedDataset)

Signals that a dataset has been picked.

Parameters:

pickedDataset – Smart pointer to picked dataset

void datasetsChanged(mv::Datasets datasets)

Signals that selectable datasets changed.

Parameters:

datasets – Selectable datasets

void populationModeChanged(AbstractDatasetsModel::PopulationMode previousPopulationMode, AbstractDatasetsModel::PopulationMode currentPopulationMode)

Signals that the population mode changed from previousPopulationMode to currentPopulationMode.

Parameters:
  • previousPopulationMode – Previous population mode

  • currentPopulationMode – Current population mode

Public Static Functions

static bool isValueSerializationDisabled()

Get whether value serialization is disabled.

Returns:

Boolean determining whether value serialization is disabled

static void setValueSerializationDisabled(bool valueSerializationDisabled = true)

Set value serialization to valueSerializationDisabled.

Parameters:

valueSerializationDisabled – Boolean determining whether value serialization is disabled

static void disableValueSerialization()

Disables serialization.

static void enableValueSerialization()

Disables serialization.

Protected Functions

virtual void connectToPublicAction(WidgetAction *publicAction, bool recursive) override

Connect this action to a public action.

Parameters:
  • publicAction – Pointer to public action to connect to

  • recursive – Whether to also connect descendant child actions

virtual void disconnectFromPublicAction(bool recursive) override

Disconnect this action from its public action.

Parameters:

recursive – Whether to also disconnect descendant child actions

struct ValueSerializationDisabler

Helper class for scoped value serialization disabling.