VR-Forces 4.3.1 Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
DtVisualizerAttributeEditor.h
Go to the documentation of this file.
1 /******************************************************************************
2 ** Copyright (c) 2014 MAK Technologies, Inc.
3 ** All rights reserved.
4 ******************************************************************************/
5 
9 
10 #pragma once
11 #include <vrvCoreQt/vrvCoreQt.h>
14 #include <QtGui/QWidget>
15 #include <QtGui/QDialog>
16 #include <QtCore/QMap>
17 
18 class QColorDialog;
19 class QComboBox;
20 class QLabel;
21 class QDoubleSpinBox;
22 class QLineEdit;
23 class QPushButton;
24 class QString;
25 class QStringList;
26 class QTreeWidget;
27 class QTreeWidgetItem;
28 class QHBoxLayout;
29 
30 namespace makVrv
31 {
32  class DtDe;
33  class DtVisualizerDefinition;
34  class DtModelDefinitionComboBox;
35 
38  {
39  Q_OBJECT
40 
41  public:
42 
45 
47  void setupGui();
48 
50  void createItemForWidget(QWidget * widget );
51 
53  QWidget* findWidgetForItem(QTreeWidgetItem* item) const;
54 
56  const QTreeWidget* treeWidget() const;
57 
59  boost::signal<void (QTreeWidget*)> signal_addInstance;
60 
61  protected slots:
62 
63  virtual void addInstance();
64  virtual void removeInstance();
65 
66  protected:
70  };
71 
76  {
77  public:
79 
80  virtual void setAttribute( const DtVisualizerDefinition* visDef,
81  DtVisualizerAttribute* visAttr) = 0;
82 
84  boost::signal<void ()> signal_attributeValueChanged;
85 
87  boost::signal<void ()> signal_cancel;
88 
89  boost::signal<void (DtVisualizerAttributeEditorInterface*)> signal_destroyed;
90  };
91 
92 
97  {
98  Q_OBJECT
99 
100  public:
101 
102  struct TypeInfo
103  {
105  : editsAttributeName()
106  , editsAttributeType("")
107  {
108  }
109 
110  TypeInfo(const std::string& str,
112  : editsAttributeName(str)
113  , editsAttributeType(info)
114  {
115  }
116 
117  std::string editsAttributeName;
119  };
120 
123 
125  virtual ~DtVisualizerAttributeEditor();
126 
128  virtual void setType(
130 
131  virtual void setAttribute(
132  const DtVisualizerDefinition* visDef,
133  DtVisualizerAttribute* visAttr);
134 
136  virtual bool commited() const;
137 
139  virtual bool canceled() const;
140 
141  virtual const TypeInfo& typeInfo() const = 0;
142 
143  public slots:
144 
145  virtual void commitValue();
146 
147  virtual void cancelValue();
148 
150  virtual void onPopup();
151 
152  protected:
153 
155  virtual void addCancelButton();
156 
157  protected:
165  };
166 
170  {
171  public:
174  editorTypeInfo() const = 0;
175 
177  virtual DtVisualizerAttributeEditor* create(DtDe& de, QWidget* parent) = 0;
178 
181  };
182 
186  template <typename Editor>
189  {
190  public:
191 
194  {
195  return Editor::theTypeInfo();
196  }
197 
199  {
200  return new Editor(de,parent);
201  }
202  };
203 
209  {
210  Q_OBJECT
211 
212  public:
213 
215 
216  virtual void setAttribute( const DtVisualizerDefinition* visDef,
217  DtVisualizerAttribute* visAttr);
218 
220  virtual void commitValue();
221 
222  protected:
223 
226  virtual void setCurrentIndex(int index);
227 
229  virtual void getValues(QStringList& values) = 0;
230 
232  virtual void commitValue(int currentIndex, const QString& value) = 0;
233 
234  protected:
236  };
237 
242  {
243  Q_OBJECT
244  public:
245 
247 
248  virtual void setAttribute( const DtVisualizerDefinition* visDef,
249  DtVisualizerAttribute* visAttr);
250 
252  virtual const TypeInfo& typeInfo() const;
253 
255  static const TypeInfo& theTypeInfo();
256 
257  protected:
258  virtual void commitValue(int index,const QString& value);
259  virtual void getValues(QStringList& values);
260  };
261 
265 
270  {
271  Q_OBJECT
272 
273  public:
274 
276 
277  virtual void setAttribute( const DtVisualizerDefinition* visDef,
278  DtVisualizerAttribute* visAttr);
279 
280  virtual void commitValue();
281 
283  virtual const TypeInfo& typeInfo() const;
284 
286  static const TypeInfo& theTypeInfo();
287 
288  protected:
289 
291  };
292 
297  {
298  Q_OBJECT
299 
300  public:
301 
303 
304  virtual void setAttribute( const DtVisualizerDefinition* visDef,
305  DtVisualizerAttribute* visAttr);
306 
307  virtual void commitValue();
308 
310  virtual const TypeInfo& typeInfo() const;
311 
313  static const TypeInfo& theTypeInfo();
314 
315  protected:
316 
318  };
319 
324 
325 
330  {
331  Q_OBJECT
332 
333  public:
334 
336 
337  virtual void setAttribute( const DtVisualizerDefinition* visDef,
338  DtVisualizerAttribute* visAttr);
339 
341  virtual void commitValue();
342 
344  virtual const TypeInfo& typeInfo() const;
345 
347  static const TypeInfo& theTypeInfo();
348 
349  protected:
350 
351  QDoubleSpinBox* myEdit;
352  };
353 
357 
362  {
363  Q_OBJECT
364 
365  public:
366 
369 
371  virtual void setAttribute( const DtVisualizerDefinition* visDef,
372  DtVisualizerAttribute* visAttr);
373 
375  virtual void commitValue();
376 
378  virtual const TypeInfo& typeInfo() const;
379 
381  static const TypeInfo& theTypeInfo();
382 
383  protected:
384 
386  virtual void onPopup();
387 
388  protected:
391  };
392 
397 
402  {
403  Q_OBJECT
404 
405  public:
406 
408 
409  virtual void setAttribute( const DtVisualizerDefinition* visDef,
410  DtVisualizerAttribute* visAttr);
411 
413  virtual const TypeInfo& typeInfo() const;
414 
416  static const TypeInfo& theTypeInfo();
417 
418  protected:
419  virtual void commitValue(int index,const QString& value);
420  virtual void getValues(QStringList& values);
421 
422  typedef QMap<QString,std::string> TextNameMap;
424  };
425 
430 
431 
436  {
437  Q_OBJECT
438 
439  public:
440 
443 
445  virtual void setAttribute( const DtVisualizerDefinition* visDef,
446  DtVisualizerAttribute* visAttr);
447 
449  virtual void commitValue();
450 
452  virtual const TypeInfo& typeInfo() const;
453 
455  static const TypeInfo& theTypeInfo();
456 
457  protected:
458 
459  void addInstance(QTreeWidget* parent);
460  void addItem(const QString& name);
461 
462  protected:
464 
465  };
466 
471 
472 
477  {
478  Q_OBJECT
479 
480  public:
481 
484 
486  virtual void setAttribute( const DtVisualizerDefinition* visDef,
487  DtVisualizerAttribute* visAttr);
488 
490  virtual void commitValue();
491 
493  virtual const TypeInfo& typeInfo() const;
494 
496  static const TypeInfo& theTypeInfo();
497 
498  protected:
499 
500  void addInstance(QTreeWidget* parent);
501  void addItem(const QString& name);
502 
503  protected:
506  };
507 
512 
513 
518  {
519  Q_OBJECT
520 
521  public:
522 
525 
527  virtual void setAttribute( const DtVisualizerDefinition* visDef,
528  DtVisualizerAttribute* visAttr);
529 
531  virtual void commitValue();
532 
534  virtual const TypeInfo& typeInfo() const;
535 
537  static const TypeInfo& theTypeInfo();
538 
539  protected:
540 
541  void addInstance(QTreeWidget* parent);
542  void addItem(const QString& name);
543 
544  protected:
546  };
547 
552 
555  {
556  Q_OBJECT
557 
558  public:
561 
563  virtual void setAttribute( const DtVisualizerDefinition* visDef,
564  DtVisualizerAttribute* visAttr);
565 
567  virtual void commitValue();
568 
570  virtual const TypeInfo& typeInfo() const;
571 
573  static const TypeInfo& theTypeInfo();
574 
575  protected:
576 
578  void setupEditorValues();
579 
582  void addGlyphRange( unsigned int first, unsigned int last,
583  QFontMetrics &mets, QTreeWidget* widget, QFont font );
584 
585  protected slots:
586  virtual void fontSelectionChanged(const QString&);
587  virtual void itemSelectionChanged();
588 
589  public:
590 
593 
595  QHBoxLayout* myFontSelectionLayout;
598  };
599 
604 
607  {
608  Q_OBJECT
609 
610  public:
613 
615  virtual void setAttribute( const DtVisualizerDefinition* visDef,
616  DtVisualizerAttribute* visAttr);
617 
619  virtual void commitValue();
620 
622  virtual const TypeInfo& typeInfo() const;
623 
625  static const TypeInfo& theTypeInfo();
626 
627  protected:
628 
630  QColorDialog* myEditor;
631  };
632 
633 
638 
643  {
644  Q_OBJECT
645 
646  public:
647 
650 
652  virtual void setAttribute( const DtVisualizerDefinition* visDef,
653  DtVisualizerAttribute* visAttr);
654 
656  virtual void commitValue();
657 
659  virtual const TypeInfo& typeInfo() const;
660 
662  static const TypeInfo& theTypeInfo();
663 
664  protected:
667  };
668 
673 
675  {
676  Q_OBJECT
677 
678  public:
679 
682 
684  void setupGui();
685 
687  QWidget* findWidgetForItem(QTreeWidgetItem* item) const;
688  QComboBox* findComboForItem(QTreeWidgetItem* item) const;
689  int findKeyForItem(QTreeWidgetItem* item) const;
690 
692  const QTreeWidget* treeWidget() const;
693 
695  boost::signal<void (QTreeWidget*)> signal_addInstance;
696 
697  virtual void createItemForWidget(QWidget* widget,int key = -1);
698 
699  virtual void setDefaultComboValues(const std::vector<QString>&);
700 
701  protected slots:
702 
703  virtual void addInstance();
704  virtual void removeInstance();
705 
706  protected:
707  virtual void addToComboBoxes(int);
708 
709  protected:
713  QVector<int> myPossibleValues;
714  std::vector<QString> myDefaultValues;
715  };
716 
721  {
722  Q_OBJECT
723 
724  public:
725 
728 
730  virtual void setAttribute( const DtVisualizerDefinition* visDef,
731  DtVisualizerAttribute* visAttr);
732 
734  virtual void commitValue();
735 
737  virtual const TypeInfo& typeInfo() const;
738 
740  static const TypeInfo& theTypeInfo();
741 
742  boost::signal<void (DtVisualizerAttributeSymbolSelectorDialog*)> signal_dialogCreated;
743  boost::signal<void (DtVisualizerAttributeSymbolSelectorDialog*)> signal_dialogAboutToBeDestroyed;
744 
745  protected:
746  virtual void addInstance(QTreeWidget*);
747  virtual void addItem(int, const QString& def);
748  virtual DtModelDefinitionComboBox* createBox() const;
749  virtual std::vector<QString> defaultComboValues() const;
750 
751  protected:
754  };
755 
760 
761 }

Document ID: Generated on Wed Jul 29 00:55:00 EDT 2015 from SVN revision 155257
Copyright © 2005-2015 VT MÄK. All Rights Reserved (www.mak.com)