AbstractTasksModel

Qualified name: mv::AbstractTasksModel

class AbstractTasksModel : public mv::StandardItemModel

Tasks model class.

Standard item model class for tasks

Author

Thomas Kroes

Subclassed by mv::TasksListModel, mv::TasksTreeModel

Public Types

enum class Column

Task columns.

Values:

enumerator Name
enumerator Enabled

Name of the task.

enumerator Visible

Whether the task is enabled, disabled tasks are not included in task aggregation.

enumerator Progress

Whether the task is visible in the user interface.

enumerator ProgressDescription

Task progress.

enumerator ProgressText

Progress description.

enumerator Status

Progress text.

enumerator ProgressMode

Status of the task.

enumerator ID

Progress mode (manual, subtasks or aggregate)

enumerator ParentID

Globally unique identifier of the task.

enumerator Type

Globally unique identifier of the parent task (empty string if not a child task)

enumerator GuiScopes

Task type.

enumerator MayKill

Task GUI scopes.

enumerator Kill

Task may kill boolean.

enumerator Count

Column for killing a task.

Public Functions

AbstractTasksModel(QObject *parent = nullptr)

Construct with parent object.

Parameters:

parent – Pointer to parent object

QStandardItem *itemFromTask(Task *task) const

Get item from task.

Returns:

Pointer to found item, nullptr otherwise

Public Static Attributes

static QMap<Column, ColumHeaderInfo> columnInfo

Column name and tooltip.

struct ColumHeaderInfo

Header strings for several data roles.

Public Members

QString _edit

Header string for display role.

QString _tooltip

Header string for edit role.

class EnabledItem : public mv::AbstractTasksModel::Item

Standard model item class for displaying whether the task is enabled or not.

Public Functions

EnabledItem(Task *task)

Construct with task.

Parameters:

task – Pointer to task to display item for

QVariant data(int role = Qt::UserRole + 1) const override

Get model data for role.

Returns:

Data for role in variant form

class GuiScopesItem : public mv::AbstractTasksModel::Item

Standard model item class for displaying the task GUI scopes.

Public Functions

GuiScopesItem(Task *task)

Construct with task.

Parameters:

task – Pointer to task to display item for

QVariant data(int role = Qt::UserRole + 1) const override

Get model data for role.

Returns:

Data for role in variant form

class HeaderItem : public QStandardItem

Header standard model item class.

Public Functions

HeaderItem(const ColumHeaderInfo &columHeaderInfo)

Construct with columHeaderInfo.

Parameters:

columHeaderInfo – Column header info

QVariant data(int role = Qt::UserRole + 1) const override

Get model data for role.

Returns:

Data for role in variant form

class IdItem : public mv::AbstractTasksModel::Item

Standard model item class for displaying the task identifier.

Public Functions

QVariant data(int role = Qt::UserRole + 1) const override

Get model data for role.

Returns:

Data for role in variant form

Item(Task *task, bool editable = false)

Use base task item constructor.

class Item : public QStandardItem, public QObject

Base standard model item class for task.

Subclassed by mv::AbstractTasksModel::EnabledItem, mv::AbstractTasksModel::GuiScopesItem, mv::AbstractTasksModel::IdItem, mv::AbstractTasksModel::KillItem, mv::AbstractTasksModel::MayKillItem, mv::AbstractTasksModel::NameItem, mv::AbstractTasksModel::ParentIdItem, mv::AbstractTasksModel::ProgressDescriptionItem, mv::AbstractTasksModel::ProgressItem, mv::AbstractTasksModel::ProgressModeItem, mv::AbstractTasksModel::ProgressTextItem, mv::AbstractTasksModel::StatusItem, mv::AbstractTasksModel::TypeItem, mv::AbstractTasksModel::VisibleItem

Public Functions

Item(Task *task, bool editable = false)

Construct with task.

Parameters:
  • task – Pointer to task to display item for

  • editable – Whether the model item is editable or not

Task *getTask() const

Get task return Pointer to task to display item for.

class KillItem : public mv::AbstractTasksModel::Item

