![]() |
VR-Forces 4.0.4 Class Documentation
|
00001 /****************************************************************************** 00002 ** Copyright (c) 2008 MAK Technologies, Inc. 00003 ** All rights reserved. 00004 ******************************************************************************/ 00005 /****************************************************************************** 00006 ** $RCSfile: DtVrfEditManagerEventProcessor.h,v $ $Revision: 1.4 $ $State: Exp $ 00007 ******************************************************************************/ 00008 00011 00013 00014 #pragma once 00015 00016 #include <vrfGuiCore/vrfGuiCore.h> 00017 00018 #include <vrvCore/DtEventProcessorInterface.h> 00019 #include <vrvCore/DtUniqueID.h> 00020 #include <vrvCore/DtMouseEvent.h> 00021 00022 #include <vrvUtil/DtVirtualBaseClass.h> 00023 00024 namespace makVrv 00025 { 00026 class DtDe; 00027 class DtChannel; 00028 class DtKeyEvent; 00029 } 00030 00031 namespace makVrf 00032 { 00035 class DT_DLL_VRFGUICORE DtVrfEditManagerEventProcessor : 00036 public makVrv::DtEventProcessorInterface 00037 { 00038 00039 public: 00041 DtVrfEditManagerEventProcessor( makVrv::DtDe& ); 00042 00044 virtual ~DtVrfEditManagerEventProcessor(); 00045 00046 void setAllowEditing(bool b) 00047 { 00048 myAllowEditing = b; 00049 } 00050 00051 bool allowEditing() const 00052 { 00053 return myAllowEditing; 00054 } 00055 00056 protected: 00057 00058 virtual bool processMouseEvent(const makVrv::DtMouseEvent& ev, 00059 makVrv::DtChannel& channel); 00060 00062 virtual bool processKeyboardEvent(const makVrv::DtKeyEvent& ev, 00063 makVrv::DtChannel& channel); 00064 00066 virtual const std::string& className(); 00067 00068 protected: 00069 makVrv::DtDe& myDe; 00070 bool myAllowEditing; 00071 00072 }; 00073 00074 class DT_DLL_VRFGUICORE DtVrfEditManagerEventProcessorCreator : 00075 public makVrv::DtVirtualBaseClass 00076 { 00077 00078 public: 00081 static DtVrfEditManagerEventProcessorCreator& instance( makVrv::DtDe& de ); 00082 00084 static void registerInstance( makVrv::DtDe& de, 00085 DtVrfEditManagerEventProcessorCreator* instance); 00086 00088 virtual DtVrfEditManagerEventProcessor* create( makVrv::DtDe& de ); 00089 }; 00090 }