VR-Forces 4.6 Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
extendedLabelsManager.h
Go to the documentation of this file.
1 /******************************************************************************
2 ** Copyright (c) 2013 MAK Technologies, Inc.
3 ** All rights reserved.
4 ******************************************************************************/
5 
8 
10 
11 #pragma once
12 
13 #include <vrfGuiCore/vrfGuiCore.h>
16 #include <vlutil/vlString.h>
17 #include <map>
18 #include <set>
19 #include <string>
20 #include <boost/signal.hpp>
21 
22 class DtSimMessage;
23 
24 namespace makVrv
25 {
26  class DtDe;
27 }
28 
29 namespace makVrf
30 {
33  {
34  public:
37 
40 
42  virtual void removeCreator(const std::string&);
43  };
44 
47  {
48  public:
50  virtual ~DtExtendedLabelsManager();
51 
53  static DtExtendedLabelsManager& instance(makVrv::DtDe& de);
54  static void registerInstance(makVrv::DtDe& de, DtExtendedLabelsManager*);
55 
56  public:
58  virtual const std::map<int, DtString>& extendedLabels() const;
59 
61  virtual DtString extendedLabel(int) const;
62 
65  virtual void setExtendedLabels(const std::map<int, DtString>&, bool sendMessage = true);
66 
68  virtual void requestExtendedLabels();
69 
72  virtual void processExtendedLabelsOperationMessage(DtSimMessage*);
73 
74  virtual void setupSymbolDecorations();
75 
77  virtual bool hasIndex(int) const;
78 
81  boost::signal<void ()>signal_extendedLabelsChanged;
82 
84  boost::signal<void ()>signal_extendedLabelsSet;
85 
86  protected:
88  virtual void removeAllExtendedLabels(std::set<std::string>&) const;
89 
91  virtual void addAllExtendedLabels(std::set<std::string>&) const;
92 
93  virtual void slot_backendDiscovered();
94 
95  virtual int labelMax() const;
96 
97  protected:
98  std::map<int, DtString> myExtendedLabels;
99  std::set<std::string> myCreators;
102  };
103 }

Document ID: Generated on Thu Apr 12 03:15:37 EDT 2018 from SVN revision 187986
Copyright © 2005-2018 VT MÄK. All Rights Reserved (www.mak.com)