Isis 3.0 Programmer Reference
Back | Home
CubeDnView.h
Go to the documentation of this file.
1 #ifndef CubeDnView_h
2 #define CubeDnView_h
3 
26 #include <QList>
27 #include <QMap>
28 #include <QWidgetAction>
29 
31 #include "FileName.h"
32 #include "XmlStackedHandler.h"
33 
34 class QAction;
35 class QDataStream;
36 class QMenu;
37 class QModelIndex;
38 class QToolBar;
39 class QXmlStreamWriter;
40 
41 namespace Isis {
42 
43  class ControlPoint;
44  class Cube;
45  class Directory;
46  class Image;
47  class ImageList;
48  class MdiCubeViewport;
49  class Project;
50  class ToolPad;
51  class Workspace;
52  class XmlStackedHandlerReader;
53 
75 
76  Q_OBJECT
77 
78  public:
79  CubeDnView(Directory *directory, QWidget *parent=0);
80  ~CubeDnView();
81 
88 
92 
93  QSize sizeHint() const;
94 
95  bool viewportContainsShape(MdiCubeViewport *viewport);
96 
97  void load(XmlStackedHandlerReader *xmlReader, Project *project);
98  void save(QXmlStreamWriter &stream, Project *project, FileName newProjectRoot) const;
99 
100  signals:
101  void modifyControlPoint(ControlPoint *controlPoint);
102  void deleteControlPoint(ControlPoint *controlPoint);
103  void createControlPoint(double latitude, double longitude, Cube *cube,
104  bool isGroundSource = false);
105 
106  void controlPointAdded(QString newPointId);
107 
108  public slots:
109  void addItem(ProjectItem *item);
110 
111  private slots:
112  void onCurrentChanged(const QModelIndex &current);
114  void onItemAdded(ProjectItem *item);
115  void onCubeViewportAdded(MdiCubeViewport *viewport);
116  void onCubeViewportDeleted(QObject *obj);
117 
118  private:
120  void setWorkspaceActiveCube(Image *image);
121 
122  private:
129  class XmlHandler : public XmlStackedHandler {
130  public:
131  XmlHandler(CubeDnView *cubeDnView, Project *project);
132  ~XmlHandler();
133 
134  virtual bool startElement(const QString &namespaceURI, const QString &localName,
135  const QString &qName, const QXmlAttributes &atts);
136  virtual bool endElement(const QString &namespaceURI, const QString &localName,
137  const QString &qName);
138 
139  private:
140  Q_DISABLE_COPY(XmlHandler);
141 
144  };
145 
146  private:
149 
150  QMenu *m_fileMenu;
151  QMenu *m_viewMenu;
152  QMenu *m_optionsMenu;
153  QMenu *m_windowMenu;
154  QMenu *m_helpMenu;
155 
157 
161 
163  QWidgetAction *m_activeToolBarAction;
165  };
166 }
167 
168 #endif
Cube display widget for certain Isis MDI applications.
void setWorkspaceActiveCube(Image *image)
Raises the subwindow corresponding with an image to the top.
Definition: CubeDnView.cpp:541
CubeDnView * m_cubeDnView
The view we are working with.
Definition: CubeDnView.h:143
virtual QList< QAction * > activeToolBarActions()
Returns a list of actions for the active tool bar.
Definition: CubeDnView.cpp:391
void onItemAdded(ProjectItem *item)
Slot to connect to the itemAdded signal from a ProjectItemModel.
Definition: CubeDnView.cpp:498
The main project for cnetsuite.
Definition: Project.h:105
Workspace * m_workspace
The workspace.
Definition: CubeDnView.h:148
File name manipulation and expansion.
Definition: FileName.h:111
void onCubeViewportActivated(MdiCubeViewport *)
Slot to connect to the cubeViewportActivated signal from the Workspace.
Definition: CubeDnView.cpp:438
QToolBar * m_activeToolBar
A tool bar for storing actions.
Definition: CubeDnView.h:159
QList< QAction * > m_toolPadActions
The tool pad actions.
Definition: CubeDnView.h:164
void onCubeViewportDeleted(QObject *obj)
Slot to connect to the destroyed signal from a viewport.
Definition: CubeDnView.cpp:477
QAction * m_separatorAction
A separator action that is reused.
Definition: CubeDnView.h:156
virtual QList< QAction * > viewMenuActions()
Returns a list of actions appropriate for a view menu.
Definition: CubeDnView.cpp:347
QMap< Cube *, ProjectItem * > m_cubeItemMap
Maps cubes to their items.
Definition: CubeDnView.h:147
Cube * workspaceActiveCube()
Returns the cube of the active viewport in the Workspace, or a null pointer if no viewports are activ...
Definition: CubeDnView.cpp:527
QMenu * m_optionsMenu
Options menu for storing actions.
Definition: CubeDnView.h:152
AbstractProjectItemView is a base class for views of a ProjectItemModel in Qt&#39;s model-view framework...
virtual QList< QAction * > permToolBarActions()
Returns a list of actions for the permanent tool bar.
Definition: CubeDnView.cpp:381
QMenu * m_windowMenu
Window menu for storing actions.
Definition: CubeDnView.h:153
QMenu * m_viewMenu
View menu for storing actions.
Definition: CubeDnView.h:151
CubeDnView(Directory *directory, QWidget *parent=0)
Constructs the view, initializing the tools.
Definition: CubeDnView.cpp:91
QWidgetAction * m_activeToolBarAction
Widget of the active tool.
Definition: CubeDnView.h:163
virtual QList< QAction * > projectMenuActions()
Returns a list of actions appropriate for a project menu.
Definition: CubeDnView.cpp:328
Project * m_project
The current project.
Definition: CubeDnView.h:142
QMenu * m_helpMenu
Help menu for storing actions.
Definition: CubeDnView.h:154
XML Handler that parses XMLs in a stack-oriented way.
A single control point.
Definition: ControlPoint.h:339
This represents a cube in a project-based GUI interface.
Definition: Image.h:91
ToolPad * m_toolPad
A tool bar for storing actions.
Definition: CubeDnView.h:160
QSize sizeHint() const
Returns the suggested size.
Definition: CubeDnView.cpp:296
virtual QList< QAction * > toolPadActions()
Returns a list of actions for the tool pad.
Definition: CubeDnView.cpp:403
virtual QList< QAction * > settingsMenuActions()
Returns a list of actions appropriate for a settings menu.
Definition: CubeDnView.cpp:361
void onCubeViewportAdded(MdiCubeViewport *viewport)
Slot to connect to the viewportAdded signal from a Workspace.
Definition: CubeDnView.cpp:465
~CubeDnView()
Destructor.
Definition: CubeDnView.cpp:265
QMenu * m_fileMenu
File menu for storing actions.
Definition: CubeDnView.h:150
void addItem(ProjectItem *item)
Adds an item to the view.
Definition: CubeDnView.cpp:282
View that displays cubes in a QView-like way.
Definition: CubeDnView.h:74
QToolBar * m_permToolBar
A tool bar for storing actions.
Definition: CubeDnView.h:158
Represents an item of a ProjectItemModel in Qt&#39;s model-view framework.
Definition: ProjectItem.h:113
virtual QList< QAction * > fileMenuActions()
Returns a list of actions appropriate for a file menu.
Definition: CubeDnView.cpp:318
virtual QList< QAction * > editMenuActions()
Returns a list of actions appropriate for an edit menu.
Definition: CubeDnView.cpp:337
void onCurrentChanged(const QModelIndex &current)
Slot to connect to the currentChanged() signal from a selection model.
Definition: CubeDnView.cpp:415
QList< QAction * > m_permToolBarActions
The permanent tool bar actions.
Definition: CubeDnView.h:162
virtual QList< QAction * > helpMenuActions()
Returns a list of actions appropriate for a help menu.
Definition: CubeDnView.cpp:371
$Date$ $Revision$
his enables stack-based XML parsing of XML files.
IO Handler for Isis Cubes.
Definition: Cube.h:158

U.S. Department of the Interior | U.S. Geological Survey
ISIS | Privacy & Disclaimers | Astrogeology Research Program
To contact us, please post comments and questions on the ISIS Support Center
File Modified: 07/12/2023 23:17:06