diff options
Diffstat (limited to 'src/client/galaxymapwidget.h')
-rw-r--r-- | src/client/galaxymapwidget.h | 49 |
1 files changed, 49 insertions, 0 deletions
diff --git a/src/client/galaxymapwidget.h b/src/client/galaxymapwidget.h new file mode 100644 index 0000000..3e74903 --- /dev/null +++ b/src/client/galaxymapwidget.h @@ -0,0 +1,49 @@ +/* + client/mapwidget.h + This file is part of the Osirion project and is distributed under + the terms of the GNU General Public License version 2 +*/ + +#ifndef __INCLUDED_CLIENT_GALAXYMAPWIDGET_H__ +#define __INCLUDED_CLIENT_GALAXYMAPWIDGET_H__ + +#include "core/zone.h" +#include "ui/widget.h" + +namespace client { + +class GalaxyMapWidget : public ui::Widget +{ +public: + GalaxyMapWidget(ui::Widget *parent = 0); + + virtual ~GalaxyMapWidget(); + + void set_zoom(const float zoom); + + void set_zone(core::Zone *zone); + + inline unsigned int hover() const { + return galaxymapwidget_hover_id; + } + + inline core::Zone *zone() const { + return galaxymapwidget_zone; + } + +protected: + virtual void draw(); + + /// called when the widget receives a key press + virtual bool on_keypress(const int key, const unsigned int modifier); + +private: + float galaxymapwidget_zoom; + + core::Zone *galaxymapwidget_zone; + unsigned int galaxymapwidget_hover_id; + +}; // class GalaxyMapWidget + +} // namespace client +#endif // __INCLUDED_CLIENT_GALAXYMAPWIDGET_H__ |