VR-Forces 4.10 Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
imageLayerWidget.h
Go to the documentation of this file.
1 /******************************************************************************
2 ** Copyright (c) 2020 MAK Technologies, Inc.
3 ** All rights reserved.
4 ******************************************************************************/
5 
9 
10 #pragma once
11 
12 #include <vrvUtil/signalslib.h>
13 
16 #include <QtWidgets/QWidget>
17 #include <boost/signals2.hpp>
18 
19 namespace makVrv
20 {
21  class DtDe;
22 }
23 
24 namespace osgEarth
25 {
26  class ImageLayer;
27  class FeatureModelLayer;
28 }
29 
30 class QTreeWidget;
31 class QTreeWidgetItem;
32 
33 namespace makVrf
34 {
36 
37  class DT_DLL_VRFGUICOREQT DtImageLayerWidget : public QWidget
38  {
39 
40  Q_OBJECT;
41 
42  public:
44  DtImageLayerWidget(makVrv::DtDe& de, QWidget* parent,
45  Qt::WindowFlags f = Qt::Widget);
46 
48  virtual ~DtImageLayerWidget();
49 
50  virtual void addImageLayer(const std::string&, const std::vector<bool>& enabled, osgEarth::ImageLayer*,
51  int index = -1);
52  virtual void removeImageLayer(osgEarth::ImageLayer*);
53 
54  virtual void addModelLayer(const std::string&, const std::vector<bool>& enabled, osgEarth::FeatureModelLayer*,
55  int index = -1);
56  virtual void removeModelLayer(osgEarth::FeatureModelLayer*);
57 
58  virtual void clearLayers();
59 
60  boost::signals2::signal<void (int, bool, int)> signal_imageLayerEnabledChanged;
61  boost::signals2::signal<void (int, bool, int)> signal_modelLayerEnabledChanged;
62 
63  protected slots:
64  virtual void itemChanged(QTreeWidgetItem*, int);
65 
66  protected:
69  virtual bool addStealthViewModes(QTreeWidgetItem* parent, const std::vector<bool>& enabled);
70 
71  protected:
73 
74  typedef std::map<osgEarth::ImageLayer*, QTreeWidgetItem*> ImageLayers;
76 
77  typedef std::map<osgEarth::FeatureModelLayer*, QTreeWidgetItem*> FeatureModelLayersMap;
79 
80  public:
84  };
85 
88  {
89 
90  public:
92  static DtImageLayerWidgetCreator& instance(makVrv::DtDe& de);
93 
95  static void registerInstance(makVrv::DtDe& de,DtImageLayerWidgetCreator* anInstance);
96 
98  virtual DtImageLayerWidget* create(makVrv::DtDe& de, QWidget * parent = NULL,
99  const Qt::WindowFlags& flags = 0);
100  };
101 }
Virtual base class.
Definition: DtVirtualBaseClass.h:19
QTreeWidget * myLayersTree
Definition: imageLayerWidget.h:81
#define DT_DLL_VRFGUICOREQT
Definition: vrfGuiCoreQt.h:26
FeatureModelLayersMap myModelLayersMap
Definition: imageLayerWidget.h:78
QTreeWidgetItem * myModelLayers
Definition: imageLayerWidget.h:83
Image Layer Widget creator.
Definition: imageLayerWidget.h:87
std::map< osgEarth::FeatureModelLayer *, QTreeWidgetItem * > FeatureModelLayersMap
Definition: imageLayerWidget.h:77
boost::signals2::signal< void(int, bool, int)> signal_imageLayerEnabledChanged
Definition: imageLayerWidget.h:60
boost::signals2::signal< void(int, bool, int)> signal_modelLayerEnabledChanged
Definition: imageLayerWidget.h:61
makVrv::DtDe & myDe
Definition: imageLayerWidget.h:72
ImageLayers myImageLayersMap
Definition: imageLayerWidget.h:75
Contains makVrv::DtVirtualBaseClass class.
QTreeWidgetItem * myImageLayers
Definition: imageLayerWidget.h:82
A widget for displaying current image layers shown and an ability to turn them on/off.
Definition: imageLayerWidget.h:37
std::map< osgEarth::ImageLayer *, QTreeWidgetItem * > ImageLayers
Definition: imageLayerWidget.h:74
The DtDe is the core component of any VR-Vantage application.
Definition: DtDe.h:69

Document ID: Generated on Tue Sep 21 17:42:52 EDT 2021 from SVN revision 234861
Copyright © 2005-2021 MAK Technologies. All Rights Reserved (www.mak.com)