VR-Forces 4.3 Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
terrainProfileDialogManager.h
Go to the documentation of this file.
1 /*******************************************************************************
2 ** Copyright (c) 2015 MAK Technologies, Inc.
3 ** All rights reserved.
4 *******************************************************************************/
5 
8 
9 #pragma once
10 
11 #include <vrvUtil/signalslib.h>
14 #include <vrvCore/DtUniqueID.h>
15 #include <vrvCore/DtEntityState.h>
17 
18 namespace makVrv
19 {
20  class DtDe;
21  class DtStateListener;
22  class DtIntervisibilityElement;
23 }
24 
25 class QWidget;
26 namespace makVrf
27 {
28  class DtVrfObjectFacadeInterface;
29  class DtTerrainProfileDialog;
30 
39  {
40  public:
43 
45  static DtTerrainProfileDialogManager& instance(makVrv::DtDe& de);
46  static void registerInstance(makVrv::DtDe&, DtTerrainProfileDialogManager*);
47 
49  virtual void createProfileDialogFor(makVrv::DtElementID, QWidget* parent = 0);
50 
53  virtual void showTerrainProfileForFacade(DtVrfObjectFacadeInterface*);
54 
56  virtual DtTerrainProfileDialog* terrainProfileDialogFor(makVrv::DtElementID) const;
57 
59  virtual void setBlockTerrainProfileCreation(bool);
60  virtual bool blockTerrainProfileCreation() const;
61 
62  protected:
63 
66  virtual void onObjectFacadeAboutToBeRemoved(DtVrfObjectFacadeInterface*);
67 
69  virtual void onLocalObjectCreated(DtVrfObjectFacadeInterface*, makVrv::DtVrlinkSimulatedBaseState*);
70 
72  virtual void onDialogAboutToBeDeleted(DtTerrainProfileDialog*);
73 
75  virtual void onIntervisibilityElementCreated(makVrv::DtIntervisibilityElement*, bool forceDialog = false);
76 
78  virtual void onIntervisibilityElementAboutToBeDestroyed(makVrv::DtIntervisibilityElement*);
79 
82  virtual void showTerrainProfileForFacade(DtVrfObjectFacadeInterface*, bool editing);
83 
84  protected:
86 
87  typedef std::map<makVrv::DtStateListener*, DtTerrainProfileDialog*> FacadeDialogs;
89 
90  typedef std::map<makVrv::DtElementID, DtTerrainProfileDialog*> ElementDialogs;
92 
95  };
96 }

Document ID: Generated on Wed Mar 11 21:20:57 EDT 2015 from SVN revision 150940
Copyright © 2005-2014 VT MÄK. All Rights Reserved (www.mak.com)