VR-Forces 4.0.4 Class Documentation
include/vrfGuiCore/DtGuiEventProcessor.h
Go to the documentation of this file.
00001 /******************************************************************************
00002 ** Copyright (c) 2010 MAK Technologies, Inc.
00003 ** All rights reserved.
00004 ******************************************************************************/
00005 /******************************************************************************
00006 ** $RCSfile:  $ $Revision:  $ $State:  $
00007 ******************************************************************************/
00008 
00012 
00013 #pragma once
00014 
00015 #include <vrfGuiCore/vrfGuiCore.h>
00016 #include <vrvCore/DtEventProcessorInterface.h>
00017 
00018 #include <vrvCore/DtSelectionManager.h>
00019 #include <vrvCore/DtElementEntry.h>
00020 
00021 namespace makVrv
00022 {
00023    class DtOverlayPolygonModelAgent;
00024    class DtSceneObjectAgent;
00025    class DtDe;
00026 }
00027 
00028 namespace makVrf
00029 {
00032    class DT_DLL_VRFGUICORE DtMousePositionProvider
00033    {
00034    public:
00035       virtual void getCurrentMousePosition(int& x, int& y) = 0;
00036    };
00037 
00040    class DT_DLL_VRFGUICORE DtGuiEventProcessor : public makVrv::DtEventProcessorInterface
00041    {
00042    public:
00043 
00045       DtGuiEventProcessor(makVrv::DtDe& de);
00046 
00048       virtual ~DtGuiEventProcessor();
00049 
00052       virtual bool processMouseEvent( const makVrv::DtMouseEvent& ev, makVrv::DtChannel& channel);      
00053       
00057       virtual bool processKeyboardEvent( const makVrv::DtKeyEvent& ev, makVrv::DtChannel& channel);
00058 
00059       virtual const std::string& className(); 
00060 
00061       static void setCurrentMousePosition(makVrv::DtDe&, int x, int y);
00062       static void setCurrentMousePosition(int x, int y);
00063       static void getCurrentMousePosition(int& x, int& y);
00064 
00066       static void setMousePositionProvider(DtMousePositionProvider*);
00067       static DtMousePositionProvider* mousePositionProvider();
00068 
00069    protected:
00071       virtual void cleanupBox();
00072 
00074       virtual void createBox(int modelSet);
00075 
00077       virtual void setBoxFromExtents(makVrv::DtChannel& channel, int anchorX, int anchorY, int toX, int toY);
00078 
00079    protected:
00080       makVrv::DtDe&  myDe;
00081       makVrv::DtOverlayPolygonModelAgent*           myBox;
00082       makVrv::DtSceneObjectAgent*                     mySceneObjectAgent;
00083       static makVrv::DtUniqueID                       theLineId;
00084       static DtMousePositionProvider*               theMousePositionProvider;
00085 
00086       makVrv::DtSelectionManager::IdSet               myCurrentSelections;
00087 
00088       int                              myInitialMousePositionX;
00089       int                              myInitialMousePositionY;
00090 
00091       static int                       theCurrentMousePositionX;
00092       static int                       theCurrentMousePositionY;
00093    };
00094 }

Document ID: Generated on Fri Jun 29 16:33:32 EDT 2012 from SVN revision 116588
Copyright © 2005-2012 VT MÄK Inc. All Rights Reserved (www.mak.com)