WindowController.h
Go to the documentation of this file.
1 /* -*- mode: c++ -*- */
2 
14 #ifndef WindowController_H
15 #define WindowController_H
16 
17 #include "qt/libqthippo.h"
18 
19 #ifdef _MSC_VER
20 #include <msdevstudio/MSconfig.h>
21 #endif
22 
23 #include <qglobal.h> // for version
24 
25 #include <list>
26 #include <string>
27 
28 class QAssistantClient;
29 class QRect;
30 
31 namespace hippodraw {
32 
33 class CanvasWindow;
34 class Inspector;
35 
55 {
56 
57 private:
58 
61 
63  std::list < CanvasWindow * > m_window_list;
64 
67 
70 
74 
80  static std::string s_version;
81 
85  bool m_quit;
86 
88 #if QT_VERSION < 0x040000
89  const QRect & getScreenRect ();
90 #else
91  QRect getScreenRect ();
92 #endif
93 
96  void positionCanvas ( CanvasWindow * window );
97 
101  void resizeCanvas ( CanvasWindow * window );
102 
106  void positionInspector ();
107 
110  void moveInspector ( CanvasWindow * window );
111 
112 public:
113 
116  WindowController ( );
117 
119  ~WindowController();
120 
122  static WindowController * instance ();
123 
125  static const std::string & version ();
126 
128  void createInspector ( );
129 
131  void newWindow ( CanvasWindow * );
132 
136  void aboutToClose ( CanvasWindow * window );
137 
141  void quitOnLastWindowClose ( bool yes = true );
142 
147  void hasBeenHidden ();
148 
151  void unHide ( CanvasWindow * window );
152 
157  bool okToQuit ();
158 
160  CanvasWindow * currentCanvas ();
161 
166  void setCurrentCanvas ( CanvasWindow * canvas );
167 
169  Inspector * getInspector();
170 
176  void updateActions ();
177 
181  void closeAllWindows ( bool alsoDelete );
182 
185  void setFirstWindow ();
186 
189  void openAssistant ();
190 
191 };
192 
193 } // namespace hippodraw
194 
195 #endif // WindowController_H

Generated for HippoDraw Class Library by doxygen