diff options
author | Stijn Buys <ingar@osirion.org> | 2012-10-07 21:46:02 +0000 |
---|---|---|
committer | Stijn Buys <ingar@osirion.org> | 2012-10-07 21:46:02 +0000 |
commit | 60b0e02ab6b8910b3870d16a6eef9d67c6a6f34e (patch) | |
tree | 8702424723a66ad2d65298d63160ef25ef83898e /src/client/galaxymapwidget.h | |
parent | e065de3bf7f15b895c7a22e9fdbf8125c94406b3 (diff) |
Add galactic map, make it possible to other zones on the map.
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__ |