VR-Forces 4.10 Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
DtQtToolbarAssembler.h
Go to the documentation of this file.
1 /******************************************************************************
2 ** Copyright (c) 2010 MAK Technologies, Inc.
3 ** All rights reserved.
4 ******************************************************************************/
5 
9 
10 #pragma once
11 
12 #include <vrvCoreQt/vrvCoreQt.h>
14 
16 
17 #include <QtCore/QSize>
18 
19 class QWidget;
20 class QToolBar;
21 class QAction;
22 
23 namespace makVrv
24 {
25  class DtToolbar;
26  class DtQtToolbarManager;
27  class DtWidgetBuilder;
28 
34  {
35  public:
37  virtual ~DtQtToolbarMenuAssembler();
38 
40  virtual QMenuBar* menuBar();
41 
43  virtual QWidget* menuWindow();
44 
46  virtual DtMenuManager& menuManager();
47 
48  public:
50  virtual void assemble(const DtMenuConfiguration& configuration);
51 
52  protected:
54  };
55 
59  {
60  public:
61 
62  typedef std::map<std::string, DtToolbar*> ToolbarBuilderMap;
63 
65 
67  virtual ~DtQtToolbarAssembler();
68 
70  static DtQtToolbarAssembler& instance(DtDe& de);
71 
73  void registerToolbar(DtToolbar*);
74 
76  DtToolbar* toolbarBuilder(const std::string&) const;
77 
79  void unregisterToolbar(DtToolbar*, bool deleteBuilder = true);
80 
82  {
83  return myToolbarBuilders;
84  }
85 
87  {
88  return myToolbarBuilders;
89  }
90 
92  virtual void setIconSize(const QSize&);
93 
94  const QSize& iconSize() const;
95 
98  virtual void merge(const DtQtToolbarAssembler::ToolbarBuilderMap&);
99 
102  virtual void registerWidgetBuilder(const std::string&, DtWidgetBuilder*, bool deleteExisting = true);
103 
105  virtual DtWidgetBuilder* widgetBuilder(const std::string&);
106 
108  virtual void unregisterWidgetBuilder(const std::string&, bool deleteExisting = true);
109 
110  protected:
111 
114 
115  virtual QAction* findMenuItem(const std::string& item, const std::map<DtMenuPath, QAction*>& menuItems) const;
116 
119  virtual void assembleRow(const DtToolbarPath& toolbarPath,
121 
123  virtual void assembleToolbar(const DtToolbarPath& toolbarPath, const DtToolbarConfiguration& configuration);
124 
126  virtual void assembleToolbarItem(const DtToolbarPath& toolbarPath);
127 
129  virtual void assembleToolbarMenuItem(const DtToolbarPath& toolbarPath);
130 
132  virtual void assembleToolbarWidget(const DtToolbarPath& toolbarPath);
133 
136  virtual void assembleToolbarMenu(const DtToolbarPath& toolbarPath);
137 
138  virtual QWidget* toolbarWindow();
139  virtual DtQtToolbarManager& toolbarManager();
140 
142  virtual void assemble(const DtToolbarConfiguration& configuration);
143 
145  virtual void addToolbarBreak(DtToolbarConfiguration::ToolbarLocation loc);
146 
147  protected:
148 
151 
152  typedef std::map<std::string, DtWidgetBuilder*> WidgetBuilders;
154 
155  QSize myIconSize;
156 
157  typedef std::map<int, std::string> RowBreakMap;
159  };
160 
164  {
165  public:
167  static void registerInstance(DtDe& de);
168 
169  virtual ~DtQtToolbarAssemblerCreator();
170 
172  virtual DtToolbarAssembler* create(DtDe& de);
173 
174  protected:
175 
177  };
178 }
The base class implementation of a Toolbar Assembler.
Definition: DtToolbarAssembler.h:28
The base class for VR-Vantage toolbars.
Definition: DtToolbar.h:26
A Toolbar manager which is how to lookup and find toolbars using toolbar paths.
Definition: DtQtToolbarManager.h:28
Contains makVrv::DtToolbarAssembler class.
RowBreakMap myOnRow
Definition: DtQtToolbarAssembler.h:158
std::map< std::string, DtWidgetBuilder * > WidgetBuilders
Definition: DtQtToolbarAssembler.h:152
A Qt implementation of a DtToolbarAssembler.
Definition: DtQtToolbarAssembler.h:58
#define DT_DLL_VRVCOREQT
Definition: vrvCoreQt.h:20
A Qt implementation of a DtMenuAssembler.
Definition: DtQtMenuAssembler.h:26
Override the DtToolbarAssemblerCreator with a DtQtToolbarAssemblerCreator.
Definition: DtQtToolbarAssembler.h:163
Contains DLL export macros.
std::map< int, std::string > RowBreakMap
Definition: DtQtToolbarAssembler.h:157
ToolbarBuilderMap myToolbarBuilders
Definition: DtQtToolbarAssembler.h:149
Contains makVrv::DtQtMenuAssembler class.
DtQtToolbarMenuAssembler myToolbarMenuAssembler
Definition: DtQtToolbarAssembler.h:150
A Menu manager which is how to lookup and find menu/menu items using menu paths.
Definition: DtMenuManager.h:31
DtMenuManager * myMenuManager
Definition: DtQtToolbarAssembler.h:53
This is a creator for makVrv::DtToolbarAssembler.
Definition: DtToolbarAssembler.h:109
A class that will allow the toolbar assembler to create and manage menus that are part of toolbars se...
Definition: DtQtToolbarAssembler.h:33
WidgetBuilders myWidgetBuilders
Definition: DtQtToolbarAssembler.h:153
std::map< std::string, DtToolbar * > ToolbarBuilderMap
Definition: DtQtToolbarAssembler.h:62
a Class which represents a toolbar path.
Definition: DtToolbarPath.h:40
const ToolbarBuilderMap & toolbarBuilderMap() const
Definition: DtQtToolbarAssembler.h:81
QSize myIconSize
Definition: DtQtToolbarAssembler.h:155
A configuration of the toolbar layout.
Definition: DtToolbarConfiguration.h:25
A configuration of the menu layout.
Definition: DtMenuConfiguration.h:24
The DtDe is the core component of any VR-Vantage application.
Definition: DtDe.h:69
ToolbarBuilderMap & toolbarBuilderMap()
Definition: DtQtToolbarAssembler.h:86
ToolbarLocation
Definition: DtToolbarConfiguration.h:32
This class is the generic builder base class for building a widget.
Definition: DtWidgetBuilder.h:22

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)