19 #include <QtGui/QWidget>
20 #include <QtCore/QMap>
21 #include <boost/bind.hpp>
22 #include <boost/signals.hpp>
36 class DtElementEditorLogic;
37 class DtPersistenceControlsInterface;
58 virtual void activate();
61 virtual void deactivate();
65 virtual void changeElementsStart();
66 virtual void addElement(
const DtUnicode& name);
68 virtual void removeElement(
const DtUnicode& name);
69 virtual void changeElementsStop();
70 virtual void clearElements();
71 virtual void selectElement(
const DtUnicode& name);
73 virtual void setModelSets(
const std::vector<DtUnicode>& modelSets);
74 virtual void setCurrentModelSet(
int index);
76 virtual void changeDefinitionStart();
77 virtual void clearDefinitions();
78 virtual void addDefinition(
int index,
const DtUnicode& name,
bool inherited);
79 virtual void removeDefinition(
int index);
80 virtual void changeDefinitionStop();
82 virtual void changeAttributeStart();
83 virtual void addAttribute(
int defIndex,
const std::string& name,
85 virtual void removeAttribute(
int defIndex,
const std::string& name);
86 virtual void changeAttributeStop();
87 virtual void selectAttribute(
int defIndex,
const std::string& name);
88 virtual void updateAttribute(
int defIndex,
const std::string& name,
91 QTreeWidgetItem* findAttributeItem(
int defIndex,
const std::string& name);
92 virtual void setAttributeDescription(
const DtUnicode& desc);
93 virtual void createAttributeEditor(
int defIndex,
const std::string& name,
94 const std::string& attrClass);
95 virtual void destroyAttributeEditor(
int defIndex,
const std::string& name);
97 virtual std::string chooseNewVisualizerDefinitionType();
98 virtual int chooseNewAttributeName(
const std::vector< std::pair< std::string, DtUnicode> >& nameTypePairs);
101 virtual void setRemoveElementEnabled(
bool b );
104 virtual void setAddVisualDefEnabled(
bool b );
107 virtual void setRemoveVisualDefEnabled(
bool b );
110 virtual void setAddAttributeEnabled(
bool b );
113 virtual void setRemoveAttributeEnabled(
bool b );
116 virtual void showAddedElements(std::vector<DtUnicode>& addedNames,
117 std::vector<DtUnicode>& skippedNames);
127 QString nameOfSelectedElement()
const;
130 int indexOfSelectedVisualizer();
134 QString nameOfSelectedAttribute()
const;
144 void slot_addElementDefinition();
145 void slot_removeElementDefinition();
146 void slot_renameElementDefinition();
148 void slot_addVisualizerDef();
149 void slot_removeVisualizerDef();
151 void slot_addAttribute();
152 void slot_removeAttribute();
153 void slot_removeOverrideAttribute();
155 void slot_modelSetChanged(
int index);
156 void destroyEditors();