diff options
Diffstat (limited to 'src/entityproperties.h')
-rw-r--r-- | src/entityproperties.h | 68 |
1 files changed, 68 insertions, 0 deletions
diff --git a/src/entityproperties.h b/src/entityproperties.h new file mode 100644 index 0000000..9ea38b5 --- /dev/null +++ b/src/entityproperties.h @@ -0,0 +1,68 @@ +/* + entityproperties.h + This file is part of the Project::OSiRiON world editor + and is distributed under the terms and conditions of + the GNU General Public License version 2 +*/ + +#ifndef __INCLUDED_EDITOR_ENTITYPROPERTIES__ +#define __INCLUDED_EDITOR_ENTITYPROPERTIES__ + +#include "properties.h" + +namespace editor +{ + +/** + * @brief contains the game properties for an entity + * */ +class EntityProperties : public Properties +{ +public: + EntityProperties(); + virtual ~EntityProperties(); + + /* ---- inspectors ---- */ + + /** + * @brief returns the object radius + * */ + inline const float radius() const { + return properties_radius; + } + + /** + * @brief returns the subsections string of this object + * */ + inline const QString & subsections() const { + return properties_subsections; + } + + /* ---- mutators ---- */ + + /** + * @brief add a header to the subsection string of this object + * */ + void add_subsection(const QString &name); + + /** + * @brief add a value key pair to the subsection string of this object + * */ + void add_subsection_value(const QString &key, const QString &value); + + /** + * @brief set the object radius + * */ + inline void set_radius(const float radius) { + properties_radius = radius; + } + +private: + float properties_radius; + + QString properties_subsections; +}; + +} // namespace editor + +#endif // __INCLUDED_EDITOR_ENTITYPROPERTIES__ |