class EE::UI::CSS::PropertyDefinition

#include <propertydefinition.hpp>

class PropertyDefinition {
public:
    // construction

    PropertyDefinition(const std::string& name, const std::string& defaultValue, const bool& inherited = false);

    // methods

    static PropertyDefinition* New(const std::string& name, const std::string& defaultValue, const bool& inherited = false);
    const std::string& getName() const;
    const String::HashType& getId() const;
    PropertyId getPropertyId() const;
    const std::string& getDefaultValue() const;
    bool getInherited() const;
    const PropertyRelativeTarget& getRelativeTarget() const;
    PropertyDefinition& setRelativeTarget(const PropertyRelativeTarget& relativeTarget);
    PropertyDefinition& setType(const PropertyType& propertyType);
    const PropertyType& getType() const;
    PropertyDefinition& addAlias(const std::string& alias);
    bool isAlias(const std::string& alias) const;
    bool isAlias(const Uint32& id) const;
    bool isDefinition(const std::string& name) const;
    bool isDefinition(const Uint32& id) const;
    PropertyDefinition& setIndexed();
    const bool& isIndexed() const;
};