OpenGL hacks.
[dcpomatic.git] / hacks / gl / basic_gl_pane.h
diff --git a/hacks/gl/basic_gl_pane.h b/hacks/gl/basic_gl_pane.h
new file mode 100644 (file)
index 0000000..b085dbb
--- /dev/null
@@ -0,0 +1,35 @@
+#ifndef _glpane_
+#define _glpane_
+
+#include "wx/wx.h"
+#include "wx/glcanvas.h"
+
+class BasicGLPane : public wxGLCanvas
+{
+    
+public:
+       BasicGLPane(wxFrame* parent, int* args);
+    
+       void resized(wxSizeEvent& evt);
+    
+       int getWidth();
+       int getHeight();
+    
+       void render(wxPaintEvent& evt);
+       void prepare3DViewport(int topleft_x, int topleft_y, int bottomrigth_x, int bottomrigth_y);
+       void prepare2DViewport(int topleft_x, int topleft_y, int bottomrigth_x, int bottomrigth_y);
+    
+       // events
+       void mouseMoved(wxMouseEvent& event);
+       void mouseDown(wxMouseEvent& event);
+       void mouseWheelMoved(wxMouseEvent& event);
+       void mouseReleased(wxMouseEvent& event);
+       void rightClick(wxMouseEvent& event);
+       void mouseLeftWindow(wxMouseEvent& event);
+       void keyPressed(wxKeyEvent& event);
+       void keyReleased(wxKeyEvent& event);
+    
+       DECLARE_EVENT_TABLE()
+};
+
+#endif