![]() |
VR-Forces 4.0.4 Class Documentation
|
00001 /****************************************************************************** 00002 ** Copyright (c) 2011 MAK Technologies, Inc. 00003 ** All rights reserved. 00004 ******************************************************************************/ 00005 /****************************************************************************** 00006 ** $RCSfile: DtCustomControlObjectDialog.h,v $ $Revision: 1.0 $ $State: Exp $ 00007 ******************************************************************************/ 00008 00009 //\file DtCustomControlObjectDialog.h 00010 //\brief Contains DtCustomControlObjectDialog class. 00011 00012 #pragma once 00013 00014 #include <vrfGuiCoreQt/shapeObjectDefinitionDialog.h> 00015 #include <vlpi/entityType.h> 00016 #include <vrvCore/DtUniqueID.h> 00017 #include <string> 00018 00022 class QLineEdit; 00023 00024 namespace vrfCustomControlObjectExample 00025 { 00026 class DtCustomControlObjectDefinitionDialog; 00027 00031 const DtEntityType DtCustomControlObjectType = DtEntityType(18,-1,-1,1,0,0,101); 00032 00035 class DtCustomControlObjectDefinitionDialogLogic : public makVrf::DtShapeObjectDefinitionDialogLogic 00036 { 00037 public: 00039 DtCustomControlObjectDefinitionDialogLogic(makVrv::DtDe& de, DtCustomControlObjectDefinitionDialog* iface); 00040 00042 virtual ~DtCustomControlObjectDefinitionDialogLogic(); 00043 00049 virtual void setUserData(const std::string); 00050 00052 virtual std::string userData(); 00053 00057 virtual void processUserDataChanged(); 00058 00062 virtual void processPopulateDialog(const makVrv::DtUniqueID& id ); 00063 00064 protected: 00065 00068 DtCustomControlObjectDefinitionDialog* myCustomDialog; 00069 00070 }; 00071 00072 00076 class DtCustomControlObjectDefinitionDialog : public makVrf::DtShapeObjectDefinitionDialog 00077 { 00080 Q_OBJECT 00081 00082 public: 00084 DtCustomControlObjectDefinitionDialog(makVrv::DtDe& de, QWidget* parent, const std::string title="", DtDialogInteractionMode mode=DtCreationMode); 00085 00087 virtual ~DtCustomControlObjectDefinitionDialog(); 00088 00090 virtual void init(); 00091 00093 virtual int parameterOne(); 00094 00096 virtual double parameterTwo(); 00097 00099 virtual void setParameterOne(int); 00100 00102 virtual void setParameterTwo(double); 00103 00104 protected: 00105 00108 virtual void setupGui(); 00109 00112 void setupConnections(); 00113 00114 protected slots: 00115 00116 void slot_onUserDataChanged(); 00117 00118 protected: 00119 00123 DtCustomControlObjectDefinitionDialogLogic* myCustomLogic; 00124 QLineEdit* myParamOneLineEdit; 00125 QLineEdit* myParamTwoLineEdit; 00126 }; 00127 00128 00129 00130 class DtCustomControlObjectDefinitionDialogCreator : public makVrf::DtVrfObjectModifierDialogCreator 00131 { 00132 public: 00136 virtual makVrf::DtCreateAndEditObjectDialogInterface* create( 00137 makVrv::DtDe& de, 00138 QWidget* parent, 00139 DtEntityType entityType, 00140 const std::string title="", 00141 makVrf::DtCreationSignalType signalCreation=makVrf::DtNoCreationSignal, 00142 makVrf::DtCreateAndEditObjectDialogInterface::DtDialogInteractionMode mode=makVrf::DtCreateAndEditObjectDialogInterface::DtCreationMode, 00143 const makVrf::DtVrfObjectManipulationManager::DtEditingType& editType=makVrf::DtVrfObjectManipulationManager::Context); 00144 }; 00145 } 00146