![]() |
VR-Vantage 1.4.1 API Class Documentation
|
00001 /****************************************************************************** 00002 ** Copyright (c) 2007 MAK Technologies, Inc. 00003 ** All rights reserved. 00004 ******************************************************************************/ 00005 /****************************************************************************** 00006 ** $RCSfile: DtDockable.h,v $ $Revision: 1.12 $ $State: Exp $ 00007 ******************************************************************************/ 00008 00012 00013 #pragma once 00014 #include <vrvCoreQt/vrvCoreQt.h> 00015 #include <QtCore/qnamespace.h> 00016 #include <QtGui/QDockWidget> 00017 #include <boost/signal.hpp> 00018 00019 class QWidget; 00020 class QDockWidget; 00021 class QTabBar; 00022 00023 namespace makVrv 00024 { 00025 class DtQtDeMainWindow; 00026 class DtDockWidgetItem; 00027 00031 class DT_DLL_VRVCOREQT DtDockable 00032 { 00033 00034 public: 00035 00036 friend class DtDockWidgetItem; 00037 00040 DtDockable(DtDe& de, const std::string& className); 00041 00043 virtual ~DtDockable(); 00044 00046 const std::string& className() const; 00047 00051 void dock(Qt::DockWidgetArea area); 00052 00054 virtual bool isDocked() const; 00055 00057 virtual void setContainerVisible(bool visible); 00058 00060 virtual void setContainerMovable(bool moveable); 00061 00063 virtual void setContainerFloatable(bool floatable); 00064 00066 virtual void setContainerClosable(bool closeable); 00067 00069 virtual bool isContainerHidden() const; 00070 00072 virtual bool isContainerMovable() const; 00073 00075 virtual bool isContainerFloatable() const; 00076 00078 virtual bool isContainerClosable() const; 00079 00081 virtual void showContainer(); 00082 00084 virtual void hideContainer(); 00085 00087 virtual void floatContainer(); 00088 00090 virtual void unfloatContainer(); 00091 00093 virtual void removeContainer(); 00094 00097 virtual bool initiallyVisible() const; 00098 00101 virtual Qt::DockWidgetArea initialDockWidgetLocation() const; 00102 00104 virtual bool containerTabbed() const; 00105 00108 virtual int containerTabIndex() const; 00109 00112 virtual void getContainerTabbedGeometry(int& x, int& y, int& width, int& height) const; 00113 00115 virtual QWidget* container(); 00116 00118 virtual void setContainer(QWidget* cont); 00119 00121 virtual void bringToTop(); 00122 00125 virtual void setDockWidgetItem(DtDockWidgetItem* item); 00126 00128 virtual DtDockWidgetItem* dockWidgetItem() const; 00129 00132 virtual void connectContainerToDockItem(); 00133 00134 protected: 00135 00137 QTabBar* tabBar() const; 00138 00139 protected: 00140 00142 QWidget* myContainer; 00143 std::string myClassName; 00144 DtDe& myDe; 00145 bool myIsFloatable; 00146 bool myIsClosable; 00147 bool myIsMovable; 00148 DtDockWidgetItem* myDockWidgetItem; 00149 00150 }; 00151 }