Isis 3 Developer Reference
CnetEditorView.h
Go to the documentation of this file.
1 #ifndef CnetEditorView_h
2 #define CnetEditorView_h
3 
25 #include <QList>
26 #include <QMap>
27 #include <QPointer>
28 #include <QSize>
29 
31 #include "FileName.h"
32 #include "XmlStackedHandler.h"
33 
34 class QAction;
35 class QToolBar;
36 class QWidgetAction;
37 class QXmlStreamWriter;
38 
39 namespace Isis {
40  class Control;
41  class CnetEditorWidget;
42  class Directory;
43  class FileName;
44  class Project;
45  class ToolPad;
46  class XmlStackedHandlerReader;
47  class ProjectItemViewMenu;
48 
79 
80  Q_OBJECT
81 
82  public:
83  CnetEditorView(Directory *directory, Control *control, FileName configFile,
84  QWidget *parent = 0);
86 
88  Control *control();
89 
90  void load(XmlStackedHandlerReader *xmlReader);
91  void save(QXmlStreamWriter &stream, Project *project, FileName newProjectRoot) const;
92 
93  private:
94  void createToolBars();
95  void createMenus();
96  void leaveEvent(QEvent *event);
97 
98 
105  class XmlHandler : public XmlStackedHandler {
106  public:
107  XmlHandler(CnetEditorView *cnetEditorView);
108  ~XmlHandler();
109 
110  virtual bool startElement(const QString &namespaceURI, const QString &localName,
111  const QString &qName, const QXmlAttributes &atts);
112  virtual bool endElement(const QString &namespaceURI, const QString &localName,
113  const QString &qName);
114 
115  private:
116  Q_DISABLE_COPY(XmlHandler);
117 
118  CnetEditorView *m_cnetEditorView;
119  };
120 
121  private:
122  QPointer<CnetEditorWidget> m_cnetEditorWidget;
123  QPointer<Control> m_control;
124 
125  QToolBar *m_permToolBar;
126  ProjectItemViewMenu *m_tablesMenu;
127 
128  };
129 }
130 
131 #endif // CNETEDITORVIEW_H
This represents an ISIS control net in a project-based GUI interface.
Definition: Control.h:79
Ipce view containing the CnetEditorWidget.
Definition: CnetEditorView.h:78
The main project for ipce.
Definition: Project.h:289
File name manipulation and expansion.
Definition: FileName.h:116
QMenu subclass that overrides the closeEvent.
Definition: ProjectItemViewMenu.h:40
AbstractProjectItemView is a base class for views of a ProjectItemModel in Qt&#39;s model-view framework...
Definition: AbstractProjectItemView.h:93
CnetEditorWidget * cnetEditorWidget()
Returns the cnetEditorWidget.
Definition: CnetEditorView.cpp:177
XML Handler that parses XMLs in a stack-oriented way.
Definition: XmlStackedHandler.h:112
void load(XmlStackedHandlerReader *xmlReader)
This method pushes a new XmlHandler into the parser stack.
Definition: CnetEditorView.cpp:197
~CnetEditorView()
Destructor.
Definition: CnetEditorView.cpp:97
void save(QXmlStreamWriter &stream, Project *project, FileName newProjectRoot) const
This method saves the Controls object ids to the stream.
Definition: CnetEditorView.cpp:209
Control * control()
Returns the Control displayed in the CnetEditorWidget
Definition: CnetEditorView.cpp:187
Namespace for ISIS/Bullet specific routines.
Definition: Apollo.h:31
CnetEditorView(Directory *directory, Control *control, FileName configFile, QWidget *parent=0)
Constructor.
Definition: CnetEditorView.cpp:54
$Date$ $Revision$
Definition: Directory.h:285
Manage a stack of content handlers for reading XML files.
Definition: XmlStackedHandlerReader.h:25
This widget provides full editing, filtering and viewing capabilities for the raw data in a control n...
Definition: CnetEditorWidget.h:88