/* mapentity.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_MAPENTITY__ #define __INCLUDED_EDITOR_MAPENTITY__ #include #include #include namespace editor { /** * @brief MapEntity is an entity on the map * */ class MapEntity : public QWidget { Q_OBJECT public: MapEntity(QWidget *parent = 0); /** * @brief returns the entity label * */ inline const QString &label() const { return entity_label; } /** * @brief returns the entity name * */ inline const QString &name() const { return entity_name; } /** * @brief returns the entity radius * */ inline const float radius() const { return entity_radius; } /** * @brief returns the x, y, or z coordinate of the entity location * */ inline const float location(int index) const { return entity_location[index]; } public slots: /** * @brief set the entity name * */ void set_label(const QString &label); /** * @brief set the entity label * */ void set_name(const QString &name); /** * @brief set the entity radius * */ void set_radius(const float radius); /** * @brief set the entity location * */ void set_location(const float x, const float y, const float z); protected: virtual void paintEvent(QPaintEvent *event); private: QString entity_label; QString entity_name; QString entity_type; float entity_location[3]; float entity_radius; QColor entity_color; }; } #endif // __INCLUDED_EDITOR_MAPENTITY__