VR-Forces 4.8 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 /******************************************************************************
6 ** $RCSfile: DtQtToolbarAssembler.h,v $ $Revision: 1.12 $ $State: Exp $
7 ******************************************************************************/
8 
12 
13 #pragma once
14 
15 #include <vrvCoreQt/vrvCoreQt.h>
17 
19 
20 #include <QtCore/QSize>
21 
22 class QWidget;
23 class QToolBar;
24 class QAction;
25 
26 namespace makVrv
27 {
28  class DtToolbar;
29  class DtQtToolbarManager;
30  class DtWidgetBuilder;
31 
37  {
38  public:
40  virtual ~DtQtToolbarMenuAssembler();
41 
43  virtual QMenuBar* menuBar();
44 
46  virtual QWidget* menuWindow();
47 
49  virtual DtMenuManager& menuManager();
50 
51  public:
53  virtual void assemble( const DtMenuConfiguration& configuration );
54 
55  protected:
57  };
58 
62  {
63  public:
64 
65  typedef std::map<std::string,DtToolbar*> ToolbarBuilderMap;
66 
68 
70  virtual ~DtQtToolbarAssembler();
71 
73  static DtQtToolbarAssembler& instance(DtDe& de);
74 
76  void registerToolbar(DtToolbar*);
77 
79  DtToolbar* toolbarBuilder(const std::string&) const;
80 
82  void unregisterToolbar(DtToolbar*, bool deleteBuilder = true);
83 
85  {
86  return myToolbarBuilders;
87  }
88 
90  {
91  return myToolbarBuilders;
92  }
93 
95  virtual void setIconSize(const QSize&);
96 
97  const QSize& iconSize() const;
98 
101  virtual void merge(const DtQtToolbarAssembler::ToolbarBuilderMap&);
102 
105  virtual void registerWidgetBuilder(const std::string&, DtWidgetBuilder*, bool deleteExisting = true);
106 
108  virtual DtWidgetBuilder* widgetBuilder(const std::string&);
109 
111  virtual void unregisterWidgetBuilder(const std::string&, bool deleteExisting = true);
112 
113  protected:
114 
117 
118  virtual QAction* findMenuItem(const std::string& item, const std::map<DtMenuPath, QAction*>& menuItems) const;
119 
122  virtual void assembleRow(const DtToolbarPath& toolbarPath,
124 
126  virtual void assembleToolbar(const DtToolbarPath& toolbarPath, const DtToolbarConfiguration& configuration);
127 
129  virtual void assembleToolbarItem(const DtToolbarPath& toolbarPath);
130 
132  virtual void assembleToolbarMenuItem(const DtToolbarPath& toolbarPath);
133 
135  virtual void assembleToolbarWidget(const DtToolbarPath& toolbarPath);
136 
139  virtual void assembleToolbarMenu(const DtToolbarPath& toolbarPath);
140 
141  virtual QWidget* toolbarWindow();
142  virtual DtQtToolbarManager& toolbarManager();
143 
145  virtual void assemble( const DtToolbarConfiguration& configuration );
146 
148  virtual void addToolbarBreak(DtToolbarConfiguration::ToolbarLocation loc);
149 
150  protected:
151 
154 
155  typedef std::map<std::string, DtWidgetBuilder*> WidgetBuilders;
157 
158  QSize myIconSize;
159 
160  typedef std::map<int, std::string> RowBreakMap;
162  };
163 
167  {
168  public:
170  static void registerInstance(DtDe& de);
171 
172  virtual ~DtQtToolbarAssemblerCreator();
173 
175  virtual DtToolbarAssembler* create(DtDe& de);
176 
177  protected:
178 
180  };
181 }
The base class implementation of a Toolbar Assembler.
Definition: DtToolbarAssembler.h:31
std::map< std::string, DtToolbar * > ToolbarBuilderMap
Definition: DtQtToolbarAssembler.h:65
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:31
Contains makVrv::DtToolbarAssembler class.
RowBreakMap myOnRow
Definition: DtQtToolbarAssembler.h:161
std::map< std::string, DtWidgetBuilder * > WidgetBuilders
Definition: DtQtToolbarAssembler.h:155
A Qt implementation of a DtToolbarAssembler.
Definition: DtQtToolbarAssembler.h:61
#define DT_DLL_VRVCOREQT
Definition: vrvCoreQt.h:20
A Qt implementation of a DtMenuAssembler.
Definition: DtQtMenuAssembler.h:29
Override the DtToolbarAssemblerCreator with a DtQtToolbarAssemblerCreator.
Definition: DtQtToolbarAssembler.h:166
Contains DLL export macros.
std::map< int, std::string > RowBreakMap
Definition: DtQtToolbarAssembler.h:160
ToolbarBuilderMap myToolbarBuilders
Definition: DtQtToolbarAssembler.h:152
Contains makVrv::DtQtMenuAssembler class.
DtQtToolbarMenuAssembler myToolbarMenuAssembler
Definition: DtQtToolbarAssembler.h:153
A Menu manager which is how to lookup and find menu/menu items using menu paths.
Definition: DtMenuManager.h:34
DtMenuManager * myMenuManager
Definition: DtQtToolbarAssembler.h:56
This is a creator for makVrv::DtToolbarAssembler.
Definition: DtToolbarAssembler.h:112
A class that will allow the toolbar assembler to create and manage menus that are part of toolbars se...
Definition: DtQtToolbarAssembler.h:36
WidgetBuilders myWidgetBuilders
Definition: DtQtToolbarAssembler.h:156
a Class which represents a toolbar path.
Definition: DtToolbarPath.h:43
const ToolbarBuilderMap & toolbarBuilderMap() const
Definition: DtQtToolbarAssembler.h:84
QSize myIconSize
Definition: DtQtToolbarAssembler.h:158
A configuration of the toolbar layout.
Definition: DtToolbarConfiguration.h:28
A configuration of the menu layout.
Definition: DtMenuConfiguration.h:27
The DtDe is the core component of any VR-Vantage application.
Definition: DtDe.h:69
ToolbarBuilderMap & toolbarBuilderMap()
Definition: DtQtToolbarAssembler.h:89
ToolbarLocation
Definition: DtToolbarConfiguration.h:35
This class is the generic builder base class for building a widget.
Definition: DtWidgetBuilder.h:25

Document ID: Generated on Thu Aug 27 10:56:05 EDT 2020 from SVN revision 217100
Copyright © 2005-2020 MAK Technologies. All Rights Reserved (www.mak.com)