VR-Forces 4.1.1 Class Documentation
DtVisualizerAttributeEditor.h
Go to the documentation of this file.
1 /******************************************************************************
2 ** Copyright (c) 2011 MAK Technologies, Inc.
3 ** All rights reserved.
4 ******************************************************************************/
5 /******************************************************************************
6 ** $RCSfile: $ $Revision: $ $State: $
7 ******************************************************************************/
8 
12 
13 #pragma once
14 #include <vrvCoreQt/vrvCoreQt.h>
17 #include <QtGui/QWidget>
18 #include <QtGui/QDialog>
19 #include <QtCore/QMap>
20 
21 class QColorDialog;
22 class QComboBox;
23 class QDoubleSpinBox;
24 class QLineEdit;
25 class QPushButton;
26 class QString;
27 class QStringList;
28 class QTreeWidget;
29 class QTreeWidgetItem;
30 
31 namespace makVrv
32 {
33  class DtDe;
34  class DtVisualizerDefinition;
35  class DtModelDefinitionComboBox;
36 
39  {
40  Q_OBJECT
41 
42  public:
43 
46 
48  void setupGui();
49 
51  void createItemForWidget(QWidget * widget );
52 
54  QWidget* findWidgetForItem(QTreeWidgetItem* item) const;
55 
57  const QTreeWidget* treeWidget() const;
58 
60  boost::signal<void (QTreeWidget*)> signal_addInstance;
61 
62  protected slots:
63 
64  virtual void addInstance();
65  virtual void removeInstance();
66 
67  protected:
71  };
72 
77  {
78  public:
80 
81  virtual void setAttribute( const DtVisualizerDefinition* visDef,
82  DtVisualizerAttribute* visAttr) = 0;
83 
85  boost::signal<void ()> signal_attributeValueChanged;
86 
88  boost::signal<void ()> signal_cancel;
89 
90  boost::signal<void (DtVisualizerAttributeEditorInterface*)> signal_destroyed;
91  };
92 
93 
98  {
99  Q_OBJECT
100 
101  public:
102 
103  struct TypeInfo
104  {
106  : editsAttributeName()
107  , editsAttributeType("")
108  {
109  }
110 
111  TypeInfo(const std::string& str,
113  : editsAttributeName(str)
114  , editsAttributeType(info)
115  {
116  }
117 
118  std::string editsAttributeName;
120  };
121 
124 
126  virtual ~DtVisualizerAttributeEditor();
127 
129  virtual void setType(
131 
132  virtual void setAttribute(
133  const DtVisualizerDefinition* visDef,
134  DtVisualizerAttribute* visAttr);
135 
137  virtual bool commited() const;
138 
140  virtual bool canceled() const;
141 
142  virtual const TypeInfo& typeInfo() const = 0;
143 
144  public slots:
145 
146  virtual void commitValue();
147 
148  virtual void cancelValue();
149 
151  virtual void onPopup();
152 
153  protected:
154 
156  virtual void addCancelButton();
157 
158  protected:
166  };
167 
171  {
172  public:
173 
175  editorTypeInfo() const = 0;
176 
177  virtual DtVisualizerAttributeEditor* create(DtDe& de, QWidget* parent) = 0;
178  };
179 
183  template <typename Editor>
186  {
187  public:
188 
191  {
192  return Editor::theTypeInfo();
193  }
194 
196  {
197  return new Editor(de,parent);
198  }
199  };
200 
206  {
207  Q_OBJECT
208 
209  public:
210 
212 
213  virtual void setAttribute( const DtVisualizerDefinition* visDef,
214  DtVisualizerAttribute* visAttr);
215 
217  virtual void commitValue();
218 
219  protected:
220 
223  virtual void setCurrentIndex(int index);
224 
226  virtual void getValues(QStringList& values) = 0;
227 
229  virtual void commitValue(int currentIndex, const QString& value) = 0;
230 
231  protected:
233  };
234 
239  {
240  Q_OBJECT
241  public:
242 
244 
245  virtual void setAttribute( const DtVisualizerDefinition* visDef,
246  DtVisualizerAttribute* visAttr);
247 
249  virtual const TypeInfo& typeInfo() const;
250 
252  static const TypeInfo& theTypeInfo();
253 
254  protected:
255  virtual void commitValue(int index,const QString& value);
256  virtual void getValues(QStringList& values);
257  };
258 
262 
267  {
268  Q_OBJECT
269 
270  public:
271 
273 
274  virtual void setAttribute( const DtVisualizerDefinition* visDef,
275  DtVisualizerAttribute* visAttr);
276 
277  virtual void commitValue();
278 
280  virtual const TypeInfo& typeInfo() const;
281 
283  static const TypeInfo& theTypeInfo();
284 
285  protected:
286 
288  };
289 
294  {
295  Q_OBJECT
296 
297  public:
298 
300 
301  virtual void setAttribute( const DtVisualizerDefinition* visDef,
302  DtVisualizerAttribute* visAttr);
303 
304  virtual void commitValue();
305 
307  virtual const TypeInfo& typeInfo() const;
308 
310  static const TypeInfo& theTypeInfo();
311 
312  protected:
313 
315  };
316 
321 
322 
327  {
328  Q_OBJECT
329 
330  public:
331 
333 
334  virtual void setAttribute( const DtVisualizerDefinition* visDef,
335  DtVisualizerAttribute* visAttr);
336 
338  virtual void commitValue();
339 
341  virtual const TypeInfo& typeInfo() const;
342 
344  static const TypeInfo& theTypeInfo();
345 
346  protected:
347 
348  QDoubleSpinBox* myEdit;
349  };
350 
354 
359  {
360  Q_OBJECT
361 
362  public:
363 
366 
368  virtual void setAttribute( const DtVisualizerDefinition* visDef,
369  DtVisualizerAttribute* visAttr);
370 
372  virtual void commitValue();
373 
375  virtual const TypeInfo& typeInfo() const;
376 
378  static const TypeInfo& theTypeInfo();
379 
380  protected:
381 
383  virtual void onPopup();
384 
385  protected:
388  };
389 
394 
399  {
400  Q_OBJECT
401 
402  public:
403 
405 
406  virtual void setAttribute( const DtVisualizerDefinition* visDef,
407  DtVisualizerAttribute* visAttr);
408 
410  virtual const TypeInfo& typeInfo() const;
411 
413  static const TypeInfo& theTypeInfo();
414 
415  protected:
416  virtual void commitValue(int index,const QString& value);
417  virtual void getValues(QStringList& values);
418 
419  typedef QMap<QString,std::string> TextNameMap;
421  };
422 
427 
428 
433  {
434  Q_OBJECT
435 
436  public:
437 
440 
442  virtual void setAttribute( const DtVisualizerDefinition* visDef,
443  DtVisualizerAttribute* visAttr);
444 
446  virtual void commitValue();
447 
449  virtual const TypeInfo& typeInfo() const;
450 
452  static const TypeInfo& theTypeInfo();
453 
454  protected:
455 
456  void addInstance(QTreeWidget* parent);
457  void addItem(const QString& name);
458 
459  protected:
461 
462  };
463 
468 
469 
474  {
475  Q_OBJECT
476 
477  public:
478 
481 
483  virtual void setAttribute( const DtVisualizerDefinition* visDef,
484  DtVisualizerAttribute* visAttr);
485 
487  virtual void commitValue();
488 
490  virtual const TypeInfo& typeInfo() const;
491 
493  static const TypeInfo& theTypeInfo();
494 
495  protected:
496 
497  void addInstance(QTreeWidget* parent);
498  void addItem(const QString& name);
499 
500  protected:
503  };
504 
509 
510 
515  {
516  Q_OBJECT
517 
518  public:
519 
522 
524  virtual void setAttribute( const DtVisualizerDefinition* visDef,
525  DtVisualizerAttribute* visAttr);
526 
528  virtual void commitValue();
529 
531  virtual const TypeInfo& typeInfo() const;
532 
534  static const TypeInfo& theTypeInfo();
535 
536  protected:
537 
538  void addInstance(QTreeWidget* parent);
539  void addItem(const QString& name);
540 
541  protected:
543  };
544 
549 
552  {
553  Q_OBJECT
554 
555  public:
558 
560  virtual void setAttribute( const DtVisualizerDefinition* visDef,
561  DtVisualizerAttribute* visAttr);
562 
564  virtual void commitValue();
565 
567  virtual const TypeInfo& typeInfo() const;
568 
570  static const TypeInfo& theTypeInfo();
571 
572  protected:
573 
575  void setupEditorValues();
576 
579  void addGlyphRange( unsigned int first, unsigned int last,
580  QFontMetrics &mets, QTreeWidget* widget, QFont font );
581 
582  protected:
583 
586  };
587 
592 
595  {
596  Q_OBJECT
597 
598  public:
601 
603  virtual void setAttribute( const DtVisualizerDefinition* visDef,
604  DtVisualizerAttribute* visAttr);
605 
607  virtual void commitValue();
608 
610  virtual const TypeInfo& typeInfo() const;
611 
613  static const TypeInfo& theTypeInfo();
614 
615  protected:
616 
618  QColorDialog* myEditor;
619  };
620 
621 
626 
631  {
632  Q_OBJECT
633 
634  public:
635 
638 
640  virtual void setAttribute( const DtVisualizerDefinition* visDef,
641  DtVisualizerAttribute* visAttr);
642 
644  virtual void commitValue();
645 
647  virtual const TypeInfo& typeInfo() const;
648 
650  static const TypeInfo& theTypeInfo();
651 
652  protected:
655  };
656 
661 
663  {
664  Q_OBJECT
665 
666  public:
667 
670 
672  void setupGui();
673 
675  QWidget* findWidgetForItem(QTreeWidgetItem* item) const;
676  QComboBox* findComboForItem(QTreeWidgetItem* item) const;
677  int findKeyForItem(QTreeWidgetItem* item) const;
678 
680  const QTreeWidget* treeWidget() const;
681 
683  boost::signal<void (QTreeWidget*)> signal_addInstance;
684 
685  virtual void createItemForWidget(QWidget* widget,int key = -1);
686 
687  virtual void setDefaultComboValues(const std::vector<QString>&);
688 
689  protected slots:
690 
691  virtual void addInstance();
692  virtual void removeInstance();
693 
694  protected:
695  virtual void addToComboBoxes(int);
696 
697  protected:
701  QVector<int> myPossibleValues;
702  std::vector<QString> myDefaultValues;
703  };
704 
709  {
710  Q_OBJECT
711 
712  public:
713 
716 
718  virtual void setAttribute( const DtVisualizerDefinition* visDef,
719  DtVisualizerAttribute* visAttr);
720 
722  virtual void commitValue();
723 
725  virtual const TypeInfo& typeInfo() const;
726 
728  static const TypeInfo& theTypeInfo();
729 
730  boost::signal<void (DtVisualizerAttributeSymbolSelectorDialog*)> signal_dialogCreated;
731  boost::signal<void (DtVisualizerAttributeSymbolSelectorDialog*)> signal_dialogAboutToBeDestroyed;
732 
733  protected:
734  virtual void addInstance(QTreeWidget*);
735  virtual void addItem(int, const QString& def);
736  virtual DtModelDefinitionComboBox* createBox() const;
737  virtual std::vector<QString> defaultComboValues() const;
738 
739  protected:
742  };
743 
748 
749 }

Document ID: Generated on Mon Apr 8 19:24:01 EDT 2013 from SVN revision 125877
Copyright © 2005-2013 VT MÄK. All Rights Reserved (www.mak.com)