lib/ewl_box.h
Go to the documentation of this file.00001
00002 #ifndef EWL_BOX_H
00003 #define EWL_BOX_H
00004
00027 #define EWL_BOX_TYPE "box"
00028
00033 #define EWL_BOX_IS(w) (ewl_widget_type_is(EWL_WIDGET(w), EWL_BOX_TYPE))
00034
00039 typedef struct Ewl_Box Ewl_Box;
00040
00045 #define EWL_BOX(box) ((Ewl_Box *) box)
00046
00055 struct Ewl_Box
00056 {
00057 Ewl_Container container;
00059 Ewl_Orientation orientation;
00060 int spacing;
00062 unsigned int homogeneous;
00063 };
00064
00065 Ewl_Widget *ewl_box_new(void);
00066 Ewl_Widget *ewl_hbox_new(void);
00067 Ewl_Widget *ewl_vbox_new(void);
00068 int ewl_box_init(Ewl_Box *box);
00069 void ewl_box_orientation_set(Ewl_Box *b, Ewl_Orientation o);
00070 Ewl_Orientation ewl_box_orientation_get(Ewl_Box *b);
00071 void ewl_box_spacing_set(Ewl_Box *b, int spacing);
00072 void ewl_box_homogeneous_set(Ewl_Box *b, unsigned int h);
00073 unsigned int ewl_box_homogeneous_get(Ewl_Box *b);
00074
00075
00076
00077
00078 void ewl_box_cb_child_resize(Ewl_Container *c, Ewl_Widget *w, int size,
00079 Ewl_Orientation o);
00080 void ewl_box_cb_child_homogeneous_resize(Ewl_Container *c,
00081 Ewl_Widget *w, int size, Ewl_Orientation o);
00082 void ewl_box_cb_child_show(Ewl_Container *c, Ewl_Widget *w);
00083 void ewl_box_cb_child_hide(Ewl_Container *c, Ewl_Widget *w);
00084 void ewl_box_cb_child_homogeneous_show(Ewl_Container *c, Ewl_Widget *w);
00085
00086 void ewl_box_cb_configure(Ewl_Widget *w, void *ev_data, void *user_data);
00087 void ewl_box_cb_configure_homogeneous(Ewl_Widget *w, void *ev_data,
00088 void *user_data);
00089
00094 #endif