00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019 #ifndef OST_GUI_PERSPECTIVE_HH
00020 #define OST_GUI_PERSPECTIVE_HH
00021
00022
00023
00024
00025
00026
00027 #include <ost/gui/module_config.hh>
00028
00029 #include <QObject>
00030
00031 class QMenu;
00032 class QMenuBar;
00033 class QStatusBar;
00034 class QMainWindow;
00035 class QTextEdit;
00036 class QSlider;
00037
00038 namespace ost { namespace gui {
00039
00040
00041 class SideBar;
00042 class ThinSplitter;
00043 class MainArea;
00044 class PanelManager;
00045 class MainArea;
00046 class ButtonBar;
00047
00050 class DLLEXPORT_OST_GUI Perspective : public QObject {
00051 Q_OBJECT
00052 public:
00053 Perspective(QMainWindow* parent);
00054 ~Perspective();
00055
00058 QMenuBar* GetMenuBar();
00059
00062 QMenu* GetMenu(const QString& name);
00063
00066 PanelManager* GetPanels();
00067
00070 MainArea* GetMainArea();
00071
00074 void HideAllBars();
00075
00078 bool Restore();
00079
00082 bool Save();
00083
00084 void ChangeVerbositySlider(int value);
00085
00086 private slots:
00087 void AddSideBarWidget();
00088 void VerbosityChanged(int value);
00089
00090 public slots:
00093 void StatusMessage(const String& m);
00094
00095
00096 private:
00097 void SetupQuickAccessBar();
00098 QWidget* central_;
00099 QMenuBar* menu_bar_;
00100 MainArea* main_area_;
00101 PanelManager* panels_;
00102 QWidget* quick_access_bar_;
00103 QStatusBar* status_bar_;
00104 QSlider* verbosity_slider_;
00105 };
00106
00107 }}
00108
00109
00110 #endif