VR-Forces 4.8 Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
DtToolbarAssembler.h
Go to the documentation of this file.
1 /******************************************************************************
2 ** Copyright (c) 2010 MAK Technologies, Inc.
3 ** All rights reserved.
4 ******************************************************************************/
5 /******************************************************************************
6 ** $RCSfile: DtToolbarAssembler.h,v $ $Revision: 1.10 $ $State: Exp $
7 ******************************************************************************/
8 
13 
14 #pragma once
15 
16 #include <vrvCore/vrvCore.h>
19 #include <vrvCore/DtToolbarPath.h>
20 
21 #include <stack>
22 
23 namespace makVrv
24 {
25  class DtToolbarConfiguration;
26  class DtToolbarPath;
27  class DtDe;
28 
32  {
33  public:
34 
36 
38  static DtToolbarAssembler& instance(DtDe&);
39 
41  virtual ~DtToolbarAssembler();
42 
44  virtual void assemble(const DtToolbarConfiguration& configuration);
45 
48  virtual void updateToolbars( const DtToolbarConfiguration& configuration );
49 
50  protected:
51 
52  // Data structures used to sort the toolbars when restoring the UI. Used std::map because
53  // ordering is important here.
54  typedef std::multimap<DtToolbarConfiguration::ToolbarLocation, DtToolbarPath> LocationPathMap;
55  typedef std::map<int, DtToolbarPath> ToolbarPathsMap;
56  typedef std::map<int, ToolbarPathsMap> ToolbarPathsMapMap;
57 
59 
61  void assembleToolbarPath(const DtToolbarPath& toolbarPath,
63 
65  virtual void assembleRow(const DtToolbarPath& toolbarPath, DtToolbarConfiguration::ToolbarLocation location);
66 
68  virtual void addToolbarBreak(DtToolbarConfiguration::ToolbarLocation loc);
69 
71  virtual void assembleToolbar(const DtToolbarPath& toolbarPath, const DtToolbarConfiguration& configuration);
72 
74  virtual void assembleToolbarItem(const DtToolbarPath& toolbarPath);
75 
77  virtual void assembleToolbarMenuItem(const DtToolbarPath& toolbarPath);
78 
80  virtual void assembleToolbarWidget(const DtToolbarPath& toolbarPath);
81 
83  virtual void assembleToolbarMenu(const DtToolbarPath& toolbarPath);
84 
86  virtual void assembleTopLeftToolbars(const LocationPathMap& locMap, DtToolbarConfiguration::ToolbarLocation loc,
87  const DtToolbarConfiguration& configuration);
88 
90  virtual void assembleBottomRightToolbars(const LocationPathMap&, DtToolbarConfiguration::ToolbarLocation,
91  const DtToolbarConfiguration& );
92 
94  virtual void populateToobarPathsMap(const LocationPathMap& locMap, DtToolbarConfiguration::ToolbarLocation loc,
95  const DtToolbarConfiguration& configuration, ToolbarPathsMapMap& tpMap);
96 
98  virtual void updateToolbarPath( const DtToolbarPath& toolbarPath, const DtToolbarConfiguration& configuration);
99 
102  virtual void updateToolbar(const DtToolbarPath& toolbarPath, const DtToolbarConfiguration& configuration);
103 
104  protected:
105 
106  std::stack<DtToolbarPath> myToolbarStack;
108  };
109 
113  {
114  public:
115 
117  static DtToolbarAssemblerCreator& instance(DtDe& de);
118 
120  virtual ~DtToolbarAssemblerCreator();
121 
123  virtual DtToolbarAssembler* create(DtDe& de);
124 
125  protected:
126 
129  };
130 }
The base class implementation of a Toolbar Assembler.
Definition: DtToolbarAssembler.h:31
std::map< int, DtToolbarPath > ToolbarPathsMap
Definition: DtToolbarAssembler.h:55
Virtual base class.
Definition: DtVirtualBaseClass.h:22
std::stack< DtToolbarPath > myToolbarStack
Definition: DtToolbarAssembler.h:106
std::multimap< DtToolbarConfiguration::ToolbarLocation, DtToolbarPath > LocationPathMap
Definition: DtToolbarAssembler.h:54
DtDe & myDe
Definition: DtToolbarAssembler.h:107
Contains makVrv::DtVirtualBaseClass class.
#define DT_DLL_VRVCORE
Definition: vrvCore.h:20
This is a creator for makVrv::DtToolbarAssembler.
Definition: DtToolbarAssembler.h:112
Contains makVrv::DtToolbarPath class.
Contains makVrv::DtToolbarConfiguration class.
a Class which represents a toolbar path.
Definition: DtToolbarPath.h:43
A configuration of the toolbar layout.
Definition: DtToolbarConfiguration.h:28
The DtDe is the core component of any VR-Vantage application.
Definition: DtDe.h:69
std::map< int, ToolbarPathsMap > ToolbarPathsMapMap
Definition: DtToolbarAssembler.h:56
ToolbarLocation
Definition: DtToolbarConfiguration.h:35
Contains DLL export macros.

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)