VR-Forces 5.0.3 Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
DtElementDefinitionEditorInterface.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>
12 
13 class QTreeWidgetItem;
14 class QWidget;
15 class QString;
16 
17 namespace makVrv
18 {
19  class DtVisualDefinitionItemCreator;
20  class DtVisualDefinition;
21  class DtVisualAttributeInterface;
22 
26  {
27  public:
30  {
31  ElementDefinitionAdd = 0x00000001,
32  ElementDefinitionRemove = 0x00000002,
33  ElementDefinitionMoveUp = 0x00000004,
34  ElementDefinitionMoveDown = 0x00000008,
35  ElementDefinitionMoveLeft = 0x00000010,
36  ElementDefinitionMoveRight = 0x00000020,
37  ElementDefinitionCopy = 0x00000040,
38  ElementDefinitionPaste = 0x00000080,
39  ElementDefinitionRename = 0x00000100,
40  AllElementDefinitionButtons =
41  ElementDefinitionAdd | ElementDefinitionRemove |
42  ElementDefinitionMoveUp | ElementDefinitionMoveDown |
43  ElementDefinitionMoveLeft | ElementDefinitionMoveRight |
44  ElementDefinitionPaste | ElementDefinitionCopy | ElementDefinitionRename,
45 
46  VisualDefinitionAdd = 0x00000100,
47  VisualDefinitionRemove = 0x00000200,
48  VisualDefinitionAddAttribute = 0x00000400,
49  VisualDefinitionRemoveAttribute= 0x00000800,
50  VisualDefinitionRevert = 0x00001000,
51  AllVisualDefinitionButtons =
52  VisualDefinitionAdd | VisualDefinitionRemove | VisualDefinitionRevert |
53  VisualDefinitionAddAttribute | VisualDefinitionRemoveAttribute
54  };
55 
56  public:
59 
61  virtual void clearModelSets() = 0;
62 
64  virtual void addModelSet(const std::string&, int id) = 0;
65 
67  virtual int modelSet() const = 0;
68 
70  virtual void clearElementDefinitions() = 0;
71 
73  virtual void addPath(const std::string& path) = 0;
74 
76  virtual void selectPath(const std::string& path) = 0;
77 
79  virtual std::string selectedPath() const = 0;
80 
82  virtual void setEnabled(ButtonFlags, bool) = 0;
83 
85  virtual QTreeWidgetItem* selectedElementDefinitionTreeWidgetItem() const = 0;
86 
88  virtual QTreeWidgetItem* selectedVisualDefinitionTreeWidgetItem() const = 0;
89 
91  virtual QTreeWidgetItem* elementDefinitionTreeWidgetRootItem() const = 0;
92 
94  virtual void removePath(const std::string& path) = 0;
95 
97  virtual void clearElementDefinitionSelection() = 0;
98 
100  virtual void movePathTo(const std::string& oldPath, const std::string& newPath) = 0;
101 
103  virtual void reposition(const std::string& from, const std::string& after) = 0;
104 
106  virtual std::string title() const = 0;
107 
109  virtual void clearVisualDefinitions() = 0;
110 
112  virtual void addVisualDefinition(const std::string& vis, const DtVisualDefinition&,
113  const std::string& screenName, bool isInherited) = 0;
114 
117  virtual void addVisualAttribute(const std::string& visualDefinition, const std::string& attribute,
118  const DtVisualAttributeInterface* attr, bool isInherited) = 0;
119 
121  virtual void removeVisualDefinition(const std::string& path, const std::string& vis) = 0;
122 
124  virtual void removeVisualAttribute(const std::string& path, const std::string& vis, const std::string& attr) = 0;
125 
127  virtual QWidget* widget() = 0;
128 
130  virtual void selectVisualDefinition(const std::string& vis) = 0;
131 
133  virtual void selectVisualAttribute(const std::string& vis, const std::string& attr) = 0;
134 
136  virtual void registerItemCreator(int createByType, const std::string& type, DtVisualDefinitionItemCreator*) = 0;
137 
139  virtual int buttonFlags() const = 0;
140 
142  virtual void editSelectedItem(int col = 0) = 0;
143 
145  virtual void setPathModified(const std::string& path, bool modified) = 0;
146 
148  virtual void pathsCleaned() = 0;
149 
151  virtual void setModifiedPaths(const std::map<std::string, bool>&) = 0;
152 
154  virtual void setHelpText(const std::string&) = 0;
155 
157  virtual void setElementDefinitionEditorLabel(const QString& t) = 0;
158 
160  virtual void setDeleteButtonToolTip(const QString& s) = 0;
161 
163  virtual void sort() = 0;
164 
166  virtual void setPathValid(const std::string& path, bool) = 0;
167 
169  virtual void setVisualDefinitionValid(const std::string& visDef, bool) = 0;
170 
172  virtual void setVisualDefinitionErrors(const std::string&) = 0;
173 
175  virtual void appendVisualDefinitionError(const std::string& visDef, const std::string&, bool reset = false) = 0;
176 
179  virtual void clearVisualDefinitionErrorsFor(const std::string& visDef) = 0;
180 
182  virtual void setupVisualDefinitionErrors() = 0;
183 
185  virtual void setElementDefinitionErrors(const std::string&) = 0;
186 
188  virtual void appendElementDefinitionError(const std::string& visDef, const std::string&, bool reset = false) = 0;
189 
192  virtual void clearElementDefinitionErrorsFor(const std::string& visDef) = 0;
193 
195  virtual void setupElementDefinitionErrors() = 0;
196 
198  virtual void setCanRemove(bool) = 0;
199 
200  public:
201  boost::signalslib::signal<void ()> signal_elementDefinitionSelectionChanged;
202  boost::signalslib::signal<void ()> signal_visualDefinitionSelectionChanged;
203  boost::signalslib::signal<void ()> signal_addElementDefinition;
204  boost::signalslib::signal<void (const std::string& path)> signal_removeElementDefinition;
205  boost::signalslib::signal<void (const std::string& path)> signal_addVisualDefinition;
206  boost::signalslib::signal<void (const std::string& path, const std::string& def)> signal_removeVisualDefinition;
207  boost::signalslib::signal<void (const std::string& path, const std::string& def, const std::string& attr)> signal_removeVisualAttribute;
208  boost::signalslib::signal<void (const std::string& path, const std::string& def)> signal_addVisualAttribute;
209  boost::signalslib::signal<void ()> signal_moveUp;
210  boost::signalslib::signal<void (QTreeWidgetItem*, int)> signal_visualAttributeSelected;
211  boost::signalslib::signal<void ()> signal_moveDown;
212  boost::signalslib::signal<void ()> signal_moveLeft;
213  boost::signalslib::signal<void ()> signal_moveRight;
214  boost::signalslib::signal<void ()> signal_copyElement;
215  boost::signalslib::signal<void ()> signal_pasteElement;
216  boost::signalslib::signal<void ()> signal_backupClipboard;
217  boost::signalslib::signal<void ()> signal_restoreClipboard;
218  boost::signalslib::signal<void (const std::string& path)> signal_copyElementDefinition;
219  boost::signalslib::signal<void (const std::string& from, const std::string& to)> signal_copyElementDefinitionPath;
220  boost::signalslib::signal<void (const std::string& path)> signal_pasteElementDefinition;
221  boost::signalslib::signal<void (const std::string& oldPath, const std::string& newPath)> signal_elementDefinitionNameChanged;
222  boost::signalslib::signal<void (const std::string& oldPath, const std::string& newPath)> signal_movePathTo;
223  boost::signalslib::signal<void (const std::string& from, const std::string& top)> signal_reparent;
224  boost::signalslib::signal<void (int)> signal_displayModelSet;
225  boost::signalslib::signal<void (const std::string& attribute)> signal_createNew;
226  };
227 }
This is the interface for the element definition editor widget.
Definition: DtElementDefinitionEditorInterface.h:25
boost::signalslib::signal< void()> signal_addElementDefinition
Definition: DtElementDefinitionEditorInterface.h:203
boost::signalslib::signal< void(const std::string &path, const std::string &def, const std::string &attr)> signal_removeVisualAttribute
Definition: DtElementDefinitionEditorInterface.h:207
boost::signalslib::signal< void()> signal_backupClipboard
Definition: DtElementDefinitionEditorInterface.h:216
boost::signalslib::signal< void(const std::string &oldPath, const std::string &newPath)> signal_movePathTo
Definition: DtElementDefinitionEditorInterface.h:222
#define DT_DLL_VRVCOREQT
Definition: vrvCoreQt.h:20
Contains DLL export macros.
boost::signalslib::signal< void()> signal_copyElement
Definition: DtElementDefinitionEditorInterface.h:214
boost::signalslib::signal< void(const std::string &from, const std::string &to)> signal_copyElementDefinitionPath
Definition: DtElementDefinitionEditorInterface.h:219
boost::signalslib::signal< void()> signal_visualDefinitionSelectionChanged
Definition: DtElementDefinitionEditorInterface.h:202
boost::signalslib::signal< void(const std::string &path, const std::string &def)> signal_addVisualAttribute
Definition: DtElementDefinitionEditorInterface.h:208
boost::signalslib::signal< void(const std::string &attribute)> signal_createNew
Definition: DtElementDefinitionEditorInterface.h:225
boost::signalslib::signal< void()> signal_moveDown
Definition: DtElementDefinitionEditorInterface.h:211
boost::signalslib::signal< void()> signal_moveUp
Definition: DtElementDefinitionEditorInterface.h:209
boost::signalslib::signal< void(QTreeWidgetItem *, int)> signal_visualAttributeSelected
Definition: DtElementDefinitionEditorInterface.h:210
boost::signalslib::signal< void(const std::string &path)> signal_copyElementDefinition
Definition: DtElementDefinitionEditorInterface.h:218
boost::signalslib::signal< void(int)> signal_displayModelSet
Definition: DtElementDefinitionEditorInterface.h:224
boost::signalslib::signal< void()> signal_moveRight
Definition: DtElementDefinitionEditorInterface.h:213
boost::signalslib::signal< void()> signal_moveLeft
Definition: DtElementDefinitionEditorInterface.h:212
boost::signalslib::signal< void(const std::string &path)> signal_addVisualDefinition
Definition: DtElementDefinitionEditorInterface.h:205
boost::signalslib::signal< void(const std::string &path)> signal_pasteElementDefinition
Definition: DtElementDefinitionEditorInterface.h:220
boost::signalslib::signal< void(const std::string &oldPath, const std::string &newPath)> signal_elementDefinitionNameChanged
Definition: DtElementDefinitionEditorInterface.h:221
boost::signalslib::signal< void(const std::string &path)> signal_removeElementDefinition
Definition: DtElementDefinitionEditorInterface.h:204
boost::signalslib::signal< void()> signal_pasteElement
Definition: DtElementDefinitionEditorInterface.h:215
boost::signalslib::signal< void(const std::string &path, const std::string &def)> signal_removeVisualDefinition
Definition: DtElementDefinitionEditorInterface.h:206
boost::signalslib::signal< void()> signal_elementDefinitionSelectionChanged
Definition: DtElementDefinitionEditorInterface.h:201
boost::signalslib::signal< void(const std::string &from, const std::string &top)> signal_reparent
Definition: DtElementDefinitionEditorInterface.h:223
ButtonFlags
Flags to use when enabling/disabling buttons.
Definition: DtElementDefinitionEditorInterface.h:29
boost::signalslib::signal< void()> signal_restoreClipboard
Definition: DtElementDefinitionEditorInterface.h:217

Document ID: Generated on Thu Jun 1 17:58:13 EDT 2023 from SVN revision 255404
Copyright © 2005-2021 MAK Technologies. All Rights Reserved (www.mak.com)