![]() |
VR-Forces 4.0.4 Class Documentation
|
00001 /****************************************************************************** 00002 ** Copyright (c) 2010 MAK Technologies, Inc. 00003 ** All rights reserved. 00004 ******************************************************************************/ 00005 /****************************************************************************** 00006 ** $RCSfile: DtToolbarManager.h,v $ $Revision: 1.8 $ $State: Exp $ 00007 ******************************************************************************/ 00008 00012 00013 #pragma once 00014 #include <vrvCoreQt/vrvCoreQt.h> 00015 #include <vrvUtil/DtVirtualBaseClass.h> 00016 #include <vrvCore/DtToolbarPath.h> 00017 #include <vrvCore/DtToolbarManager.h> 00018 #include <QtCore/QObject> 00019 00020 class QToolBar; 00021 00022 namespace makVrv 00023 { 00024 class DtDe; 00025 class DtToolbarPath; 00026 00031 class DT_DLL_VRVCOREQT DtQtToolbarManager : public QObject, 00032 public DtToolbarManager 00033 { 00034 00035 typedef std::map<DtToolbarPath,QToolBar*> ToolbarMap; 00036 00037 Q_OBJECT; 00038 00039 public: 00040 00042 static DtQtToolbarManager& instance(DtDe& de); 00043 00046 //static void registerInstance(DtDe& de,DtQtToolbarManager* manager); 00047 00049 virtual ~DtQtToolbarManager(); 00050 00053 void registerToolbar(const DtToolbarPath& path, QToolBar* menu); 00054 00056 QToolBar* findToolbar(const DtToolbarPath& path) const; 00057 00059 boost::signal<void (const DtToolbarPath&)> signal_toolbarDeleted; 00060 00063 virtual bool getToolbarState(const DtToolbarPath& path, 00064 DtToolbarConfiguration::ToolbarState& state); 00065 00066 protected slots: 00067 00069 void onToolbarDestroyed(QObject* obj); 00070 00071 protected: 00072 00073 friend class DtQtToolbarManagerCreator; 00074 00076 DtQtToolbarManager(DtDe& de); 00077 00078 ToolbarMap myToolbars; 00079 }; 00080 00084 class DT_DLL_VRVCOREQT DtQtToolbarManagerCreator 00085 : public DtToolbarManagerCreator 00086 { 00087 public: 00088 00090 DtQtToolbarManagerCreator(); 00091 00093 virtual ~DtQtToolbarManagerCreator(); 00094 00096 virtual DtToolbarManager* create(DtDe& de); 00097 00098 }; 00099 }