23 #include <QContextMenuEvent>
33 setObjectName(
"MaskEditor");
34 setSizePolicy(QSizePolicy::Expanding, QSizePolicy::Expanding);
36 auto splitter =
new QSplitter;
39 splitter->setCollapsible(1,
true);
41 addToolBar(Qt::RightToolBarArea,
m_toolBar);
43 setCentralWidget(splitter);
56 ASSERT(maskContainerIndex.isValid());
#define ASSERT(condition)
Defines class MaskEditorActions.
Defines class MaskEditorCanvas.
Defines class MaskEditorPropertyPanel.
Defines class MaskEditor.
Defines class MaskGraphicsScene.
Defines class SessionModel.
Defines actions for MaskEditor which are related to selected MaskItem (toggle mask value,...
void propertyPanelRequest()
QList< QAction * > topToolBarActions()
void onItemContextMenuRequest(const QPoint &point)
Constructs MaskItem context menu following the request from MaskGraphicsScene or MaskEditorInfoPanel.
void setModel(SessionModel *maskModel, const QModelIndex &rootIndex)
void setSelectionModel(QItemSelectionModel *selectionModel)
void onDeleteMaskAction()
Painting widget for MaskEditor, contains graphics scene and graphics view.
void deleteSelectedRequest()
void onSavePlotRequest()
Saves plot into project directory.
void changeActivityRequest(MaskEditorFlags::Activity)
void onResetViewRequest()
MaskGraphicsScene * getScene()
void onPresentationTypeRequest(MaskEditorFlags::PresentationType presentationType)
void setSelectionModel(QItemSelectionModel *model)
void setMaskContext(SessionModel *model, const QModelIndex &maskContainerIndex, IntensityDataItem *intensityItem)
Tool widget for MaskEditor.
void setPanelHidden(bool value)
Show/Hide panel. When panel is hidden, all property editors are disabled.
void itemContextMenuRequest(const QPoint &point)
void setMaskContext(SessionModel *model, const QModelIndex &maskContainerIndex, IntensityDataItem *intensityItem)
QItemSelectionModel * selectionModel()
QList< QAction * > topToolBarActions()
Returns list of actions intended for styled toolbar (on the top).
MaskEditorCanvas * m_editorCanvas
void onPropertyPanelRequest()
shows/hides right panel with properties
void contextMenuEvent(QContextMenuEvent *event)
Context menu reimplemented to supress default menu.
MaskEditor(QWidget *parent=nullptr)
MaskEditorToolBar * m_toolBar
MaskEditorActions * m_editorActions
void setMaskContext(SessionModel *model, const QModelIndex &maskContainerIndex, IntensityDataItem *intensityItem)
Main method to setup context for mask editing.
MaskEditorPropertyPanel * m_editorPropertyPanel
void onMaskValueChanged(MaskEditorFlags::MaskValue value)
void itemContextMenuRequest(const QPoint &point)
void onActivityModeChanged(MaskEditorFlags::Activity value)
QString modelType() const
Get model type.
SessionItem * itemForIndex(const QModelIndex &index) const