OpenLexocad  27.0
PropertyNameTool.h
Go to the documentation of this file.
1 #pragma once
2 
3 #include <Base/base_defines.h>
4 
5 #include <map>
6 #include <string>
7 #include <utility>
8 
9 
14 
21 
22 
23 namespace Base
24 {
26 {
28  P_MODIFY_PLACEMENT = 1 << 0, // 1
29  P_LINK = 1 << 1, // 2
30  P_MODIFY_VISIBLITY = 1 << 3, // 8
31  P_MODIFY_SHAPE = 1 << 4, // 16
32  P_MODIFY_APPEARANCE = 1 << 5, // 32
33 
34 };
35 
36 // Property name
37 enum PName
38 {
39  m_No_Name = 0,
57 
58  // Inverse > 10000
59  m_Inverse = 10000,
85  // User > 20000
86  m_User = 20000
87 };
88 
92 
94 {
95 public:
97  static std::string getPNameAsString(const Base::PName n);
99  static Base::PName getPNameFromString(const std::string& n);
101  static void init();
103  static void addUserProperty(unsigned int index, const std::string& name);
105  static unsigned int userNameCnt;
106 
107 private:
108 };
109 } // namespace Base
110 
111 
112 #define ADD_PNAME(_pname_) \
113  { \
114  pnameMap[Base::_pname_] = #_pname_; \
115  pstringMap[#_pname_] = Base::_pname_; \
116  }
Definition: PropertyNameTool.h:84
Definition: PropertyNameTool.h:93
Definition: PropertyNameTool.h:67
Definition: PropertyNameTool.h:86
Definition: PropertyNameTool.h:72
PropertyKind
Definition: PropertyNameTool.h:25
#define BASE_EXPORT
Definition: base_defines.h:12
Definition: PropertyNameTool.h:56
Definition: PropertyNameTool.h:71
Definition: PropertyNameTool.h:41
Definition: PropertyNameTool.h:55
Definition: PropertyNameTool.h:80
Definition: PropertyNameTool.h:42
Core::PropertyText name
Definition: CoreDocument.h:143
Definition: PropertyNameTool.h:82
Definition: PropertyNameTool.h:79
Definition: PropertyNameTool.h:65
Definition: PropertyNameTool.h:68
Definition: PropertyNameTool.h:83
Definition: PropertyNameTool.h:76
Definition: PropertyNameTool.h:46
Definition: PropertyNameTool.h:66
Definition: PropertyNameTool.h:54
Definition: PropertyNameTool.h:70
Definition: PropertyNameTool.h:43
Definition: PropertyNameTool.h:48
Definition: PropertyNameTool.h:30
Definition: PropertyNameTool.h:29
Definition: PropertyNameTool.h:27
Definition: PropertyNameTool.h:44
Definition: PropertyNameTool.h:32
PName
Definition: PropertyNameTool.h:37
static unsigned int userNameCnt
User name count.
Definition: PropertyNameTool.h:105
Definition: PropertyNameTool.h:74
Definition: PropertyNameTool.h:49
Definition: PropertyNameTool.h:50
Definition: PropertyNameTool.h:73
Definition: PropertyNameTool.h:81
Definition: PropertyNameTool.h:52
Definition: PropertyNameTool.h:31
Definition: PropertyNameTool.h:75
Definition: PropertyNameTool.h:78
Definition: AbstractXMLReader.h:8
Definition: PropertyNameTool.h:39
Definition: PropertyNameTool.h:45
Definition: PropertyNameTool.h:77
Definition: PropertyNameTool.h:47
Definition: PropertyNameTool.h:64
Definition: PropertyNameTool.h:63
Definition: PropertyNameTool.h:53
Definition: PropertyNameTool.h:62
Definition: PropertyNameTool.h:51
Definition: PropertyNameTool.h:28
Definition: PropertyNameTool.h:61
Definition: PropertyNameTool.h:59
Definition: PropertyNameTool.h:69
Definition: PropertyNameTool.h:60
Definition: PropertyNameTool.h:40