Isis 3.0 Programmer Reference
| Home |
AbstractProjectItemView is a base class for views of a ProjectItemModel in Qt's model-view framework. More...
#include <AbstractProjectItemView.h>
Public Slots | |
virtual void | addItem (ProjectItem *item) |
Adds an item to the view. More... | |
virtual void | addItems (QList< ProjectItem * > items) |
Adds several items to the view. More... | |
virtual void | removeItem (ProjectItem *item) |
Removes an item to the view. More... | |
virtual void | removeItems (QList< ProjectItem * > items) |
Removes several items from the view. More... | |
Public Member Functions | |
AbstractProjectItemView (QWidget *parent=0) | |
Constructs the AbstractProjectItemView. More... | |
virtual void | setModel (ProjectItemModel *model) |
Sets the model used by the view. More... | |
virtual ProjectItemModel * | model () |
Returns the model used by the view. More... | |
virtual void | dragEnterEvent (QDragEnterEvent *event) |
Accepts the drag enter event if the internal model can accept the mime data. More... | |
virtual void | dragMoveEvent (QDragMoveEvent *event) |
Accepts the drag event if the internal model can accept the mime data. More... | |
virtual void | dropEvent (QDropEvent *event) |
Drops the data into the internal model if it can accept the data. More... | |
virtual QList< QAction * > | permToolBarActions () |
Returns a list of actions appropriate for the permanent tool bar. More... | |
virtual QList< QAction * > | activeToolBarActions () |
Returns a list of actions appropriate for the active tool bar. More... | |
virtual QList< QAction * > | toolPadActions () |
Returns a list of actions appropriate for the tool pad. More... | |
virtual QList< QAction * > | contextMenuActions () |
Returns a list of actions appropriate for a context menu. More... | |
virtual QList< QAction * > | fileMenuActions () |
Returns a list of actions appropriate for a file menu. More... | |
virtual QList< QAction * > | projectMenuActions () |
Returns a list of actions appropriate for a project menu. More... | |
virtual QList< QAction * > | editMenuActions () |
Returns a list of actions appropriate for an edit menu. More... | |
virtual QList< QAction * > | viewMenuActions () |
Returns a list of actions appropriate for a view menu. More... | |
virtual QList< QAction * > | settingsMenuActions () |
Returns a list of actions appropriate for a settings menu. More... | |
virtual QList< QAction * > | helpMenuActions () |
Returns a list of actions appropriate for a help menu. More... | |
virtual ProjectItem * | currentItem () |
Returns the current item of the model. More... | |
virtual QList< ProjectItem * > | selectedItems () |
Return the selected items of the model. More... | |
virtual ProjectItemModel * | internalModel () |
Returns the internal model of the view. More... | |
virtual void | setInternalModel (ProjectItemModel *model) |
Sets the internal model of the view. More... | |
Private Attributes | |
ProjectItemModel * | m_internalModel |
The internal model used by the view. More... | |
AbstractProjectItemView is a base class for views of a ProjectItemModel in Qt's model-view framework.
AbstractProjectItemView is not meant to be instantiated directly. A view usually only shows items that have been added to the view. The views contains an internal ProjectItemProxyModel that represents the items appropriately for the view.
An AbstractProjectItemView may provide QActions for manipulating the view. These actions can be accessed in different contexts through toolBarActions(), menuActions(), and contextMenuActions().
When mime data is dropped on a view the view adds the selected items from the source model to the view.
Note that AbstractProjectItemView does not inherit from QAbstractItemView.
2015-10-21 Jeffrey Covington - Original version.
2016-06-27 Ian Humphrey - Minor updates to documentation and coding standards. Fixes #4004.
2016-07-28 Tracie Sucharski - Implemented removeItem and removeItems methods.
2016-08-25 Adam Paquette - Minor updates to documentation. Fixes #4299.
Definition at line 64 of file AbstractProjectItemView.h.
Isis::AbstractProjectItemView::AbstractProjectItemView | ( | QWidget * | parent = 0 | ) |
Constructs the AbstractProjectItemView.
[in] | parent | (QWidget *) The parent widget |
Definition at line 44 of file AbstractProjectItemView.cpp.
References m_internalModel.
Returns a list of actions appropriate for the active tool bar.
Reimplemented in Isis::CubeDnView, Isis::Footprint2DView, and Isis::ControlPointEditView.
Definition at line 161 of file AbstractProjectItemView.cpp.
|
virtualslot |
Adds an item to the view.
The item must be part of the view's model. This method can be overriden in a subclass to filter out unneeded items.
[in] | item | (ProjectItem *) The item to add. |
Definition at line 273 of file AbstractProjectItemView.cpp.
References internalModel().
Referenced by Isis::CubeDnView::addItem(), and addItems().
|
virtualslot |
Adds several items to the view.
The items must be a part of the view's model.
[in] | items | (QList<ProjectItem *>) The items to add. |
Definition at line 287 of file AbstractProjectItemView.cpp.
References addItem().
Referenced by Isis::CubeDnViewWorkOrder::syncRedo(), and Isis::Footprint2DViewWorkOrder::syncRedo().
Returns a list of actions appropriate for a context menu.
Definition at line 181 of file AbstractProjectItemView.cpp.
|
virtual |
Returns the current item of the model.
Definition at line 251 of file AbstractProjectItemView.cpp.
References Isis::ProjectItemModel::currentItem(), and model().
|
virtual |
Accepts the drag enter event if the internal model can accept the mime data.
[in] | event | (QDragEnterEvent *) The drag event |
Definition at line 106 of file AbstractProjectItemView.cpp.
References internalModel().
Referenced by Isis::Footprint2DView::eventFilter().
|
virtual |
Accepts the drag event if the internal model can accept the mime data.
[in] | event | (QDragMoveEvent *) The drag event |
Definition at line 121 of file AbstractProjectItemView.cpp.
References internalModel().
Referenced by Isis::Footprint2DView::eventFilter().
|
virtual |
Drops the data into the internal model if it can accept the data.
[in] | event | (QDropEvent *) The drop event |
Definition at line 135 of file AbstractProjectItemView.cpp.
References internalModel().
Referenced by Isis::Footprint2DView::eventFilter().
Returns a list of actions appropriate for an edit menu.
Reimplemented in Isis::CubeDnView.
Definition at line 211 of file AbstractProjectItemView.cpp.
Returns a list of actions appropriate for a file menu.
Reimplemented in Isis::CubeDnView.
Definition at line 191 of file AbstractProjectItemView.cpp.
Returns a list of actions appropriate for a help menu.
Reimplemented in Isis::CubeDnView.
Definition at line 241 of file AbstractProjectItemView.cpp.
|
virtual |
Returns the internal model of the view.
By default it is a proxy model.
Definition at line 95 of file AbstractProjectItemView.cpp.
References m_internalModel.
Referenced by addItem(), Isis::CubeDnView::CubeDnView(), dragEnterEvent(), dragMoveEvent(), dropEvent(), Isis::Footprint2DView::Footprint2DView(), model(), Isis::CubeDnView::onCubeViewportActivated(), Isis::CubeDnView::onCubeViewportDeleted(), Isis::CubeDnView::onCurrentChanged(), Isis::Footprint2DView::onQueueSelectionChanged(), Isis::ProjectItemTreeView::ProjectItemTreeView(), removeItem(), Isis::ProjectItemTreeView::setInternalModel(), and setModel().
|
virtual |
Returns the model used by the view.
If the internal model is a proxy model, it returns the source model.
Definition at line 70 of file AbstractProjectItemView.cpp.
References internalModel().
Referenced by currentItem(), selectedItems(), and setInternalModel().
Returns a list of actions appropriate for the permanent tool bar.
Reimplemented in Isis::CubeDnView, Isis::Footprint2DView, and Isis::ControlPointEditView.
Definition at line 151 of file AbstractProjectItemView.cpp.
Returns a list of actions appropriate for a project menu.
Reimplemented in Isis::CubeDnView.
Definition at line 201 of file AbstractProjectItemView.cpp.
|
virtualslot |
Removes an item to the view.
The item must be part of the view's model. This method can be overriden in a subclass to filter out unneeded items.
[in] | item | (ProjectItem *) The item to remove. |
Definition at line 301 of file AbstractProjectItemView.cpp.
References internalModel().
Referenced by removeItems().
|
virtualslot |
Removes several items from the view.
The items must be a part of the view's model.
[in] | items | (QList<ProjectItem *>) The items to remove. |
Definition at line 316 of file AbstractProjectItemView.cpp.
References removeItem().
|
virtual |
Return the selected items of the model.
Definition at line 261 of file AbstractProjectItemView.cpp.
References model(), and Isis::ProjectItemModel::selectedItems().
|
virtual |
Sets the internal model of the view.
[in] | model | (ProjectItemModel *) The new internal model |
Reimplemented in Isis::ProjectItemTreeView.
Definition at line 84 of file AbstractProjectItemView.cpp.
References m_internalModel, and model().
Referenced by Isis::ProjectItemTreeView::setInternalModel().
|
virtual |
Sets the model used by the view.
If the internal model is a proxy model, it sets the source model.
[in] | model | (ProjectItemModel *) The new model |
Definition at line 56 of file AbstractProjectItemView.cpp.
References internalModel().
Referenced by Isis::Directory::addCubeDnView(), Isis::Directory::addFootprint2DView(), and Isis::Directory::addProjectItemTreeView().
Returns a list of actions appropriate for a settings menu.
Reimplemented in Isis::CubeDnView.
Definition at line 231 of file AbstractProjectItemView.cpp.
Returns a list of actions appropriate for the tool pad.
Reimplemented in Isis::CubeDnView, Isis::Footprint2DView, and Isis::ControlPointEditView.
Definition at line 171 of file AbstractProjectItemView.cpp.
Returns a list of actions appropriate for a view menu.
Reimplemented in Isis::CubeDnView.
Definition at line 221 of file AbstractProjectItemView.cpp.
|
private |
The internal model used by the view.
Definition at line 105 of file AbstractProjectItemView.h.
Referenced by AbstractProjectItemView(), internalModel(), and setInternalModel().