Project::OSiRiON - Git repositories
Project::OSiRiON
News . About . Screenshots . Downloads . Forum . Wiki . Tracker . Git
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorStijn Buys <ingar@osirion.org>2012-10-07 21:46:02 +0000
committerStijn Buys <ingar@osirion.org>2012-10-07 21:46:02 +0000
commit60b0e02ab6b8910b3870d16a6eef9d67c6a6f34e (patch)
tree8702424723a66ad2d65298d63160ef25ef83898e /src/client/galaxymapwidget.h
parente065de3bf7f15b895c7a22e9fdbf8125c94406b3 (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.h49
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__