+/* $Id$
+
+This file is part of the MSP Märklin suite
+Copyright © 2006-2008 Mikkosoft Productions, Mikko Rasa
+Distributed under the GPL
+*/
+
#ifndef DESIGNER_H_
#define DESIGNER_H_
#include <string>
#include <msp/core/application.h>
+#include <msp/gbase/display.h>
+#include <msp/gbase/window.h>
+#include <msp/gbase/glcontext.h>
#include <msp/gl/font.h>
#include <msp/time/timestamp.h>
#include "libmarklin/catalogue.h"
class Designer: public Msp::Application
{
-public:
- Designer(int, char **);
- Marklin::Layout *get_layout() { return layout; }
- Marklin::Layout3D *get_layout_3d() { return layout_3d; }
- Msp::GL::Font &get_font() { return *font; }
- int main();
- void map_pointer_coords(int, int, float &, float &);
- ~Designer();
private:
enum Mode
{
INPUT
};
+ Msp::Graphics::Display *dpy;
+ Msp::Graphics::Window *wnd;
+ Msp::Graphics::GLContext *glc;
unsigned screen_w;
unsigned screen_h;
Msp::GL::Font *font;
Msp::Time::TimeStamp tooltip_timeout;
Msp::Time::TimeStamp last_tick;
+public:
+ Designer(int, char **);
+ ~Designer();
+
+ Marklin::Layout *get_layout() { return layout; }
+ Marklin::Layout3D *get_layout_3d() { return layout_3d; }
+ Msp::GL::Font &get_font() { return *font; }
+ int main();
+ void map_pointer_coords(int, int, float &, float &);
+private:
void tick();
void key_press(unsigned, unsigned, wchar_t);
void key_release(unsigned, unsigned);
- void button_press(int, int, float, float, unsigned);
- void pointer_motion(int, int, float, float);
+ void button_press(int, int, unsigned, unsigned);
+ void pointer_motion(int, int);
void project_3d();
void apply_camera();
void render();