VR-Forces 4.0.4 Class Documentation
include/vrfGuiCoreQt/DtTerrainProfileDialogManager.h
Go to the documentation of this file.
00001 /*******************************************************************************
00002 ** Copyright (c) 2012 MAK Technologies, Inc.
00003 ** All rights reserved.
00004 *******************************************************************************/
00005 
00008 
00009 #pragma once
00010 
00011 #include <vrvUtil/signalslib.h>
00012 #include <vrfGuiCoreQt/vrfGuiCoreQt.h>
00013 #include <vrvUtil/DtVirtualBaseClass.h>
00014 #include <vrvCore/DtUniqueID.h>
00015 #include <vrvCore/DtEntityState.h>
00016 
00017 namespace makVrv
00018 {
00019    class DtDe;
00020    class DtStateListener;
00021    class DtIntervisibilityElement;
00022 }
00023 
00024 class QWidget;
00025 namespace makVrf
00026 {
00027    class DtVrfObjectFacadeInterface;
00028    class DtTerrainProfileDialog;
00029 
00037    class DT_DLL_VRFGUICOREQT DtTerrainProfileDialogManager : public makVrv::DtVirtualBaseClass
00038    {
00039    public:
00040       DtTerrainProfileDialogManager(makVrv::DtDe&);
00041       virtual ~DtTerrainProfileDialogManager();
00042 
00044       static DtTerrainProfileDialogManager& instance(makVrv::DtDe& de);
00045       static void registerInstance(makVrv::DtDe&, DtTerrainProfileDialogManager*);
00046 
00048       virtual void createProfileDialogFor(makVrv::DtElementID, QWidget* parent = 0);
00049 
00052       virtual void showTerrainProfileForFacade(DtVrfObjectFacadeInterface*);
00053 
00055       virtual DtTerrainProfileDialog* terrainProfileDialogFor(makVrv::DtElementID) const;
00056 
00057    protected:
00058 
00061       virtual void onObjectFacadeAboutToBeRemoved(DtVrfObjectFacadeInterface*);
00062 
00064       virtual void onLocalObjectCreated(DtVrfObjectFacadeInterface*, makVrv::DtVrlinkSimulatedBaseState*);
00065 
00067       virtual void onDialogAboutToBeDeleted(DtTerrainProfileDialog*);
00068 
00070       virtual void onIntervisibilityElementCreated(makVrv::DtIntervisibilityElement*);
00071 
00073       virtual void onIntervisibilityElementAboutToBeDestroyd(makVrv::DtIntervisibilityElement*);
00074 
00077       virtual void showTerrainProfileForFacade(DtVrfObjectFacadeInterface*, bool editing);
00078 
00079    protected:
00080       makVrv::DtDe&           myDe;
00081 
00082       typedef std::map<makVrv::DtStateListener*, DtTerrainProfileDialog*> FacadeDialogs;
00083       FacadeDialogs           myFacadeDialogs;
00084 
00085       typedef std::map<makVrv::DtElementID, DtTerrainProfileDialog*> ElementDialogs;
00086       ElementDialogs          myElementDialogs;
00087    };
00088 }

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)