diff options
Diffstat (limited to 'src/my_gtk_gl_scene_widget.h')
-rw-r--r-- | src/my_gtk_gl_scene_widget.h | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/src/my_gtk_gl_scene_widget.h b/src/my_gtk_gl_scene_widget.h new file mode 100644 index 0000000..8445252 --- /dev/null +++ b/src/my_gtk_gl_scene_widget.h @@ -0,0 +1,27 @@ +#ifndef MY_GTK_GL_SCENE_H +#define MY_GTK_GL_SCENE_H + +#include "gtk_includes.h" + +// Class that will contain all the OpenGL logic for displaying the OpenCL computed data +// Implementation is kept in gpudataviz.cc (I want to keep interesting code part in this file) + +class MyGTKGLSceneWidget : public Gtk::DrawingArea, public Gtk::GL::Widget<MyGTKGLSceneWidget> +{ + public: + MyGTKGLSceneWidget(Glib::RefPtr<Gdk::GL::Config> &glconfig); + virtual ~MyGTKGLSceneWidget(); + + protected: + virtual void on_size_request(Gtk::Requisition* requisition); + virtual void on_realize(); + virtual bool on_configure_event(GdkEventConfigure* event); + virtual bool on_expose_event(GdkEventExpose* event); + virtual bool on_motion_notify_event (GdkEventMotion *event); + virtual bool on_button_press_event(GdkEventButton *event); + virtual bool on_button_release_event(GdkEventButton *event); + + bool do_mouse_logic(GdkEventType type, guint state, guint x, guint y); +}; + +#endif /*MY_GTK_GL_SCENE_H*/ |