VR-Forces 4.6.1 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 }

Document ID: Generated on Wed Jul 25 16:57:45 EDT 2018 from SVN revision 190790
Copyright © 2005-2018 VT MÄK. All Rights Reserved (www.mak.com)