VR-Forces 4.1.1 Class Documentation
vrfObjectModifierDialogManager.h
Go to the documentation of this file.
1 /*******************************************************************************
2 ** Copyright (c) 2011 MAK Technologies, Inc.
3 ** All rights reserved.
4 *******************************************************************************/
5 
8 
10 
11 #pragma once
12 
17 #include <vrfExtProtocol/objType.h>
18 
22 #include <vrvUtil/signalslib.h>
24 
26 #include <map>
27 
28 class DtEntityType;
29 class QWidget;
30 class QMainWindow;
31 
32 namespace makVrv
33 {
34  class DtDe;
35 }
36 
37 namespace makVrf
38 {
39  class DtPointObjectDefinitionDialog;
40  class DtCreateAndEditObjectDialogInterface;
41  class DtVrfObjectModifierDialogCreator;
42  class DtObjectDefinitionDialogCreationParameters;
43 
44 
46  {
47  public:
50  DtClonableUnicode(const makVrv::DtUnicode& orig) : DtUnicode(orig) {};
51  DtClonableUnicode(const DtClonableUnicode& orig) : DtUnicode(orig) {};
52  virtual ~DtClonableUnicode() {};
53 
54  virtual DtClonableUnicode* clone() const { return new DtClonableUnicode(*this); };
55  };
56 
63  {
66 
67  public:
68 
71 
74 
76  static DtVrfObjectModifierDialogManager& instance(makVrv::DtDe& de);
77 
79  virtual void connectToCreationManager();
80 
82  virtual void connectToEditingManager();
83 
85  virtual void disconnectFromCreationManager();
86 
88  virtual void disconnectFromEditingManager();
89 
92  virtual void setShowDialogs(bool flag);
93 
95  virtual void populateDialogFromStmt(const DtCreateObjectCommand* cmd);
96 
98  virtual void addDialogCreationFcnForKind(DtEntityType, DtObjectDefinitionDialogCreationParameters*);
99 
101  virtual void removeDialogCreationFcnForKind(DtEntityType);
102 
103  virtual void addDefaultTitle(const DtEntityType& key, const makVrv::DtUnicode&);
104  virtual DtClonableUnicode* defaultTitle(const DtEntityType&) const;
105 
106  protected:
107 
109  virtual void slot_creatingObject(const DtEntityType& type, int force, DtCreationSignalType signalCreate = DtNoCreationSignal);
110 
112  virtual void slot_creatingTerrainProp();
113 
115  virtual void slot_creationStopped();
116 
118  virtual void slot_editingObject(const makVrv::DtUniqueID&, const DtVrfObjectManipulationManager::DtEditingType&);
119 
121  virtual void slot_editingTerrainProp(const makVrv::DtUniqueID&, const DtVrfObjectManipulationManager::DtEditingType&);
122 
124  virtual void slot_editingStopped();
125 
127  virtual void destroyPropertiesDlg();
128 
131  virtual DtObjectDefinitionDialogCreationParameters* lookupCreatorFromEntityType(const DtEntityType& ent);
132 
133  virtual std::string findEntityTypeName(const DtEntityType& ent);
134 
135  protected:
136 
144 
145  //Default object titles for objects that do not have types in the mst file
147  };
148 
149 
151  //entity-specific flags important to the dialog creation process
152 
154  {
155  public :
156 
157  DtObjectDefinitionDialogCreationParameters(DtVrfObjectModifierDialogCreator* objectModifierDialogCreatorIn, bool forceDialogToAppearInPlansIn = false);
158 
160 
161  DtVrfObjectModifierDialogCreator* objectModifierDialogCreator();
162 
163  bool forceDialogToAppearInPlans();
164 
165  void setObjectModifierDialogCreator(DtVrfObjectModifierDialogCreator* inputObjectModifierDialogCreator);
166 
167  void setForceDialogToAppearInPlans(bool inputForceDialogToAppearInPlans);
168 
170 
171  protected:
172 
174 
175  //This flag overrides previous user input regarding whether the create autohide dialog
176  //is closed in plan-based object creation and all kinds of object edits.
177  //The default is "false" but control objects are generally set to "true"
178 
180  };
181 
182 
183 
184 
185 }

Document ID: Generated on Mon Apr 8 19:24:01 EDT 2013 from SVN revision 125877
Copyright © 2005-2013 VT MÄK. All Rights Reserved (www.mak.com)