Isis 3 Programmer Reference
|
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... | |
virtual void | disableActions () |
Disables toolbars and toolpad actions. More... | |
Signals | |
void | windowChangeEvent (bool event) |
Public Member Functions | |
AbstractProjectItemView (QWidget *parent=0) | |
Constructs the AbstractProjectItemView. More... | |
virtual QSize | sizeHint () const |
Returns the suggested size. 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 void | moveEvent (QMoveEvent *event) |
virtual void | resizeEvent (QResizeEvent *event) |
virtual void | enterEvent (QEvent *event) |
Enables actions when cursor enters the view. More... | |
virtual void | leaveEvent (QEvent *event) |
Disables actions when cursor leaves the view. More... | |
virtual void | enableActions () |
Enables toolbars and toolpad actions. More... | |
virtual QList< QAction * > | contextMenuActions () |
Returns a list of actions appropriate for a context 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.
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.
Definition at line 79 of file AbstractProjectItemView.h.
Isis::AbstractProjectItemView::AbstractProjectItemView | ( | QWidget * | parent = 0 | ) |
Constructs the AbstractProjectItemView.
[in] | parent | (QMainWindow *) The parent widget |
Definition at line 34 of file AbstractProjectItemView.cpp.
References m_internalModel.
|
virtualslot |
Adds an item to the view.
The item must be part of the view's model. This method can be overridden in a subclass to filter out unneeded items.
[in] | item | (ProjectItem *) The item to add. |
Definition at line 250 of file AbstractProjectItemView.cpp.
References internalModel().
Referenced by Isis::CubeDnView::addItem().
|
virtualslot |
Adds several items to the view.
The items must be a part of the view's model. This method can be overridden in a subclass to filter out unneeded items.
[in] | items | (QList<ProjectItem *>) The items to add. |
Definition at line 264 of file AbstractProjectItemView.cpp.
References internalModel().
Referenced by Isis::CubeDnViewWorkOrder::execute(), and Isis::Footprint2DViewWorkOrder::execute().
Returns a list of actions appropriate for a context menu.
Definition at line 218 of file AbstractProjectItemView.cpp.
|
virtual |
Returns the current item of the model.
Definition at line 228 of file AbstractProjectItemView.cpp.
References Isis::ProjectItemModel::currentItem(), and model().
|
virtualslot |
Disables toolbars and toolpad actions.
Definition at line 196 of file AbstractProjectItemView.cpp.
Referenced by Isis::CnetEditorView::CnetEditorView(), Isis::CnetEditorView::createMenus(), Isis::Footprint2DView::Footprint2DView(), leaveEvent(), and Isis::CnetEditorView::leaveEvent().
|
virtual |
Accepts the drag enter event if the internal model can accept the mime data.
[in] | event | (QDragEnterEvent *) The drag event |
Definition at line 119 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 134 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 148 of file AbstractProjectItemView.cpp.
References internalModel().
Referenced by Isis::Footprint2DView::eventFilter().
|
virtual |
Enables toolbars and toolpad actions.
Reimplemented in Isis::Footprint2DView, and Isis::CubeDnView.
Definition at line 206 of file AbstractProjectItemView.cpp.
Referenced by enterEvent().
|
virtual |
Enables actions when cursor enters the view.
event | The enter event |
Definition at line 178 of file AbstractProjectItemView.cpp.
References enableActions().
|
virtual |
Returns the internal model of the view.
By default it is a proxy model.
Definition at line 108 of file AbstractProjectItemView.cpp.
References m_internalModel.
Referenced by addItem(), addItems(), 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 |
Disables actions when cursor leaves the view.
event | The leave event |
Reimplemented in Isis::CubeDnView, and Isis::CnetEditorView.
Definition at line 188 of file AbstractProjectItemView.cpp.
References disableActions().
|
virtual |
Returns the model used by the view.
If the internal model is a proxy model, it returns the source model.
Definition at line 83 of file AbstractProjectItemView.cpp.
References internalModel().
Referenced by currentItem(), Isis::BundleObservationView::displayCsvFile(), selectedItems(), setInternalModel(), Isis::ProjectItemTreeView::setInternalModel(), and setModel().
|
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 278 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 292 of file AbstractProjectItemView.cpp.
References removeItem().
|
virtual |
Return the selected items of the model.
Definition at line 238 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 97 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 69 of file AbstractProjectItemView.cpp.
References internalModel(), and model().
Referenced by Isis::Directory::addCubeDnView(), Isis::Directory::addFootprint2DView(), and Isis::Directory::addProjectItemTreeView().
|
virtual |
Returns the suggested size.
Reimplemented in Isis::ProjectItemTreeView, and Isis::ControlHealthMonitorView.
Definition at line 53 of file AbstractProjectItemView.cpp.
|
private |
The internal model used by the view.
Definition at line 123 of file AbstractProjectItemView.h.
Referenced by AbstractProjectItemView(), internalModel(), and setInternalModel().