![]() |
VR-Forces 4.0.4 Class Documentation
|
00001 /****************************************************************************** 00002 ** Copyright (c) 2012 MAK Technologies, Inc. 00003 ** All rights reserved. 00004 ** Created: 5/15/12 MEM 00005 ******************************************************************************/ 00008 00011 00012 #pragma once 00013 00014 #include <bhave3DGui/bhave3DGuiDefines.h> 00015 #include <vrfGuiCoreQt/createObjectAction.h> 00016 #include <vrvCore/DtDe.h> 00017 #include <vrvUtil/DtSignalConnectionManager.h> 00018 00019 namespace makVrf 00020 { 00021 class DtVrfCreateMenu; 00022 } 00023 00024 namespace BHAVE 00025 { 00026 namespace BHAVE3DGui 00027 { 00028 class DT_DLL_bhave3DGui DtSignalCreateObjectAction : public makVrf::DtCreateObjectAction 00029 { 00030 public: 00031 DtSignalCreateObjectAction 00032 ( 00033 makVrv::DtDe& de, 00034 const std::string& path, 00035 const QString& title, 00036 const makVrf::DtEntityMapperKey& o 00037 ); 00038 00039 virtual ~DtSignalCreateObjectAction(); 00040 00042 boost::signal<void (const DtEntityType&, std::string, int, const std::vector<DtVector>&,double,bool, bool, const QString& )> signal_createObject; 00043 00044 protected: 00046 virtual void slot_createObject(const DtEntityType&, std::string, int, const std::vector<DtVector>&,double,bool, bool); 00047 00048 virtual void on_triggered(); 00049 virtual void slot_creationStopped(); 00050 00051 virtual makVrf::DtVrfCreateMenu* findCreateMenu(const QList<QWidget*>&) const; 00052 00053 protected: 00054 makVrv::DtDe& myDe; 00055 makVrv::DtSignalConnectionManager myConnectionManager; 00056 QString myEntityName; 00057 }; 00058 00059 class DT_DLL_bhave3DGui DtSignalCreateObjectActionCreator : public makVrf::DtCreateObjectActionCreator 00060 { 00061 public: 00062 DtSignalCreateObjectActionCreator(makVrv::DtDe&); 00063 00064 virtual ~DtSignalCreateObjectActionCreator(); 00065 00070 virtual makVrf::DtCreateObjectAction* create(makVrv::DtDe&, const std::string& menuId, const QString& menuName, const makVrf::DtEntityMapperKey& key); 00071 00073 boost::signal<void (const DtEntityType&, std::string, int, const std::vector<DtVector>&,double,bool, bool, const QString& )> signal_createObject; 00074 00075 protected: 00077 virtual void slot_createObject(const DtEntityType&, std::string, int, const std::vector<DtVector>&,double,bool, bool, const QString&); 00078 00079 protected: 00080 makVrv::DtDe& myDe; 00081 mutable makVrv::DtSignalConnectionManager myConnectionManager; 00082 }; 00083 } 00084 }