VR-Forces 4.0.4 Class Documentation
include/vrvCoreQt/DtMapEditorWidget.h
Go to the documentation of this file.
00001 /******************************************************************************
00002 ** Copyright (c) 2008 MAK Technologies, Inc.
00003 ** All rights reserved.
00004 ******************************************************************************/
00005 /******************************************************************************
00006 ** $RCSfile: DtMapEditorWidget.h,v $ $Revision: 1.14 $ $State: Exp $
00007 ******************************************************************************/
00008 
00012 
00013 #ifndef DtMapEditorWidget_H_
00014 #define DtMapEditorWidget_H_
00015 
00016 #include <vrvCoreQt/vrvCoreQt.h>
00017 #include <QtGui/QWidget>
00018 #include <vrvCoreQt/DtMapEditorInterface.h>
00019 
00020 #include <map>
00021 
00022 class QHBoxLayout;
00023 class QLabel;
00024 class QLineEdit;
00025 class QPushButton;
00026 class QTreeWidget;
00027 class QTreeWidgetItem;
00028 class QVBoxLayout;
00029 class QAction;
00030 class QMenu;
00031 
00032 namespace makVrv
00033 {
00034    class DtDe;
00035    class DtContextTreeWidget;
00036 
00039    class DT_DLL_VRVCOREQT DtMapEditorWidget : public QWidget, public DtMapEditorInterface
00040    {
00041    Q_OBJECT;
00042    public:
00044       DtMapEditorWidget(DtDe& de, QWidget* parent = 0, Qt::WindowFlags f = 0);
00045 
00047       virtual ~DtMapEditorWidget();
00048 
00050       virtual void setColumnTitles( QString keyTitle,QStringList valueTitles);
00051 
00053       virtual void setPossibleValues(QStringList values,int column);
00054 
00056       const QStringList& possibleValues(int column);
00057 
00060       virtual void setValue(const std::string& key, const std::string& value, int index = 1,
00061          DtCustomTreeWidgetEditor::EditorType defaultEditor = DtCustomTreeWidgetEditor::DefaultEditor);
00062 
00064       virtual void deleteValue(const std::string& key);
00065 
00067       virtual void clearValues();
00068 
00070       virtual void renameKey(const std::string& oldkey, const std::string& newkey);
00071 
00073       virtual void selectValue(const std::string& key);
00074 
00076       virtual void unableToRenameParameter(const std::string& oldName);
00077 
00079       virtual void setKeyVisible(bool visible);
00080 
00082       virtual void setLabelText(const std::string&);
00083 
00084       virtual void setUseSpacer(bool);
00085 
00087       virtual void sortValues();
00088 
00089    protected slots:
00090 
00091       virtual void on_myTreeWidget_itemActivated(QTreeWidgetItem * item, int column);
00092       virtual void on_myTreeWidget_itemDoubleClicked(QTreeWidgetItem * item, int column);
00093       virtual void on_myTreeWidget_itemClicked(QTreeWidgetItem * item, int column);
00094       virtual void on_myTreeWidget_itemChanged(QTreeWidgetItem * item, int column);
00095       virtual void on_myTreeWidget_itemSelectionChanged();
00096       virtual void on_myAddButton_clicked();
00097       virtual void on_myDeleteButton_clicked();
00098       virtual void on_myRenameButton_clicked();
00099       virtual void on_addKey(QAction* action);
00100 
00101       void editParameterName( QString nameInData );
00102 
00103    protected:
00104       QString askForNewName(QString initial, const QString& title);
00105 
00106       void setupGui();
00107 
00108       QTreeWidgetItem* findItem( const std::string& key );
00109       QString selectedInstanceName() const;
00110       
00111    protected:
00112 
00113       DtDe& myDe;
00114       QVBoxLayout* myMainLayout;
00115       QLabel*      myLabel;
00116       QLabel*      mySpacer;
00117       QHBoxLayout* myButtonLayout;
00118       DtContextTreeWidget* myTreeWidget;
00119       QPushButton* myAddButton;
00120       QPushButton* myDeleteButton;
00121       QPushButton* myRenameButton;
00122       QMenu* myMenu;
00123 
00124       typedef std::map<std::string,QTreeWidgetItem*> FastTreeLoopkupMap;
00125       FastTreeLoopkupMap myFastItemLookup;
00126 
00127       typedef std::map<int, QStringList> ComboValueMap;
00128       ComboValueMap myPossibleValues;
00129 
00130    };
00131 }
00132 
00133 #endif
00134 

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)