VR-Forces 4.8 Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
createMenuBuilder.h
Go to the documentation of this file.
1 /*******************************************************************************
2 ** Copyright (c) 2012 MAK Technologies, Inc.
3 ** All rights reserved.
4 *******************************************************************************/
5 
8 
10 
11 #pragma once
12 
13 #include <vrfGuiCore/vrfGuiCore.h>
16 #include <vrvUtil/DtUnicode.h>
18 #include <vector>
19 #include <map>
20 
21 class DtModelSet;
22 class DtModelSetEntry;
23 
24 namespace makVrv
25 {
26  class DtDe;
27 }
28 
29 namespace makVrf
30 {
31  class DtVrfMenu;
33  {
34  private:
37 
38  public:
39  enum Flags
40  {
41  CategoryFolderOnly = 0x00000001,
45  AddAllEnvironmentals = 0x00000002,
50 
51  AddAllForces = 0x00000004,
52  PlaceOnPaletteSubmenu = 0x00000010,
54  CategoryTopLevelTagsOnly = 0x00000020,
56  AddAll = (AddAllEnvironmentals | AddAllForces),
57  DefaultCreationFlags = (CategoryTopLevelTagsOnly | PlaceOnPaletteSubmenu)
58  };
59 
60  public:
61  typedef std::map<std::string, makVrv::DtUnicode> MenuPalettes;
62 
65 
67  virtual ~DtCreateMenuBuilder();
68 
72  virtual void setIndividualMenuItems(const std::vector<DtEntityMapperKey>&);
73 
77  virtual DtVrfMenu* createMenu(const DtModelSet* modelSet, Flags) const;
78 
80  const MenuPalettes& menuPalettes() const
81  {
82  return myMenuPalettes;
83  }
84 
86  virtual makVrv::DtUnicode paletteTitle(const std::string&) const;
87 
90  virtual void addPalette(const std::string& key, const makVrv::DtUnicode& title);
91 
93  virtual void removePalette(const std::string&);
94 
96  static DtCreateMenuBuilder& instance(makVrv::DtDe& de);
97 
99  static void registerInstance(makVrv::DtDe&, DtCreateMenuBuilder*);
100 
103  virtual void setTags(const DtSimulationObjectCategoryInformation&);
104 
105  protected:
106  virtual bool isIndividualMenuItem(const DtModelSetEntry*) const;
107 
110  virtual std::map<DtString, int> categoriesWithOnlyOneForce(const DtModelSet*) const;
111 
112  protected:
114  std::vector<DtEntityMapperKey> myIndividualMenuItems;
115 
118  };
119 }
Definition: createMenuBuilder.h:32
Virtual base class.
Definition: DtVirtualBaseClass.h:22
A unicode string.
Definition: DtUnicode.h:33
The DtSimulationObjectCategoryInformation class is a class that will read the comma delimited categor...
Definition: simulationObjectCategoryInformation.h:22
Definition: vrfMenu.h:18
makVrv::DtDe & myDe
Definition: createMenuBuilder.h:113
#define DT_DLL_VRFGUICORE
Contains DLL export macros.
Definition: vrfGuiCore.h:25
MenuPalettes myMenuPalettes
Definition: createMenuBuilder.h:116
Description: A model is a set of items that defines a model to create in the back-end from the front-...
Definition: modelSetEntry.h:24
Contains makVrv::DtVirtualBaseClass class.
std::vector< DtEntityMapperKey > myIndividualMenuItems
Definition: createMenuBuilder.h:114
DtSimulationObjectCategoryInformation myTags
Definition: createMenuBuilder.h:117
The DtDe is the core component of any VR-Vantage application.
Definition: DtDe.h:69
std::map< std::string, makVrv::DtUnicode > MenuPalettes
Definition: createMenuBuilder.h:61
const MenuPalettes & menuPalettes() const
Returns currently mapped palettes and titles.
Definition: createMenuBuilder.h:80
Definition: modelSet.h:28
Flags
Definition: createMenuBuilder.h:39

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)