VR-Forces 4.8 Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
DtModelDefinitionEditorLogic.h
Go to the documentation of this file.
1 /******************************************************************************
2 ** Copyright (c) 2020 MAK Technologies, Inc.
3 ** All rights reserved.
4 ******************************************************************************/
5 
9 
10 #pragma once
11 #include <vrvCoreQt/vrvCoreQt.h>
13 
14 namespace makVrv
15 {
16  class DtDe;
17  class DtPage;
18  class DtInstanceEditorInterface;
19  class DtMapEditorInterface;
20  class DtModelDefinition;
21  class DtModelDefinitionEditorInterface;
22  class DtPersistenceControlsInterface;
23  class DtSettingsBackup;
24  class DtSettingsChangeObject;
25  class DtModelDefinitionManager;
26 
30  {
31  public:
34  DtInstanceEditorInterface* instanceInterface,
35  DtModelDefinitionEditorInterface* modelDefInterface,
36  DtMapEditorInterface* mapInterface,
38  DtPage* page = 0);
39 
42 
44  virtual void checkIfModified();
45 
46  protected:
47 
48  virtual void createModelDefinition(const std::string& definitionName,
49  const std::string& schema);
50  virtual void copyModelDefinition(const std::string& definitionName, const std::string& newName);
51  virtual void deleteModelDefinition(const std::vector<std::string>& definitionNames);
52  virtual void setSelectedDefinition(const std::string& definitionName, const std::string& schema);
53  virtual void setDefinitionFilter(const std::string& schema);
54  virtual void renameInstance(const std::string& oldName,
55  const std::string& definitionName, int);
56  virtual void setDefinitionSchema(const std::string& schema);
57 
58  virtual void renameParameter( const std::string& oldName, const std::string& newName);
59  virtual void modifyValue(const std::string& key, const std::string& value);
60  virtual void deleteValue(const std::string& key);
61 
62  std::string generateDefinitionName(const std::string& rootName) const;
63 
64  void setupInstances();
65 
68  void setupFileFilter(const std::string& fileName);
69 
71  void setupFileLocationBar();
72 
75  void changeFileLocation();
76 
78  void changeFileFilter();
79 
81  bool isDefinitionValid( const DtModelDefinition& definition);
82 
83  void setupFilters();
84  void setupSchema();
85 
86  void setupModelDefinition();
87 
90  void setFileName(const std::string& currentLocation);
91 
92  void setupMap();
93 
94  protected:
96  virtual void onExportSelected();
97 
99  virtual void onExportAllFiles();
100 
103  virtual void onExportSelectedChosen(const std::string&);
104 
106  virtual void onImport();
107 
110  virtual void onImportFilenameChosen(const std::string&);
111 
114  virtual void onMerge();
115 
118  virtual void onMergeFilenameChosen(const std::string&);
119 
123  virtual void onSaveDefaults();
124 
126  virtual void modelDefinitionsRestored(const DtSettingsBackup* s);
127 
129  virtual void schemaChanged(DtSettingsChangeObject*);
130 
132  virtual DtModelDefinitionManager& definitionManager();
133  virtual const DtModelDefinitionManager& definitionManager() const;
134 
136  virtual void addModelDefinition(const DtModelDefinition& newDef);
137 
139  virtual void renameModelDefinition(const DtModelDefinition& old, const DtModelDefinition& newDef);
140 
141  protected:
149  std::string mySelectedDefinition;
150  std::string myFilter;
151  std::string mySchema;
152  std::string myDirectoryPath;
153  };
154 
159  {
160  public:
163  DtInstanceEditorInterface* instanceInterface,
164  DtModelDefinitionEditorInterface* modelDefInterface,
165  DtMapEditorInterface* mapInterface,
167 
170 
172  virtual void commitChanges();
173 
174  protected:
175  virtual DtModelDefinitionManager& definitionManager();
176  virtual const DtModelDefinitionManager& definitionManager() const;
177 
178  virtual void addModelDefinition(const DtModelDefinition& newDef);
179 
180  virtual void renameModelDefinition(const DtModelDefinition& old, const DtModelDefinition& newDef);
181 
182  protected:
184  };
185 }
Abstract interface for instance editor widgets.
Definition: DtInstanceEditorInterface.h:21
DtSignalConnectionManager myConnections
Definition: DtModelDefinitionEditorLogic.h:143
The model definition manager is responsible to managing all of the model definitions the IG knows abo...
Definition: DtModelDefinitionManager.h:79
Interface of the makVrv::DtModelDefinitionEditorWidget for the makVrv::DtModelDefinitionEditorLogic.
Definition: DtModelDefinitionEditorInterface.h:23
DtPage * myPage
Definition: DtModelDefinitionEditorLogic.h:148
DtMapEditorInterface * myMapInterface
Definition: DtModelDefinitionEditorLogic.h:146
#define DT_DLL_VRVCOREQT
Definition: vrvCoreQt.h:20
Contains DLL export macros.
Abstract interface for controlling persistence of state in a dialog.
Definition: DtPersistenceControlsInterface.h:20
A model definition Interaction any number of named parameters, and also can be used to store cached d...
Definition: DtModelDefinition.h:33
The logic for editing model definitions.
Definition: DtModelDefinitionEditorLogic.h:29
std::string mySchema
Definition: DtModelDefinitionEditorLogic.h:151
Specialized version of editor logic to allow logic to be edited locally on an instance editor page ra...
Definition: DtModelDefinitionEditorLogic.h:158
Class to manage disconnection of boost connections on deletion.
Definition: DtSignalConnectionManager.h:24
The page is a single widget component which is viewed in a page collection.
Definition: DtPage.h:30
Provides a method of doign settings backup.
Definition: DtSettingsBackup.h:26
Interface for a key/value pair editor GUI.
Definition: DtMapEditorInterface.h:19
DtPersistenceControlsInterface * myToolbarInterface
Definition: DtModelDefinitionEditorLogic.h:147
DtModelDefinitionEditorInterface * myModelDefinitionInterface
Definition: DtModelDefinitionEditorLogic.h:145
DtModelDefinitionManager * myManager
Definition: DtModelDefinitionEditorLogic.h:183
Base class to provide boost signal/slot management.
makVrv::DtSettingsChangeObject is a base class for all settings change objects
Definition: DtSettingsChangeManager.h:34
std::string myDirectoryPath
Definition: DtModelDefinitionEditorLogic.h:152
The DtDe is the core component of any VR-Vantage application.
Definition: DtDe.h:69
DtInstanceEditorInterface * myInstanceInterface
Definition: DtModelDefinitionEditorLogic.h:144
DtDe & myDe
Definition: DtModelDefinitionEditorLogic.h:142
std::string myFilter
Definition: DtModelDefinitionEditorLogic.h:150
std::string mySelectedDefinition
Definition: DtModelDefinitionEditorLogic.h:149

Document ID: Generated on Thu Aug 27 10:56:05 EDT 2020 from SVN revision 217100
Copyright © 2005-2020 MAK Technologies. All Rights Reserved (www.mak.com)