VR-Forces 4.0.4 Class Documentation
include/vrvCoreQt/DtElementDefinitionEditorInterface.h
Go to the documentation of this file.
00001 /******************************************************************************
00002 ** Copyright (c) 2008 MAK Technologies, Inc.
00003 ** All rights reserved.
00004 ******************************************************************************/
00005 /******************************************************************************
00006 ** $RCSfile: DtPersistenceToolbarInterface.h,v $ $Revision: 1.10 $ $State: Exp $
00007 ******************************************************************************/
00008 
00012 
00013 #pragma once
00014 #include <vrvCoreQt/vrvCoreQt.h>
00015 
00016 class QTreeWidgetItem;
00017 class QWidget;
00018 class QString;
00019 
00020 namespace makVrv
00021 {
00022    class DtVisualDefinitionItemCreator;
00023    class DtVisualDefinition;
00024    class DtVisualAttributeInterface;
00025 
00028    class DT_DLL_VRVCOREQT DtElementDefinitionEditorInterface
00029    {
00030    public:
00032       enum ButtonFlags
00033       {
00034          ElementDefinitionAdd        = 0x00000001,
00035          ElementDefinitionRemove     = 0x00000002,
00036          ElementDefinitionMoveUp     = 0x00000004,
00037          ElementDefinitionMoveDown   = 0x00000008,
00038          ElementDefinitionMoveLeft   = 0x00000010,
00039          ElementDefinitionMoveRight  = 0x00000020,
00040          ElementDefinitionCopy       = 0x00000040,
00041          ElementDefinitionPaste      = 0x00000080,
00042          ElementDefinitionRename     = 0x00000100,
00043          AllElementDefinitionButtons =
00044             ElementDefinitionAdd | ElementDefinitionRemove |
00045             ElementDefinitionMoveUp | ElementDefinitionMoveDown |
00046             ElementDefinitionMoveLeft | ElementDefinitionMoveRight |
00047             ElementDefinitionPaste | ElementDefinitionCopy | ElementDefinitionRename,
00048 
00049          VisualDefinitionAdd            = 0x00000100,
00050          VisualDefinitionRemove         = 0x00000200,
00051          VisualDefinitionAddAttribute   = 0x00000400,
00052          VisualDefinitionRemoveAttribute= 0x00000800,
00053          VisualDefinitionRevert         = 0x00001000,
00054          AllVisualDefinitionButtons     =
00055             VisualDefinitionAdd | VisualDefinitionRemove | VisualDefinitionRevert |
00056             VisualDefinitionAddAttribute | VisualDefinitionRemoveAttribute
00057       };
00058 
00059    public:
00061       virtual ~DtElementDefinitionEditorInterface();
00062 
00064       virtual void clearModelSets() = 0;
00065 
00067       virtual void addModelSet(const std::string&, int id) = 0;
00068 
00070       virtual int modelSet() const = 0;
00071 
00073       virtual void clearElementDefinitions() = 0;
00074 
00076       virtual void addPath(const std::string& path) = 0;
00077 
00079       virtual void selectPath(const std::string& path) = 0;
00080 
00082       virtual std::string selectedPath() const = 0;
00083 
00085       virtual void setEnabled(ButtonFlags, bool) = 0;
00086 
00088       virtual QTreeWidgetItem* selectedElementDefinitionTreeWidgetItem() const = 0;
00089 
00091       virtual QTreeWidgetItem* selectedVisualDefinitionTreeWidgetItem() const = 0;
00092 
00094       virtual QTreeWidgetItem* elementDefinitionTreeWidgetRootItem() const = 0;
00095 
00097       virtual void removePath(const std::string& path) = 0;
00098 
00100       virtual void clearElementDefinitionSelection() = 0;
00101 
00103       virtual void movePathTo(const std::string& oldPath, const std::string& newPath) = 0;
00104 
00106       virtual void reposition(const std::string& from, const std::string& after) = 0;
00107 
00109       virtual std::string title() const = 0;
00110 
00112       virtual void clearVisualDefinitions() = 0;
00113 
00115       virtual void addVisualDefinition(const std::string& vis, const DtVisualDefinition&,
00116          const std::string& screenName, bool isInherited) = 0;
00117 
00120       virtual void addVisualAttribute(const std::string& visualDefinition, const std::string& attribute,
00121          const DtVisualAttributeInterface* attr, bool isInherited) = 0;
00122 
00124       virtual void removeVisualDefinition(const std::string& path, const std::string& vis) = 0;
00125 
00127       virtual void removeVisualAttribute(const std::string& path, const std::string& vis, const std::string& attr) = 0;
00128 
00130       virtual QWidget* widget() = 0;
00131 
00133       virtual void selectVisualDefinition(const std::string& vis) = 0;
00134 
00136       virtual void selectVisualAttribute(const std::string& vis, const std::string& attr) = 0;
00137 
00139       virtual void registerItemCreator(int createByType, const std::string& type, DtVisualDefinitionItemCreator*) = 0;
00140 
00142       virtual int buttonFlags() const = 0;
00143 
00145       virtual void editSelectedItem(int col = 0) = 0;
00146 
00148       virtual void setPathModified(const std::string& path, bool modified) = 0;
00149 
00151       virtual void pathsCleaned() = 0;
00152 
00154       virtual void setModifiedPaths(const std::map<std::string, bool>&) = 0;
00155 
00157       virtual void setHelpText(const std::string&) = 0;
00158 
00160       virtual void setElementDefinitionEditorLabel(const QString& t) = 0;
00161 
00163       virtual void setDeleteButtonToolTip(const QString& s) = 0;
00164 
00166       virtual void sort() = 0;
00167 
00169       virtual void setPathValid(const std::string& path, bool) = 0;
00170 
00172       virtual void setVisualDefinitionValid(const std::string& visDef, bool) = 0;
00173 
00175       virtual void setVisualDefinitionErrors(const std::string&) = 0;
00176 
00178       virtual void appendVisualDefinitionError(const std::string& visDef, const std::string&, bool reset = false) = 0;
00179 
00182       virtual void clearVisualDefinitionErrorsFor(const std::string& visDef) = 0;
00183 
00185       virtual void setupVisualDefinitionErrors() = 0;
00186 
00188       virtual void setElementDefinitionErrors(const std::string&) = 0;
00189 
00191       virtual void appendElementDefinitionError(const std::string& visDef, const std::string&, bool reset = false) = 0;
00192 
00195       virtual void clearElementDefinitionErrorsFor(const std::string& visDef) = 0;
00196 
00198       virtual void setupElementDefinitionErrors() = 0;
00199 
00201       virtual void setCanRemove(bool) = 0;
00202 
00203    public:
00204       boost::signal<void ()> signal_elementDefinitionSelectionChanged;
00205       boost::signal<void ()> signal_visualDefinitionSelectionChanged;
00206       boost::signal<void ()> signal_addElementDefinition;
00207       boost::signal<void (const std::string& path)> signal_removeElementDefinition;
00208       boost::signal<void (const std::string& path)> signal_addVisualDefinition;
00209       boost::signal<void (const std::string& path, const std::string& def)> signal_removeVisualDefinition;
00210       boost::signal<void (const std::string& path, const std::string& def, const std::string& attr)> signal_removeVisualAttribute;
00211       boost::signal<void (const std::string& path, const std::string& def)> signal_addVisualAttribute;
00212       boost::signal<void ()> signal_moveUp;
00213       boost::signal<void (QTreeWidgetItem*, int)> signal_visualAttributeSelected;
00214       boost::signal<void ()> signal_moveDown;
00215       boost::signal<void ()> signal_moveLeft;
00216       boost::signal<void ()> signal_moveRight;
00217       boost::signal<void ()> signal_copyElement;
00218       boost::signal<void ()> signal_pasteElement;
00219       boost::signal<void ()> signal_backupClipboard;
00220       boost::signal<void ()> signal_restoreClipboard;
00221       boost::signal<void (const std::string& path)> signal_copyElementDefinition;
00222       boost::signal<void (const std::string& from, const std::string& to)> signal_copyElementDefinitionPath;
00223       boost::signal<void (const std::string& path)> signal_pasteElementDefinition;
00224       boost::signal<void (const std::string& oldPath, const std::string& newPath)> signal_elementDefinitionNameChanged;
00225       boost::signal<void (const std::string& oldPath, const std::string& newPath)> signal_movePathTo;
00226       boost::signal<void (const std::string& from, const std::string& top)> signal_reparent;
00227       boost::signal<void (int)> signal_displayModelSet;
00228       boost::signal<void (const std::string& attribute)> signal_createNew;
00229    };
00230 }

Document ID: Generated on Fri Jun 29 16:33:32 EDT 2012 from SVN revision 116588
Copyright © 2005-2012 VT MÄK Inc. All Rights Reserved (www.mak.com)