lib/ewl_seeker.h
Go to the documentation of this file.00001
00002 #ifndef EWL_SEEKER_H
00003 #define EWL_SEEKER_H
00004
00005 #include "ewl_range.h"
00006
00031 #define EWL_SEEKER_TYPE "seeker"
00032
00037 #define EWL_SEEKER_IS(w) (ewl_widget_type_is(EWL_WIDGET(w), EWL_SEEKER_TYPE))
00038
00043 typedef struct Ewl_Seeker Ewl_Seeker;
00044
00049 #define EWL_SEEKER(seeker) ((Ewl_Seeker *) seeker)
00050
00054 struct Ewl_Seeker
00055 {
00056 Ewl_Range range;
00057 Ewl_Orientation orientation;
00058 Ewl_Widget *button;
00059 int dragstart;
00060 int autohide;
00061 Ecore_Timer *timer;
00062 double start_time;
00063 };
00064
00065 Ewl_Widget *ewl_seeker_new(void);
00066 Ewl_Widget *ewl_hseeker_new(void);
00067 Ewl_Widget *ewl_vseeker_new(void);
00068 int ewl_seeker_init(Ewl_Seeker *s);
00069
00070 void ewl_seeker_orientation_set(Ewl_Seeker *s, Ewl_Orientation o);
00071 Ewl_Orientation ewl_seeker_orientation_get(Ewl_Seeker *s);
00072
00073 void ewl_seeker_autohide_set(Ewl_Seeker *s, int v);
00074 int ewl_seeker_autohide_get(Ewl_Seeker *s);
00075
00076
00077
00078
00079 void ewl_seeker_cb_configure(Ewl_Widget *w, void *ev_data, void *user_data);
00080 void ewl_seeker_cb_button_mouse_down(Ewl_Widget *w, void *ev_data,
00081 void *user_data);
00082 void ewl_seeker_cb_button_mouse_up(Ewl_Widget *w, void *ev_data,
00083 void *user_data);
00084 void ewl_seeker_cb_mouse_move(Ewl_Widget *w, void *ev_data, void *user_data);
00085 void ewl_seeker_cb_mouse_down(Ewl_Widget *w, void *ev_data, void *user_data);
00086 void ewl_seeker_cb_mouse_up(Ewl_Widget *w, void *ev_data, void *user_data);
00087 void ewl_seeker_cb_key_down(Ewl_Widget *w, void *ev_data, void *user_data);
00088 void ewl_seeker_cb_child_show(Ewl_Container *p, Ewl_Widget * w);
00089
00094 #endif