![]() |
VR-Forces 4.0.4 Class Documentation
|
00001 /******************************************************************************* 00002 ** Copyright (c) 2008 MAK Technologies, Inc. 00003 ** All rights reserved. 00004 *******************************************************************************/ 00005 /******************************************************************************* 00006 ** $RCSfile: DtObjectsListPanel.h,v $ $Revision: 1.22 $ $State: Exp $ 00007 *******************************************************************************/ 00008 00011 00012 #pragma once 00013 00014 #include <vrvCoreQt/vrvCoreQt.h> 00015 #include <vrvCoreQt/DtPage.h> 00016 #include <QtGui/QWidget> 00017 #include <vrvCore/DtObserverObject.h> 00018 #include <vrvCoreQt/DtDockable.h> 00019 00020 class QTabWidget; 00021 class QVBoxLayout; 00022 00023 namespace makVrv 00024 { 00025 //class DtObjectsListPage; 00026 class DtEntityListWidget; 00027 class DtDe; 00028 class DtInputDriver; 00029 class DtObserver; 00030 00033 class DT_DLL_VRVCOREQT DtObjectsListPanel : public DtPage 00034 { 00035 Q_OBJECT 00036 00037 public: 00038 00040 virtual ~DtObjectsListPanel(); 00041 00043 virtual QIcon icon(); 00044 00046 virtual QString title(); 00047 00049 virtual const std::string& pageClassName() const; 00050 00052 DtEntityListWidget* entityList() const; 00053 00054 protected: 00055 00057 friend class DtObjectsListPageCreator; 00058 00060 DtObjectsListPanel(DtDe& de, QWidget* parent = 0, Qt::WindowFlags f = 0); 00061 00063 virtual void activate(); 00064 00066 virtual void deactivate(); 00067 00068 virtual void createEntityListView(); 00069 00071 virtual void initConnections(QWidget* list); 00072 00074 void setAttachMode( DtObserverObject::AttachType attachType ); 00075 00076 void attachSelected(); 00077 00079 void onInputDriverCreated( DtInputDriver* inputDriver ); 00080 00082 void onInputDriverAboutToBeDestroyed( DtInputDriver* inputDriver ); 00083 00084 signals: 00085 00086 void rightClickOnItem( QPoint where ); 00087 00088 void deleteRequested(); 00089 00090 public slots: 00091 00093 virtual void tick(); 00094 00095 virtual void onRightClicked( QPoint where ); 00096 00097 private: 00098 00100 DtObjectsListPanel(const DtObjectsListPanel& orig); 00101 00103 DtObjectsListPanel& operator=(const DtObjectsListPanel& orig); 00104 00105 protected: 00106 00107 QVBoxLayout* myLayout; 00108 DtEntityListWidget* myEntityList; 00109 DtInputDriver* myInputDriver; 00110 std::string myClassName; 00111 }; 00112 00115 class DT_DLL_VRVCOREQT DtObjectsListPageCreator : public DtPageCreator 00116 { 00117 public: 00118 00120 DtObjectsListPageCreator(DtDe& de); 00121 00123 virtual ~DtObjectsListPageCreator(); 00124 00128 virtual std::string pageClassName() const; 00129 00131 virtual DtPage* create(QWidget* parent = 0, Qt::WindowFlags f = 0); 00132 }; 00133 }