VR-Forces 4.5 Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
overlayBar.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>
18 
19 #include <QtWidgets/QTabBar>
20 #include <QtWidgets/QLabel>
21 #include <QtGui/QPixmap>
22 
23 class QMenu;
24 class QAction;
25 
26 namespace makVrv
27 {
28  class DtDe;
29  class DtQtDeMainWindow;
30 }
31 
32 namespace makVrf
33 {
34  class DtVrfSessionSettingsRecord;
35 
41  {
42  Q_OBJECT
43 
44  public:
45 
46  DtOverlayBar(makVrv::DtDe& de, const std::string& name, makVrv::DtQtDeMainWindow* parent);
47 
48  virtual ~DtOverlayBar();
49 
51  static DtOverlayBar* instance(makVrv::DtDe&);
52 
54  virtual void setIconSize(const QSize&);
55 
57  virtual void hideTab(const makVrv::DtUnicode&);
58 
60  virtual void showTab(const makVrv::DtUnicode&);
61 
62  protected:
63  virtual void showEvent(QShowEvent*);
64  virtual void hideEvent(QHideEvent*);
65 
66  virtual void finalizeSetup();
67  virtual void createRightClickMenu();
68 
69  virtual void sessionSettingsChanged(const DtVrfSessionSettingsRecord&);
70  virtual void changeVisibility(bool);
71 
72  virtual void slot_mainWidgetSet(QWidget*);
73  virtual void slot_changingMainWidget(QWidget* old, QWidget* aboutToBe);
74 
76 
79 
81  virtual void changeFloatingGeometry(int px, int py, int width, int height) {};
82 
85 
87  virtual void changeDockedGeometry(int px, int py, int width, int height) {};
88 
91 
93  virtual void selectPage(const std::string& pageClassName) {};
94 
96  virtual void addPageToGui(makVrv::DtPage*) {};
97 
100 
102  virtual void selectPageInGui(makVrv::DtPage* page) {};
103 
104  virtual void slot_layerAdded(const std::string&);
105  virtual void slot_layerRemoved(const std::string&);
106  virtual void slot_layerRenamed(const std::string&, const std::string&);
107  virtual void slot_layerVisibilityChanged(const std::string&, bool);
108  virtual void updateStatus(const std::string& tab);
109 
110  virtual void mousePressEvent(QMouseEvent *event);
111  virtual void paintEvent(QPaintEvent*);
112 
113  protected slots:
114  virtual void onShowHideLayer();
115  virtual void onLockUnlockLayer();
116  virtual void onHideAllButThis();
117  virtual void onShowAllLayers();
118  virtual void onHideAllLayers();
119  virtual void onSaveOverlayAsShapeFiles();
120  virtual void onImportShapeFileOntoOverlay();
121 
122  public:
123  QPixmap myHidden;
124  QPixmap myVisible;
125 
134 
135  protected:
137  QSize myIconSize;
139  std::set<std::string> myHideTabs;
140  std::set<std::string> myHiddenTabs;
141  };
142 
145  {
146  public:
149 
151  virtual ~DtOverlayBarCreator();
152 
154  static DtOverlayBarCreator& instance(makVrv::DtDe&);
155 
157  static void registerInstance(makVrv::DtDe&, DtOverlayBarCreator*);
158 
160  virtual DtOverlayBar* create(const std::string& name, QWidget* parent);
161 
162  protected:
164  };
165 }

Document ID: Generated on Thu Mar 23 18:54:12 EDT 2017 from SVN revision 174804
Copyright © 2005-2017 VT MÄK. All Rights Reserved (www.mak.com)