![]() |
VR-Forces 4.0.4 Class Documentation
|
00001 /******************************************************************************* 00002 ** Copyright (c) 2005 MAK Technologies, Inc. 00003 ** All rights reserved. 00004 *******************************************************************************/ 00005 /******************************************************************************* 00006 ** $RCSfile: utilityBar.h,v $ $Revision: 1.24 $ $State: Exp $ 00007 *******************************************************************************/ 00008 #ifndef utilityBar_H_ 00009 #define utilityBar_H_ 00010 00013 00014 #include "tmqt/tmqtDefines.h" 00015 00016 #include <QtGui/QDockWidget> 00017 #include <QtGui/QToolBar> 00018 #include <QtCore/QHash> 00019 #include <QtCore/QList> 00020 #include <QtGui/QLayout> 00021 #include <QtGui/QTabWidget> 00022 00023 class QVBoxLayout; 00024 class QWidget; 00025 class QScrollArea; 00026 class QVBox; 00027 class QTextStream; 00028 class QMainWindow; 00029 class QTabWidget; 00030 class QScrollArea; 00031 00032 class DT_DLL_tmqt DtToolBarArea 00033 { 00034 public: 00035 DtToolBarArea() : myWidget(NULL) {}; 00036 DtToolBarArea(const DtToolBarArea& orig) : 00037 myWidget(orig.myWidget) {}; 00038 00039 QMainWindow* myWidget; 00040 QScrollArea* myScrollView; 00041 }; 00042 00043 class DT_DLL_tmqt DtUtilityBar : public QDockWidget 00044 { 00045 Q_OBJECT; 00046 00047 public: 00048 DtUtilityBar(QMainWindow* parent); 00049 virtual ~DtUtilityBar(); 00050 00051 virtual void init(); 00052 00055 virtual QDockWidget* createToolBar(const QString& tab, const QString& toolBarName); 00056 00058 virtual QDockWidget* createToolBar(int iTab, const QString& toolBarName); 00059 00061 virtual QTextStream& write(QTextStream& ts); 00062 virtual QTextStream& read(QTextStream& ts); 00063 00064 virtual DtToolBarArea createToolBarArea(const QString& tab); 00065 00066 virtual QWidget* createTabArea(const QString& tab); 00067 00068 virtual bool renameTabArea(const QString& label, const QString& newLabel); 00069 00072 virtual bool removeTabArea(const QString& label); 00073 00074 QTabWidget* tabWidget(); 00075 00079 00080 virtual void removeToolBar(QDockWidget** bar, bool removePage = false); 00081 00082 public: 00083 static DtUtilityBar* create(QMainWindow* parent); 00084 00085 protected slots: 00086 virtual void toolBarDestroyed(); 00087 00088 protected: 00089 QTabWidget* myTabWidget; 00090 QMainWindow* myOwner; 00091 bool myShownOnce; 00092 00093 QList<QDockWidget*> myToolBars; 00094 QHash<QString, DtToolBarArea> myToolBarAreas; 00095 }; 00096 00097 inline QTabWidget* DtUtilityBar::tabWidget() 00098 { 00099 return myTabWidget; 00100 } 00101 00102 #endif