VR-Forces 4.7 Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
vrfHierarchyPage.h
Go to the documentation of this file.
1 /*******************************************************************************
2 ** Copyright (c) 2013 MAK Technologies, Inc.
3 ** All rights reserved.
4 *******************************************************************************/
5 
8 
10 
11 #pragma once
12 
13 #include <vrvUtil/signalslib.h>
17 #include <vrvCoreQt/DtPage.h>
18 #include <QtWidgets/QPushButton>
20 #include <QtGui/QPixmap>
21 #include <QtWidgets/QStyledItemDelegate>
22 
23 #include <boost/signal.hpp>
24 
25 class QVBoxLayout;
26 class DtTreeWidget;
27 class QCheckBox;
28 class QFrame;
29 class QLineEdit;
30 class QPushButton;
31 class QHBoxLayout;
32 class QLabel;
33 
34 namespace makVrf
35 {
36  class DtVrfHierarchyPageLogic;
37  class DtVrfTreeWidget;
38  class DtMarkingTextSignalItemDelegate;
39 
40  class DT_DLL_VRFGUICOREQT DtScrollButtonArea : public QWidget
41  {
42  public:
43  DtScrollButtonArea(QWidget* parent);
44 
45  virtual void scrollContentsBy(int x);
46 
47  QWidget* widget() { return myCanvas; };
48 
49  boost::signal<void (const QStringList&)> signal_deparent;
50 
51  protected:
52  virtual void paintEvent(QPaintEvent* e);
53  virtual void resizeEvent(QResizeEvent* e);
54  virtual void dragEnterEvent(QDragEnterEvent *event);
55  virtual void dropEvent(QDropEvent *e);
56 
57  protected:
58  QWidget* myCanvas;
59  };
60 
61 
65  {
66  Q_OBJECT
67 
68  public:
69 
70  DtExpandCollapseButton(QWidget *parent = NULL);
71  virtual ~DtExpandCollapseButton();
72 
73  virtual void setExpandPixmap(QPixmap pix);
74  virtual void setCollapsePixmap(QPixmap pix);
75  virtual void setLevel(int level);
76  virtual int level() const;
77  virtual void setIsExpand(bool value);
78  virtual bool isExpand() const;
79 
80  signals:
81 
82  void expandLevelClicked(unsigned int);
83  void collapseLevelClicked(unsigned int);
84 
85  protected slots:
86 
87  virtual void buttonClicked();
88 
89  protected:
90 
91  virtual void paintEvent(QPaintEvent*);
92 
93  protected:
94  QPixmap myExpandPixmap;
96  bool myIsExpand;
97  int myLevel;
98  };
99 
101  {
102  Q_OBJECT
103 
104  public:
105 
107  virtual ~DtVrfHierarchyPage();
108 
109  DtVrfTreeWidget* echelon();
110 
113  virtual void selectObjects(const std::vector<DtVrfObjectListViewItem::DtVrfObjectState>);
114 
116  virtual std::vector<DtVrfObjectListViewItem::DtVrfObjectState> selectedObjects() const;
117 
118  virtual DtExpandCollapseButton* createExpandCollapseButton(unsigned int, int numButtons);
119 
120  virtual int initialSortColumn() const;
121 
122  virtual void changeForceOf(const QStringList& ids, int);
123 
124  virtual void setAllowNameChange(bool);
125  virtual void setEditPressTime(double);
126 
127  boost::signal<void (QTreeWidgetItem*)> signal_itemDoubleClicked;
128 
129  public slots:
131  virtual void onItemSelected();
132 
133  protected slots:
134  virtual void onMarkingTextChanged(DtVrfObjectListViewItem*, const QString&);
135 
137  virtual void onRightClickOnItem(QTreeWidgetItem*, QMouseEvent*, int col);
138 
139  virtual void onScrollRangeChanged(int);
140  virtual void onViewItemExpanded(QTreeWidgetItem*);
141  virtual void onViewItemCollapsed(QTreeWidgetItem*);
142  virtual void onExpandToLevel(unsigned int);
143  virtual void onCollapseToLevel(unsigned int);
144 
145  virtual void itemDoubleClicked(QTreeWidgetItem*);
146 
147  virtual void executeTextFilter();
148  virtual void resetTextFilter();
149 
150  protected:
151 
153  DtVrfHierarchyPage( makVrv::DtDe& de, QWidget* parent = 0, Qt::WindowFlags flags = 0);
154 
155  virtual DtVrfTreeWidget* createHierarchyList() = 0;
156  virtual DtVrfHierarchyPageLogic* createLogic() = 0;
157 
158  virtual void setupUi(QWidget* p);
159  virtual DtScrollButtonArea* createCollapseButtonConainer(QWidget* parent);
160 
161  virtual DtMarkingTextSignalItemDelegate* createTreeItemDelegate();
162 
163  virtual void slot_onDeParent(const QStringList&);
164  virtual void slot_onReParent(const QStringList& children, makVrv::DtUniqueID parentId);
165 
166  virtual void createSearchBar();
167  virtual void showSearchBars(bool);
168 
170  virtual void activate();
171 
173  virtual void deactivate();
174 
175  protected:
178 
179  public:
180  QVBoxLayout* myMasterLayout;
183  QPixmap myPlusPixmap;
184  QPixmap myMinusPixmap;
186  QFrame* myDividingLine;
187 
191  QHBoxLayout* mySearchBarLayout;
192  };
193 
196  {
197  Q_OBJECT
198 
199  public:
202 
203  virtual QWidget* createEditor(QWidget *parent, const QStyleOptionViewItem &option,
204  const QModelIndex &index) const;
205 
206  protected:
207  virtual void editingItemDestroyed();
208 
209  protected slots:
210  virtual void editingFinished();
211  virtual void cleanup();
212  virtual void textChanged(const QString&);
213 
214  signals:
215  void markingTextChanged(DtVrfObjectListViewItem*, const QString&);
216 
217  protected:
220  mutable bool myNameChanged;
221  };
222 
225  {
226  Q_OBJECT
227 
228  public:
230  virtual ~DtDragDropBoxItemDelegate();
231 
232  virtual void paint(QPainter *painter,
233  const QStyleOptionViewItem &option,
234  const QModelIndex &index) const;
235 
236  protected:
238  };
239 
242  {
243  public:
246 
249 
251  static void registerInstance(makVrv::DtDe& de, DtDragDropBoxItemDelegateCreator* instance);
252 
253  virtual DtDragDropBoxItemDelegate* create(QWidget* parent);
254 
255  protected:
257  };
258 }

Document ID: Generated on Fri Apr 26 21:53:14 EDT 2019 from SVN revision 197883
Copyright © 2005-2019 VT MAK. All Rights Reserved (www.mak.com)