![]() |
VR-Forces 4.0.4 Class Documentation
|
00001 /****************************************************************************** 00002 ** Copyright (c) 2011 MAK Technologies, Inc. 00003 ** All rights reserved. 00004 ******************************************************************************/ 00005 /****************************************************************************** 00006 ** $RCSfile: behaviorOptionsWidgetLogic.h,v $ $Revision: 108016 $ $State: Exp $ 00007 ** Created: 00008 ******************************************************************************/ 00009 00012 00014 00015 #pragma once 00016 00017 #include <vrfGuiCoreQt/vrfGuiCoreQt.h> 00018 #include <vrvUtil/DtVirtualBaseClass.h> 00019 #include <vrvUtil/DtSignalConnectionManager.h> 00020 00021 #include <string> 00022 00023 namespace makVrv 00024 { 00025 class DtDe; 00026 } 00027 00028 namespace makVrf 00029 { 00030 class DtVrfBackendState; 00031 class DtEntityBehaviorOptionsWidgetInterface; 00032 00033 class DT_DLL_VRFGUICOREQT DtEntityBehaviorOptionsWidgetLogic 00034 { 00035 00036 public: 00037 00039 DtEntityBehaviorOptionsWidgetLogic(makVrv::DtDe& de, DtEntityBehaviorOptionsWidgetInterface& iFace ); 00040 00042 virtual ~DtEntityBehaviorOptionsWidgetLogic(); 00043 00044 protected: 00045 00047 virtual void slot_roadDrivingOnLeftEnabled(bool); 00048 00050 virtual void slot_roadDrivingOptionsUpdated(const std::string& s, const DtVrfBackendState* state); 00051 00053 void sendDataToServers(double); 00054 00055 virtual void updateDrivingSide(bool side); 00056 00057 protected: 00058 makVrv::DtDe& myDe; 00059 makVrv::DtSignalConnectionManager myConnectionManager; 00060 DtEntityBehaviorOptionsWidgetInterface& myInterface; 00061 bool myDrivingOnLeftSideEnabled; 00062 }; 00063 00064 class DT_DLL_VRFGUICOREQT DtEntityBehaviorOptionsWidgetLogicCreator : public makVrv::DtVirtualBaseClass 00065 { 00066 public: 00067 DtEntityBehaviorOptionsWidgetLogicCreator(); 00068 virtual ~DtEntityBehaviorOptionsWidgetLogicCreator(); 00069 00071 static DtEntityBehaviorOptionsWidgetLogicCreator& instance(makVrv::DtDe&); 00072 00074 static void registerInstance(makVrv::DtDe& de, DtEntityBehaviorOptionsWidgetLogicCreator* instance); 00075 00076 virtual DtEntityBehaviorOptionsWidgetLogic* create(makVrv::DtDe& de, DtEntityBehaviorOptionsWidgetInterface&); 00077 }; 00078 }