39 class PropertyContainer;
40 class DynamicPropertyP;
45 return boost::hash_range(s,s+std::strlen(s));
47 inline bool operator()(
const char *a,
const char *b)
const {
50 return std::strcmp(a,b)==0;
66 void getPropertyList(std::vector<Property*> &List)
const;
69 void getPropertyMap(std::map<std::string,Property*> &Map)
const;
71 Property *getDynamicPropertyByName(
const char*
name)
const;
90 const char* doc=0,
short attr=0,
bool ro=
false,
bool hidden=
false);
102 bool removeDynamicProperty(
const char*
name);
104 bool removeProperty(
const Property *prop);
106 std::vector<std::string> getDynamicPropertyNames()
const;
108 const char* getPropertyName(
const Property* prop)
const;
113 short getPropertyType(
const Property* prop)
const;
116 short getPropertyType(
const char *
name)
const;
118 const char* getPropertyGroup(
const Property* prop)
const;
120 const char* getPropertyGroup(
const char *
name)
const;
122 const char* getPropertyDocumentation(
const Property* prop)
const;
124 const char* getPropertyDocumentation(
const char *
name)
const;
150 const char *g=0,
const char *d=0,
short a=0,
bool ro=
false,
bool h=
false)
151 :property(prop),
name(
std::move(n)),pName(pn)
152 ,
group(g?g:
""),doc(d?d:
""),attr(a),readonly(ro),hidden(h)
156 return pName?pName:
name.c_str();
160 PropData getDynamicPropertyData(
const Property* prop)
const;
163 std::string getUniquePropertyName(
PropertyContainer &pc,
const char *Name)
const;
166 std::unique_ptr<DynamicPropertyP> mPimpl;
PropData(Property *prop=0, std::string &&n=std::string(), const char *pn=0, const char *g=0, const char *d=0, short a=0, bool ro=false, bool h=false)
Definition: DynamicProperty.h:149
Definition: PropertyLink.h:19
Property * property
Definition: DynamicProperty.h:140
std::string group
Definition: DynamicProperty.h:143
Definition: Persistence.h:14
short attr
Definition: DynamicProperty.h:145
Definition: PropertyContainer.h:107
Definition: GlobalId.h:61
Core::PropertyText name
Definition: CoreDocument.h:167
std::size_t operator()(const char *s) const
Definition: DynamicProperty.h:43
LX_CORE_EXPORT Version & version
Definition: DynamicProperty.h:42
Definition: DynamicProperty.h:139
Definition: DynamicProperty.h:58
bool hidden
Definition: DynamicProperty.h:147
Definition: AbstractXMLReader.h:7
bool readonly
Definition: DynamicProperty.h:146
std::string doc
Definition: DynamicProperty.h:144
std::string name
Definition: DynamicProperty.h:141
bool operator()(const char *a, const char *b) const
Definition: DynamicProperty.h:47
Definition: Property.h:77
const char * pName
Definition: DynamicProperty.h:142
Definition: AbstractXMLReader.h:5
basic_group< entity, Types... > group
Alias declaration for the most common use case.
Definition: entt.hpp:3822
const char * getName() const
Definition: DynamicProperty.h:155