Choreonoid  1.5
MainWindow.h
Go to the documentation of this file.
1 
5 #ifndef CNOID_BASE_MAIN_WINDOW_H
6 #define CNOID_BASE_MAIN_WINDOW_H
7 
8 #include "Archive.h"
9 #include <QMainWindow>
10 #include "exportdecl.h"
11 
12 namespace cnoid {
13 
14 class ToolBarArea;
15 class ViewArea;
16 class ToolBar;
17 class MainWindowImpl;
18 class ExtensionManager;
19 
20 class CNOID_EXPORT MainWindow : public QMainWindow
21 {
22 public:
23  static MainWindow* initialize(const char* appName, ExtensionManager* ext);
24  static MainWindow* instance();
25 
26  void show();
27  void setProjectTitle(const std::string& title);
28  ToolBarArea* toolBarArea();
29  ViewArea* viewArea();
30  void addToolBar(ToolBar* toolbar);
31  void getAllToolBars(std::vector<ToolBar*>& out_toolBars);
32  void getVisibleToolBars(std::vector<ToolBar*>& out_toolBars);
33  void restoreLayout(ArchivePtr archive);
34  void storeLayout(ArchivePtr archive);
35  void setInitialLayout(ArchivePtr archive);
36 
37 protected:
38  virtual void changeEvent(QEvent* event);
39  virtual void resizeEvent(QResizeEvent* event);
40  virtual void keyPressEvent(QKeyEvent* event);
41 
42 private:
43  MainWindowImpl* impl;
44 
45  MainWindow(const char* appName, ExtensionManager* ext);
46  virtual ~MainWindow();
47 
48  void storeWindowStateConfig();
49 
50  friend class AppImpl;
51  friend class ExtensionManager;
52 };
53 
54 }
55 
56 #endif
Definition: ExtensionManager.h:26
Definition: ViewArea.h:17
Definition: ToolBarArea.h:20
Definition: ToolBar.h:22
Definition: MainWindow.h:20
Defines the minimum processing for performing pasing file for STL.
Definition: AbstractSceneLoader.h:9
#define CNOID_EXPORT
Definition: Util/exportdecl.h:37