Standard model item class for killing a task.

Public Functions

KillItem(Task *task)

Construct with task.

Parameters:

task – Pointer to task to display item for

QVariant data(int role = Qt::UserRole + 1) const override

Get model data for role.

Returns:

Data for role in variant form

class MayKillItem : public mv::AbstractTasksModel::Item

Standard model item class for displaying whether the task may be killed.

Public Functions

QVariant data(int role = Qt::UserRole + 1) const override

Get model data for role.

Returns:

Data for role in variant form

Item(Task *task, bool editable = false)

Use base task item constructor.

class NameItem : public mv::AbstractTasksModel::Item

Standard model item class for displaying the task name.

Public Functions

NameItem(Task *task)

Construct with task.

Parameters:

task – Pointer to task to display item for

QVariant data(int role = Qt::UserRole + 1) const override

Get model data for role.

Returns:

Data for role in variant form

void setData(const QVariant &value, int role) override

Set model data to value for role.

inline gui::StringAction &getStringAction()

Get string action.

Returns:

String action for use in item delegates

class ParentIdItem : public mv::AbstractTasksModel::Item

Standard model item class for displaying the parent task identifier.

Public Functions

QVariant data(int role = Qt::UserRole + 1) const override

Get model data for role.

Returns:

Data for role in variant form

Item(Task *task, bool editable = false)

Use base task item constructor.

class ProgressDescriptionItem : public mv::AbstractTasksModel::Item

Standard model item class for displaying the progress description.

Public Functions

ProgressDescriptionItem(Task *task)

Construct with task.

Parameters:

task – Pointer to task to display item for

QVariant data(int role = Qt::UserRole + 1) const override

Get model data for role.

Returns:

Data for role in variant form

class ProgressItem : public mv::AbstractTasksModel::Item

Standard model item class for displaying the task progress.

Public Functions

ProgressItem(Task *task)

Construct with task.

Parameters:

task – Pointer to task to display item for

QVariant data(int role = Qt::UserRole + 1) const override

Get model data for role.

Returns:

Data for role in variant form

inline gui::TaskAction &getTaskAction()

Get task action.

Returns:

Task action for use in item delegate (its built-in progress action)

class ProgressModeItem : public mv::AbstractTasksModel::Item

Standard model item class for displaying the progress mode.

Public Functions

ProgressModeItem(Task *task)

Construct with task.

Parameters:

task – Pointer to task to display item for

QVariant data(int role = Qt::UserRole + 1) const override

Get model data for role.

Returns:

Data for role in variant form

class ProgressTextItem : public mv::AbstractTasksModel::Item

Standard model item class for displaying the progress text.

Public Functions

ProgressTextItem(Task *task)

Construct with task.

Parameters:

task – Pointer to task to display item for

QVariant data(int role = Qt::UserRole + 1) const override

Get model data for role.

Returns:

Data for role in variant form

class Row : public QList<QStandardItem*>

Convenience class for combining task items in a row.

Public Functions

inline Row(Task *task)

Construct row with task.

Parameters:

task – Pointer to row task

class StatusItem : public mv::AbstractTasksModel::Item

Standard model item class for displaying the task status.

Public Functions

StatusItem(Task *task)

Construct with task.

Parameters:

task – Pointer to task to display item for

QVariant data(int role = Qt::UserRole + 1) const override

Get model data for role.

Returns:

Data for role in variant form

class TypeItem : public mv::AbstractTasksModel::Item

Standard model item class for displaying the task type.

Public Functions

QVariant data(int role = Qt::UserRole + 1) const override

Get model data for role.

Returns:

Data for role in variant form

Item(Task *task, bool editable = false)

Use base task item constructor.

class VisibleItem : public mv::AbstractTasksModel::Item

Standard model item class for displaying whether the task is visible or not.

Public Functions

VisibleItem(Task *task)

Construct with task.

Parameters:

task – Pointer to task to display item for

QVariant data(int role = Qt::UserRole + 1) const override

Get model data for role.

Returns:

Data for role in variant form