VR-Forces Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties 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 
15 #include <vrvCoreQt/DtPage.h>
17 
18 #include <QtWidgets/QTabBar>
19 #include <QtWidgets/QLabel>
20 
21 class QMenu;
22 class QAction;
23 class QCheckBox;
24 
25 namespace makVrv
26 {
27  class DtDe;
28  class DtQtDeMainWindow;
29 }
30 
31 namespace makVrf
32 {
33  class DtVrfGuiSettingsRecord;
34 
40  {
41  Q_OBJECT
42 
43  public:
44 
45  DtOverlayBar(makVrv::DtDe& de, QWidget* pager, Qt::WindowFlags f = 0);
46 
47  virtual ~DtOverlayBar();
48 
50  static DtOverlayBar* instance(makVrv::DtDe&);
51 
53  virtual void setIconSize(const QSize&);
54 
56  virtual void hideTab(const makVrv::DtUnicode&);
57 
59  virtual void showTab(const makVrv::DtUnicode&);
60 
61  virtual void activate() override;
62  virtual void deactivate() override;
63 
65  virtual QIcon icon() override;
66 
69  virtual makVrv::DtQIconConfigurations qIconConfigurations() const override;
70 
72  virtual QString title() override;
73 
75  virtual const std::string& pageClassName() const override;
76 
78  static const std::string& thePageClassName();
79 
80  protected:
81  virtual void updateIconsForMode();
82  virtual void updateIconForMode(int index, bool hidden);
83  virtual void showEvent(QShowEvent*);
84  virtual void hideEvent(QHideEvent*);
85 
86  virtual void finalizeSetup();
87  virtual void createRightClickMenu();
88 
89  virtual void guiSettingsChanged(const DtVrfGuiSettingsRecord&);
90 
91  virtual void slot_layerAdded(const std::string&);
92  virtual void slot_layerRemoved(const std::string&);
93  virtual void slot_layerRenamed(const std::string&, const std::string&);
94  virtual void slot_layerVisibilityChanged(const std::string&, int);
95  virtual void slot_overlayVisibilityChanged(const std::string&, bool);
96 
97  virtual void mousePressEvent(QMouseEvent *event);
98 
99  virtual void slot_overlayHidden(const std::string& s, bool b);
100 
102  virtual int positionOfTab(const std::string&) const;
103 
105  virtual int indexOfTab(const std::string&) const;
106  virtual std::string overlayName(int index) const;
107  virtual void slot_defaultHiddenChanged(const std::string& layer, bool b);
108 
109  protected slots:
110  virtual void onShowHideLayer();
111  virtual void onLockUnlockLayer();
112  virtual void onHideAllButThis();
113  virtual void onShowAllLayers();
114  virtual void onHideAllLayers();
115  virtual void onSaveOverlayAsShapeFiles();
116  virtual void onImportShapeFileOntoOverlay();
117  virtual void onChangeDefaultHidden(bool);
118  virtual void onChangeLayerVisibility();
119  virtual void updateCheckBoxSelectedState(int);
120 
121  public:
132 
133  protected:
136  QSize myIconSize;
138  std::set<std::string> myHideTabs;
139  std::set<std::string> myHiddenTabs;
140  std::map<std::string, QCheckBox*> myVisibilityStates;
141  };
142 
145 }
QTabBar * myTabBar
Definition: overlayBar.h:122
Virtual base class. Allows for RTTI and proper virtual destruction. Used by Creators, Factories, Providers, Assemblers and User Interfaces.
Definition: DtVirtualBaseClass.h:19
A unicode string. DtUnicode stores a UTF-16 encoded unicode string. Code Point, a Unicode character...
Definition: DtUnicode.h:33
Contains makVrv::DtPage class.
QMenu * myRightClickMenu
Definition: overlayBar.h:123
#define DT_DLL_VRFGUICOREQT
Definition: vrfGuiCoreQt.h:26
QAction * myShapeFilesImport
Definition: overlayBar.h:130
QAction * myShowHide
Definition: overlayBar.h:124
Definition: vrfGuiSettingsRecord.h:26
Definition: DtPage.h:150
QAction * myHideAllButThis
Definition: overlayBar.h:126
QSize myIconSize
Definition: overlayBar.h:136
Class to manage disconnection of boost connections on deletion.
Definition: DtSignalConnectionManager.h:20
QAction * mySaveAsShapeFiles
Definition: overlayBar.h:129
The page is a single widget component which is viewed in a page collection.
Definition: DtPage.h:30
int myRightClickMenuIndex
Definition: overlayBar.h:137
int myLastSelectedIndex
Definition: overlayBar.h:134
makVrv::DtSignalConnectionManager myConnections
Definition: overlayBar.h:135
Base class to provide boost signal/slot management.
QAction * mySetDefaultHidden
Definition: overlayBar.h:131
QAction * myShowAll
Definition: overlayBar.h:127
The DtDe is the core component of any VR-Vantage application. It owns a DtRenderer, DtDeCommunicator, as well as a DtDisplay and other things.
Definition: DtDe.h:72
QAction * myLockUnlock
Definition: overlayBar.h:125
A collection of icon configurations. The collection maintains flags indicating whether to generate ic...
Definition: DtQIconConfiguration.h:131
std::set< std::string > myHiddenTabs
Definition: overlayBar.h:139
std::set< std::string > myHideTabs
Definition: overlayBar.h:138
QAction * myHideAll
Definition: overlayBar.h:128
This class implements an overlay bar which will show overlay layers on a bar strip and scroll arrows ...
Definition: overlayBar.h:38
makVrv::DtPageCreatorTemplate< DtOverlayBar > DtOverlayBarCreator
Definition: overlayBar.h:144
std::map< std::string, QCheckBox * > myVisibilityStates
Definition: overlayBar.h:140

Document ID: Generated on Tue Sep 24 19:28:17 EDT 2024 from SVN revision 269799
Copyright © 2005-2024 MAK Technologies. All Rights Reserved (www.mak.com)