VR-Forces 4.1 Class Documentation
DtVrfModelSetManager.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>
15 
16 #include <boost/signal.hpp>
17 
18 #include <string>
19 #include <map>
20 
21 class DtModelSet;
22 class DtModelSetEntry;
23 class DtString;
25 
26 namespace makVrv
27 {
28  class DtDe;
29 }
30 
31 namespace makVrf
32 {
33  class DtEntityMapperKey;
34 
37  {
38  public:
40  virtual ~DtVrfModelSetManager();
41 
43  static DtVrfModelSetManager& instance(makVrv::DtDe& de);
44 
45  public:
47  virtual bool load(const std::string&, bool reset = true, bool signal = true);
48 
49  virtual DtModelSetEntry* modelSetEntry(const DtEntityMapperKey& key) const;
50 
52  virtual bool isFavorite(const DtEntityMapperKey& key, int force) const;
53 
55  virtual DtModelSetEntry* addModelSetEntry(const DtString& label, const DtEntityMapperKey&,
56  const DtRwNLengthStringVector& cats);
57 
59  virtual void removeModelSetEntry(const DtEntityMapperKey& e);
60 
62  virtual std::string nameFor(const DtEntityMapperKey&) const;
63 
65  virtual std::string keywordsFor(const DtEntityMapperKey&) const;
66 
69  virtual void setModelSet(DtModelSet*);
70 
73  virtual void setFavorite(const DtEntityMapperKey& key, bool b);
74 
77  virtual DtModelSet* loadFavoritesFor(const std::string&);
78 
81  virtual void mergeFavoritesInto(DtModelSet* favorite, DtModelSet* modelSet);
82 
84  virtual DtModelSetEntry* favoriteFor(DtModelSetEntry*) const;
85 
86  const DtModelSet* modelSet() const
87  {
88  return myModelSet;
89  }
90 
91  DtModelSet* modelSet()
92  {
93  return myModelSet;
94  }
95 
96  void setAutoSave(bool b)
97  {
98  myAutoSave = b;
99  }
100 
101  bool autoSave() const
102  {
103  return myAutoSave;
104  }
105 
106  protected:
108  virtual void clearModelSets();
109 
110  public:
111  boost::signal<void ()> signal_modelSetChanged;
112 
113  protected:
118 
119  typedef std::map<std::string, DtModelSet*> Favorites;
121  };
122 }

Document ID: Generated on Tue Jan 29 18:21:16 EST 2013 from SVN revision 123193
Copyright © 2005-2013 VT MÄK Inc. All Rights Reserved (www.mak.com)