![]() |
VR-Forces 4.0.4 Class Documentation
|
00001 /****************************************************************************** 00002 ** Copyright (c) 2010 MAK Technologies, Inc. 00003 ** All rights reserved. 00004 ******************************************************************************/ 00005 /****************************************************************************** 00006 ** $RCSfile: $ $Revision: $ $State: $ 00007 ******************************************************************************/ 00008 00012 00013 #pragma once 00014 #include <vrvCoreQt/vrvCoreQt.h> 00015 #include <vrvCore/DtPageCollection.h> 00016 #include <boost/unordered_map.hpp> 00017 00018 namespace makVrv 00019 { 00020 class DtPage; 00021 00026 class DT_DLL_VRVCOREQT DtQtPageCollection : public DtPageCollection 00027 { 00028 public: 00029 typedef boost::unordered_map<std::string,DtPage*> PageMap; 00030 00032 DtQtPageCollection(DtDe& de, const std::string& collectionClassName); 00033 00036 virtual ~DtQtPageCollection(); 00037 00040 void addPage(DtPage* page); 00041 00044 void removePage(DtPage* page, bool deletePage = true); 00045 00047 DtPage* findPage(const std::string& pageClassName); 00048 00050 const DtPage* findPage(const std::string& pageClassName) const; 00051 00053 const PageMap& pages() const; 00054 00056 virtual void removeContainer(); 00057 00059 virtual void bringToTop(); 00060 00061 protected: 00062 00063 virtual void activatePage(DtPage*); 00064 virtual void deactivatePage(DtPage*); 00065 00067 virtual void selectPage(const std::string& pageClassName); 00068 00070 virtual void addPageToGui(DtPage*) = 0; 00071 00073 virtual void removePageFromGui(DtPage*) = 0; 00074 00076 virtual void selectPageInGui(DtPage* page) = 0; 00077 00078 protected: 00079 PageMap myPages; 00080 }; 00081 } 00082