VR-Exchange 2.1 API Documentation
pObjectViewComponent.h
Go to the documentation of this file.
1 /****************************************************************************
2  * Copyright (c) 2012 VT MAK
3  * All rights reserved.
4  ****************************************************************************/
5 
9 
10 #pragma once
11 
12 #include <portal/pControlMessage.h>
16 
17 #include <broker/objectFilter.h>
18 
19 #include <vlutil/vlTime.h>
20 
21 #include <QtCore/QObject>
22 #include <QtCore/QPoint>
23 #include <QtGui/QAction>
24 #include <QtGui/QFrame>
25 
26 class QMenu;
27 class QTimer;
28 class QHeaderView;
29 class QTreeWidget;
30 class QTreeWidgetItem;
31 
32 namespace MAKVrExchange
33 {
34 
35  class DtMarkingSymbols;
36  class DtObjectContextMenu;
37  class DtPortalObjectHolder;
38 
47  { Q_OBJECT;
48  public:
49 
52 
54  virtual ~DtObjectViewComponent();
55 
57  virtual QWidget* getGuiFrame();
58 
59  public:
60 
62  virtual void addObject( const MAKVrExchange::DtPortalReflectedObject& obj );
63 
65  virtual void updateObject( const MAKVrExchange::DtPortalReflectedObject& obj );
66 
68  virtual void removeObject( const MAKVrExchange::DtPortalReflectedObject& obj );
69 
71  virtual bool showUpdates() const;
72 
74  virtual bool showObjects() const;
75 
77  virtual void toggleShowUpdates( bool val );
78 
80  virtual void toggleShowObjects( bool val );
81 
85  virtual void filterSelectedObjects( const bool filter,
87 
88  public:
89 
90  static DtObjectViewComponent* create(
91  DtPortalConnection *pConn, QWidget *parent );
92 
93  protected:
94 
95  enum
96  {
97  FilterSelectedId = 0,
98  UnfilterSelectedId = 1
99  } ObjectFilterPopupMenuPosition;
100 
101  protected slots:
102 
109  virtual void objectHeaderRightButtonPressedEventHandler( const QPoint& point );
110 
118  virtual void objectRightButtonPressedCallback( QTreeWidgetItem* item,
119  const QPoint& point, int column );
120 
131  bool eventFilter( QObject* target, QEvent* event );
132 
133  virtual void onMenuAboutToShow();
134 
137  virtual void addNameFilterAction( bool );
138 
141  virtual void addTypeFilterAction( bool );
142 
145  virtual void addMarkingTextFilterAction( bool );
146 
149  virtual void removeNameFilterAction( bool );
150 
153  virtual void removeTypeFilterAction( bool );
154 
157  virtual void removeMarkingTextFilterAction( bool );
158 
160  virtual void displayStatistics();
161 
163  virtual QString headerLabel( const QHeaderView *header, int section );
164 
165  protected:
166 
167  static void discoverEntityPortalObjectCb(
168  const DtPortalReflectedEntity &obj, void* usrData );
169  static void updateEntityPortalObjectCb(
170  const DtPortalReflectedEntity &obj, void* usrData );
171  static void deleteEntityPortalObjectCb(
172  const DtPortalReflectedEntity &obj, void* usrData );
173 
174  static void discoverAggregatePortalObjectCb(
175  const DtPortalReflectedAggregate &obj, void* usrData );
176  static void updateAggregatePortalObjectCb(
177  const DtPortalReflectedAggregate &obj, void* usrData );
178  static void deleteAggregatePortalObjectCb(
179  const DtPortalReflectedAggregate &obj, void* usrData );
180 
181  static void discoverGenericPortalObjectCb(
182  const DtPortalReflectedGenericObject &obj, void* usrData );
183  static void updateGenericPortalObjectCb(
184  const DtPortalReflectedGenericObject &obj, void* usrData );
185  static void deleteGenericPortalObjectCb(
186  const DtPortalReflectedGenericObject &obj, void* usrData );
187 
188  static void discoverRadioTransmitterPortalObjectCb(
189  const DtPortalReflectedRadioTransmitterObject &object, void* usrData );
190  static void updateRadioTransmitterPortalObjectCb(
191  const DtPortalReflectedRadioTransmitterObject &object, void* usrData );
192  static void deleteRadioTransmitterPortalObjectCb(
193  const DtPortalReflectedRadioTransmitterObject &object, void* usrData );
194 
195  static void discoverRadioReceiverPortalObjectCb(
196  const DtPortalReflectedRadioReceiverObject &object, void* usrData );
197  static void updateRadioReceiverPortalObjectCb(
198  const DtPortalReflectedRadioReceiverObject &object, void* usrData );
199  static void deleteRadioReceiverPortalObjectCb(
200  const DtPortalReflectedRadioReceiverObject &object, void* usrData );
201 
202  static void discoverRrbPortalObjectCb(
203  const DtPortalReflectedIffObject &object, void* usrData );
204  static void updateRrbPortalObjectCb(
205  const DtPortalReflectedIffObject &object, void* usrData );
206  static void deleteRrbPortalObjectCb(
207  const DtPortalReflectedIffObject &object, void* usrData );
208 
209  static void discoverEmitterSystemPortalObjectCb(
210  const DtPortalReflectedEmitterSystemObject& object, void* usrData );
211  static void updateEmitterSystemPortalObjectCb(
212  const DtPortalReflectedEmitterSystemObject& object, void* usrData );
213  static void deleteEmitterSystemPortalObjectCb(
214  const DtPortalReflectedEmitterSystemObject& object, void* usrData );
215 
216  static void discoverEnvironmentProcessPortalObjectCb(
217  const DtPortalReflectedEnvironmentProcessObject& object, void* usrData );
218  static void updateEnvironmentProcessPortalObjectCb(
219  const DtPortalReflectedEnvironmentProcessObject& object, void* usrData );
220  static void deleteEnvironmentProcessPortalObjectCb(
221  const DtPortalReflectedEnvironmentProcessObject& object, void* usrData );
222 
223  static void discoverDesignatorPortalObjectCb(
224  const DtPortalReflectedDesignatorObject& object, void* usrData );
225  static void updateDesignatorPortalObjectCb(
226  const DtPortalReflectedDesignatorObject& object, void* usrData );
227  static void deleteDesignatorPortalObjectCb(
228  const DtPortalReflectedDesignatorObject& object, void* usrData );
229 
230  static void discoverGriddedDataPortalObjectCb(
231  const DtPortalReflectedGriddedDataObject& object, void* usrData );
232  static void updateGriddedDataPortalObjectCb(
233  const DtPortalReflectedGriddedDataObject& object, void* usrData );
234  static void deleteGriddedDataPortalObjectCb(
235  const DtPortalReflectedGriddedDataObject& object, void* usrData );
236 
237  private:
238 
241 
243  DtObjectViewComponent& operator = ( const DtObjectViewComponent& orig );
244 
245  protected:
246 
247  typedef std::map<const DtPortalReflectedObject*,DtPortalObjectHolder *>
249  typedef std::map<DtPortalMessageKind,DtU32> MessageKindToIntegerMap;
250  typedef std::map<DtPortalMessageKind,QTreeWidgetItem*>
252 
253  std::vector<int> myObjectListViewColumnSize;
254 
256 
260 
261  QFrame* myFrame;
263  QTimer* myStatsTimer;
266 
272 
283 
284  };
285 
286 }

Document ID: Generated on Tue Aug 7 22:07:13 EDT 2012 from SVN revision 117874
Copyright © 2005-2012 VT MÄK Inc. All Rights Reserved (www.mak.com)