From: <enl...@li...> - 2001-08-17 18:39:27
|
Enlightenment CVS committal Author : rbdpngn Project : e17 Module : libs/ewl Dir : e17/libs/ewl/src Modified Files: Ewl.h Makefile.am ewl_box.c ewl_box.h ewl_button.c ewl_button.h ewl_callback.c ewl_callback.h ewl_checkbutton.c ewl_checkbutton.h ewl_config.c ewl_container.c ewl_container.h ewl_debug.h ewl_entry.c ewl_entry.h ewl_enums.h ewl_events.c ewl_events.h ewl_fx.c ewl_fx.h ewl_image.c ewl_image.h ewl_list.c ewl_list.h ewl_macros.h ewl_misc.c ewl_misc.h ewl_object.c ewl_object.h ewl_radiobutton.c ewl_radiobutton.h ewl_seeker.c ewl_seeker.h ewl_spinner.c ewl_spinner.h ewl_table.c ewl_table.h ewl_text.c ewl_text.h ewl_theme.c ewl_widget.c ewl_widget.h ewl_window.c ewl_window.h getopt.c getopt.h getopt1.c Log Message: Some major changes to the object heirarchy, as well as the start of using etox for text handling. There are still some major show-stopping bugs outstanding, I don't recommend using this yet. Expect lots of bug fixes coming down the line soon. =================================================================== RCS file: /cvsroot/enlightenment/e17/libs/ewl/src/Ewl.h,v retrieving revision 1.8 retrieving revision 1.9 diff -u -3 -r1.8 -r1.9 --- Ewl.h 2001/07/27 13:29:18 1.8 +++ Ewl.h 2001/08/17 18:39:25 1.9 @@ -2,6 +2,7 @@ #include <Ecore.h> #include <Edb.h> #include <Evas.h> +#include <Etox.h> #define LIBRARY_NAME "EWL" #include <Ewd.h> =================================================================== RCS file: /cvsroot/enlightenment/e17/libs/ewl/src/Makefile.am,v retrieving revision 1.10 retrieving revision 1.11 diff -u -3 -r1.10 -r1.11 --- Makefile.am 2001/08/10 10:10:49 1.10 +++ Makefile.am 2001/08/17 18:39:25 1.11 @@ -1,6 +1,6 @@ ## Process this file with automake to produce Makefile.in -INCLUDES = @ebits_cflags@ @ecore_cflags@ @edb_cflags@ @evas_cflags@ @ewd_cflags@ @imlib2_cflags@ +INCLUDES = @ebits_cflags@ @ecore_cflags@ @edb_cflags@ @evas_cflags@ @etox_cflags@ @imlib2_cflags@ lib_LTLIBRARIES = libewl.la @@ -58,5 +58,5 @@ getopt.c \ getopt1.c -libewl_la_LIBADD = @ebits_libs@ @ecore_libs@ @edb_libs@ @evas_libs@ @ewd_libs@ @imlib2_libs@ -lm +libewl_la_LIBADD = @ebits_libs@ @ecore_libs@ @edb_libs@ @evas_libs@ @etox_libs@ @imlib2_libs@ -lm libewl_la_LDFLAGS = -version-info 0:0:0 =================================================================== RCS file: /cvsroot/enlightenment/e17/libs/ewl/src/ewl_box.c,v retrieving revision 1.11 retrieving revision 1.12 diff -u -3 -r1.11 -r1.12 --- ewl_box.c 2001/07/30 00:11:31 1.11 +++ ewl_box.c 2001/08/17 18:39:25 1.12 @@ -3,32 +3,24 @@ static void __ewl_box_init(Ewl_Box * b, Ewl_Orientation o); -static void __ewl_box_realize(Ewl_Widget * w, void *ev_data, void *user_data); +static void __ewl_box_realize(Ewl_Widget * w, void *ev_data, + void *user_data); static void __ewl_box_show(Ewl_Widget * w, void *ev_data, void *user_data); static void __ewl_box_hide(Ewl_Widget * w, void *ev_data, void *user_data); -static void __ewl_box_destroy(Ewl_Widget * w, void *ev_data, void *user_data); +static void __ewl_box_destroy(Ewl_Widget * w, void *ev_data, + void *user_data); static void __ewl_box_destroy_recursive(Ewl_Widget * w, void *ev_data, void *user_data); static void __ewl_box_theme_update(Ewl_Widget * w, void *ev_data, void *user_data); -static void __ewl_hbox_configure(Ewl_Widget * w, void *ev_data, - void *user_data); -static void __ewl_hbox_configure_gfx(Ewl_Widget * w); +static void __ewl_box_configure(Ewl_Widget * w, void *ev_data, + void *user_data); +static int __ewl_box_adjust(Ewl_Widget * w); +static void __ewl_box_configure_gfx(Ewl_Widget * w); static void __ewl_hbox_configure_children(Ewl_Widget * w); -static Ewd_List *__ewl_hbox_configure_normal(Ewl_Widget * w, int *rh); -static void __ewl_hbox_configure_fillers(Ewl_Widget * w, Ewd_List * f, - int rh); -static void __ewl_hbox_layout_children(Ewl_Widget * w); - -static void __ewl_vbox_configure(Ewl_Widget * w, void *ev_data, - void *user_data); -static void __ewl_vbox_configure_gfx(Ewl_Widget * w); + static void __ewl_vbox_configure_children(Ewl_Widget * w); -static Ewd_List *__ewl_vbox_configure_normal(Ewl_Widget * w, int *rw); -static void __ewl_vbox_configure_fillers(Ewl_Widget * w, Ewd_List * f, - int rw); -static void __ewl_vbox_layout_children(Ewl_Widget * w); /* * Create and initialize a new box container with the specified orientation @@ -64,8 +56,8 @@ * dimensions */ memset(b, 0, sizeof(Ewl_Box)); - ewl_container_init(EWL_CONTAINER(b), EWL_WIDGET_BOX, 10, 10, - 2048, 2048); + ewl_container_init(EWL_CONTAINER(b), 10, 10, EWL_FILL_POLICY_FILL, + EWL_ALIGNMENT_CENTER); w = EWL_WIDGET(b); @@ -74,20 +66,18 @@ /* * Now attach callbacks that will be executed when events occur */ - ewl_callback_append(w, EWL_CALLBACK_REALIZE, __ewl_box_realize, NULL); + ewl_callback_append(w, EWL_CALLBACK_REALIZE, __ewl_box_realize, + NULL); ewl_callback_append(w, EWL_CALLBACK_SHOW, __ewl_box_show, NULL); ewl_callback_append(w, EWL_CALLBACK_HIDE, __ewl_box_hide, NULL); - ewl_callback_append(w, EWL_CALLBACK_DESTROY, __ewl_box_destroy, NULL); + ewl_callback_append(w, EWL_CALLBACK_DESTROY, __ewl_box_destroy, + NULL); ewl_callback_append(w, EWL_CALLBACK_DESTROY_RECURSIVE, __ewl_box_destroy_recursive, NULL); ewl_callback_append(w, EWL_CALLBACK_THEME_UPDATE, __ewl_box_theme_update, NULL); - if (o == EWL_ORIENTATION_HORIZONTAL) - ewl_callback_append(w, EWL_CALLBACK_CONFIGURE, - __ewl_hbox_configure, NULL); - else - ewl_callback_append(w, EWL_CALLBACK_CONFIGURE, - __ewl_vbox_configure, NULL); + ewl_callback_append(w, EWL_CALLBACK_CONFIGURE, __ewl_box_configure, + NULL); /* * Set the box's appropriate orientation @@ -100,14 +90,14 @@ * Change the specified box's orientation */ void -ewl_box_set_orientation(Ewl_Widget * w, Ewl_Orientation o) +ewl_box_set_orientation(Ewl_Box * b, Ewl_Orientation o) { - Ewl_Box *b; + Ewl_Widget *w; DENTER_FUNCTION; - DCHECK_PARAM_PTR("w", w); + DCHECK_PARAM_PTR("b", b); - b = EWL_BOX(w); + w = EWL_WIDGET(b); /* * Set the orientation and reconfigure the widget so that child @@ -118,15 +108,6 @@ b->orientation = o; - ewl_callback_del_type(w, EWL_CALLBACK_CONFIGURE); - - if (b->orientation == EWL_ORIENTATION_HORIZONTAL) - ewl_callback_append(w, EWL_CALLBACK_CONFIGURE, - __ewl_hbox_configure, NULL); - else - ewl_callback_append(w, EWL_CALLBACK_CONFIGURE, - __ewl_vbox_configure, NULL); - ewl_widget_configure(w); DLEAVE_FUNCTION; @@ -136,14 +117,14 @@ * Adjust the spacing between the objects in the box */ void -ewl_box_set_spacing(Ewl_Widget * w, unsigned int s) +ewl_box_set_spacing(Ewl_Box * b, unsigned int s) { - Ewl_Box *b; + Ewl_Widget *w; DENTER_FUNCTION; - DCHECK_PARAM_PTR("w", w); + DCHECK_PARAM_PTR("b", b); - b = EWL_BOX(w); + w = EWL_WIDGET(b); b->spacing = s; @@ -152,64 +133,6 @@ DLEAVE_FUNCTION; } -void -ewl_box_append_child(Ewl_Widget * w, Ewl_Widget * c, Ewl_Fill_Policy fp, - Ewl_Alignment a, int x_padding, int y_padding) -{ - Ewl_Box_Child *bc; - - DENTER_FUNCTION; - DCHECK_PARAM_PTR("w", w); - DCHECK_PARAM_PTR("c", c); - - bc = NEW(Ewl_Box_Child, 1); - - bc->widget = c; - bc->alignment = a; - bc->fill_policy = fp; - bc->x_padding = x_padding; - bc->y_padding = y_padding; - - c->evas = w->evas; - c->evas_window = w->evas_window; - c->parent = w; - - LAYER(c) = LAYER(w) + 1; - - ewd_list_append(EWL_CONTAINER(w)->children, bc); - - DLEAVE_FUNCTION; -} - -void -ewl_box_prepend_child(Ewl_Widget * w, Ewl_Widget * c, Ewl_Fill_Policy fp, - Ewl_Alignment a, int x_padding, int y_padding) -{ - Ewl_Box_Child *bc; - - DENTER_FUNCTION; - DCHECK_PARAM_PTR("w", w); - DCHECK_PARAM_PTR("c", c); - - bc = NEW(Ewl_Box_Child, 1); - - bc->widget = c; - bc->alignment = a; - bc->fill_policy = fp; - bc->x_padding = x_padding; - bc->y_padding = y_padding; - - c->evas = w->evas; - c->evas_window = w->evas_window; - c->parent = w; - - LAYER(c) = LAYER(w) + 1; - - ewd_list_prepend(EWL_CONTAINER(w)->children, bc); - - DLEAVE_FUNCTION; -} - static void __ewl_box_realize(Ewl_Widget * w, void *ev_data, void *user_data) { @@ -278,28 +201,25 @@ b = EWL_BOX(w); - if (w->ebits_object) - { - ebits_hide(w->ebits_object); - ebits_unset_clip(w->ebits_object); - ebits_free(w->ebits_object); - } - - if (EWL_CONTAINER(w)->clip_box) - { - evas_hide(w->evas, EWL_CONTAINER(w)->clip_box); - evas_unset_clip(w->evas, EWL_CONTAINER(w)->clip_box); - evas_del_object(w->evas, EWL_CONTAINER(w)->clip_box); - } - - - if (w->fx_clip_box) - { - evas_hide(w->evas, w->fx_clip_box); - evas_unset_clip(w->evas, w->fx_clip_box); - evas_del_object(w->evas, w->fx_clip_box); - } + if (w->ebits_object) { + ebits_hide(w->ebits_object); + ebits_unset_clip(w->ebits_object); + ebits_free(w->ebits_object); + } + + if (EWL_CONTAINER(w)->clip_box) { + evas_hide(w->evas, EWL_CONTAINER(w)->clip_box); + evas_unset_clip(w->evas, EWL_CONTAINER(w)->clip_box); + evas_del_object(w->evas, EWL_CONTAINER(w)->clip_box); + } + + if (w->fx_clip_box) { + evas_hide(w->evas, w->fx_clip_box); + evas_unset_clip(w->evas, w->fx_clip_box); + evas_del_object(w->evas, w->fx_clip_box); + } + ewl_callback_clear(w); ewl_theme_deinit_widget(w); @@ -320,7 +240,8 @@ if (!EWL_CONTAINER(w)->children) DLEAVE_FUNCTION; - while ((c = ewd_list_remove_last(EWL_CONTAINER(w)->children)) != NULL) + while ((c = + ewd_list_remove_last(EWL_CONTAINER(w)->children)) != NULL) ewl_widget_destroy_recursive(c); DLEAVE_FUNCTION; @@ -360,48 +281,44 @@ /* * Destroy old image (if any) */ - if (w->ebits_object) - { - ebits_hide(w->ebits_object); - ebits_unset_clip(w->ebits_object); - ebits_free(w->ebits_object); - } + if (w->ebits_object) { + ebits_hide(w->ebits_object); + ebits_unset_clip(w->ebits_object); + ebits_free(w->ebits_object); + } /* * If the graphics aren't to be shown, just jump to the end for * cleanup */ - if (v && !strncasecmp(v, "yes", 3)) - { - if (b->orientation == EWL_ORIENTATION_HORIZONTAL) - i = ewl_theme_image_get(w, - "/appearance/box/horizontal/base"); - else if (b->orientation == EWL_ORIENTATION_VERTICAL) - i = ewl_theme_image_get(w, - "/appearance/box/vertical/base"); - - if (i) - { - w->ebits_object = ebits_load(i); - FREE(i); - - /* - * Set all the clipping and layering for the image - */ - if (w->ebits_object) - { - ebits_add_to_evas(w->ebits_object, - w->evas); - ebits_set_layer(w->ebits_object, - EWL_OBJECT(w)->layer); - ebits_set_clip(w->ebits_object, - w->fx_clip_box); - - ebits_show(w->ebits_object); - } - } + if (v && !strncasecmp(v, "yes", 3)) { + if (b->orientation == EWL_ORIENTATION_HORIZONTAL) + i = ewl_theme_image_get(w, + "/appearance/box/horizontal/base"); + else if (b->orientation == EWL_ORIENTATION_VERTICAL) + i = ewl_theme_image_get(w, + "/appearance/box/vertical/base"); + + if (i) { + w->ebits_object = ebits_load(i); + FREE(i); + + /* + * Set all the clipping and layering for the image + */ + if (w->ebits_object) { + ebits_add_to_evas(w->ebits_object, + w->evas); + ebits_set_layer(w->ebits_object, + EWL_OBJECT(w)->layer); + ebits_set_clip(w->ebits_object, + w->fx_clip_box); + + ebits_show(w->ebits_object); + } + } - } + } IF_FREE(v); @@ -409,477 +326,522 @@ * Finally configure the widget to update changes */ ewl_widget_configure(w); - -} - -static void -__ewl_hbox_configure(Ewl_Widget * w, void *ev_data, void *user_data) -{ - DENTER_FUNCTION; - DCHECK_PARAM_PTR("w", w); - - __ewl_hbox_configure_children(w); - __ewl_hbox_configure_gfx(w); - - ewl_object_set_current_geometry(EWL_OBJECT(w), - REQUEST_X(w), REQUEST_Y(w), - REQUEST_W(w), REQUEST_H(w)); - - DLEAVE_FUNCTION; } static void -__ewl_hbox_configure_gfx(Ewl_Widget * w) +__ewl_box_configure(Ewl_Widget * w, void *ev_data, void *user_data) { - int l, r, t, b; - DENTER_FUNCTION; DCHECK_PARAM_PTR("w", w); - l = 0; - r = 0; - t = 0; - b = 0; - /* - * If the widget has been realized, then the graphics need to be - * updated to reflect the changes + * Adjust the box so that it has the correct minimum size for it's + * contents. If it gets adjusted, then we need to let it's parent + * know. The parent will call configure on this widget again, so we + * need to return here. */ - if (REALIZED(w)) - { - if (CUSTOM_W(w)) - REQUEST_W(w) = CUSTOM_W(w); - - if (CUSTOM_H(w)) - REQUEST_H(w) = CUSTOM_H(w); - - /* - * Adjust the size and position of the ebits object - */ - if (w->ebits_object) - { - ebits_move(w->ebits_object, REQUEST_X(w), - REQUEST_Y(w)); - ebits_resize(w->ebits_object, REQUEST_W(w), - REQUEST_H(w)); - } - - if (w->fx_clip_box) - { - evas_move(w->evas, w->fx_clip_box, REQUEST_X(w), - REQUEST_Y(w)); - evas_resize(w->evas, w->fx_clip_box, REQUEST_W(w), - REQUEST_H(w)); - } - - /* - * Move the widgets clip box to the appropriate size and - * place - */ - if (EWL_CONTAINER(w)->clip_box) - { - evas_move(w->evas, EWL_CONTAINER(w)->clip_box, - REQUEST_X(w) + l, REQUEST_Y(w) + t); - evas_resize(w->evas, EWL_CONTAINER(w)->clip_box, - REQUEST_W(w) - (l + r), - REQUEST_H(w) - (t + b)); - } - } - - DLEAVE_FUNCTION; -} - -static void -__ewl_hbox_configure_children(Ewl_Widget * w) -{ - Ewd_List *f; - int rh; - - DENTER_FUNCTION; - DCHECK_PARAM_PTR("w", w); - - f = __ewl_hbox_configure_normal(w, &rh); + if (__ewl_box_adjust(w)) { + ewl_widget_configure(w->parent); + return; + } - if (f) - __ewl_hbox_configure_fillers(w, f, rh); + ewl_object_apply_requested(EWL_OBJECT(w)); - __ewl_hbox_layout_children(w); + if (EWL_BOX(w)->orientation == EWL_ORIENTATION_VERTICAL) { + __ewl_vbox_configure_children(w); + } else { + __ewl_hbox_configure_children(w); + } + __ewl_box_configure_gfx(w); DLEAVE_FUNCTION; } -static Ewd_List * -__ewl_hbox_configure_normal(Ewl_Widget * w, int *rh) +/* + * This function adjusts the minimum size of the box to require that it + * is at least as big as its children. + */ +static int +__ewl_box_adjust(Ewl_Widget * w) { - Ewd_List *f = NULL; - Ewl_Box *box; - Ewl_Box_Child *c; - int l = 0, r = 0, t = 0, b = 0; - - DENTER_FUNCTION; - DCHECK_PARAM_PTR_RET("w", w, NULL); - - box = EWL_BOX(w); - - if (w->ebits_object) - ebits_get_insets(w->ebits_object, &l, &r, &t, &b); + Ewl_Widget *c; + int min_w = 0, min_h = 0; - *rh = REQUEST_H(w) - t - b; + DCHECK_PARAM_PTR_RET("w", w, FALSE); ewd_list_goto_first(EWL_CONTAINER(w)->children); + while ((c = ewd_list_next(EWL_CONTAINER(w)->children))) { - while ((c = ewd_list_next(EWL_CONTAINER(w)->children)) != NULL) - { - Ewl_Widget *cw; - - cw = c->widget; - - if (c->fill_policy & EWL_FILL_POLICY_FILL) - { - if (!f) - f = ewd_list_new(); - - ewd_list_append(f, c->widget); - - continue; - } - - if (CUSTOM_W(cw) != -1) - REQUEST_W(cw) = CUSTOM_W(cw); - else if (MAXIMUM_W(cw) > CURRENT_W(w)) - REQUEST_W(cw) = MAXIMUM_W(w) - l - r; - else if (MINIMUM_W(cw) > CURRENT_W(cw)) - REQUEST_W(cw) = MINIMUM_W(cw); - else - REQUEST_W(cw) = CURRENT_W(cw); - - if (CUSTOM_H(cw) != -1) - REQUEST_H(cw) = CUSTOM_H(cw); - else if (MAXIMUM_H(cw) < CURRENT_H(cw)) - REQUEST_H(cw) = MAXIMUM_H(cw); - else if (MINIMUM_H(cw) > CURRENT_H(cw)) - REQUEST_H(cw) = MINIMUM_H(cw); - else - REQUEST_H(cw) = CURRENT_H(cw); + /* + * A vertical box will sum the minimum heights of it's children + * and keep track of the largest minimum width, and the + * horizontal will do the opposite. + */ + if (EWL_BOX(w)->orientation == EWL_ORIENTATION_VERTICAL) { + if (min_w < MIN_W(c)) + min_w = MIN_W(c); + min_h += MIN_H(c) + EWL_BOX(w)->spacing; + } else { + min_w += MIN_W(c) + EWL_BOX(w)->spacing; + if (min_h < MIN_H(c)) + min_h = MIN_H(c); + } + } - *rh -= REQUEST_H(cw) + c->y_padding + box->spacing; - } + /* + * Apply the new calculated minimum sizes + */ + if (min_w > MIN_W(w) || min_h > MIN_H(w)) { + ewl_object_set_minimum_size(EWL_OBJECT(w), min_w, min_h); - return f; + return TRUE; + } - DLEAVE_FUNCTION; + return FALSE; } static void -__ewl_hbox_configure_fillers(Ewl_Widget * w, Ewd_List * f, int rh) +__ewl_box_configure_gfx(Ewl_Widget * w) { - Ewl_Box *b; - Ewl_Widget *c; - int nh; - DENTER_FUNCTION; DCHECK_PARAM_PTR("w", w); - b = EWL_BOX(w); + /* + * If the widget has been realized, then the graphics need to be + * updated to reflect the changes + */ + if (!REALIZED(w)) + DRETURN; - ewd_list_goto_first(f); + /* + * Adjust the size and position of the ebits object + */ + if (w->ebits_object) { + ebits_move(w->ebits_object, CURRENT_X(w), CURRENT_Y(w)); + ebits_resize(w->ebits_object, CURRENT_W(w), CURRENT_H(w)); + } - nh = (rh - - ((ewd_list_nodes(f) - 1) * b->spacing)) / ewd_list_nodes(f); + if (w->fx_clip_box) { + evas_move(w->evas, w->fx_clip_box, CURRENT_X(w), + CURRENT_Y(w)); + evas_resize(w->evas, w->fx_clip_box, CURRENT_W(w), + CURRENT_H(w)); + } - while ((c = ewd_list_next(f)) != NULL) - { - if (MAXIMUM_W(c) <= REQUEST_W(w)) - REQUEST_W(c) = REQUEST_W(w); - else - REQUEST_W(c) = MAXIMUM_W(c); - - if (MAXIMUM_H(c) <= nh) - REQUEST_H(c) = MAXIMUM_H(c); - else - REQUEST_H(c) = nh; - } + /* + * Move the widgets clip box to the appropriate size and + * place + */ + if (EWL_CONTAINER(w)->clip_box) { + evas_move(w->evas, EWL_CONTAINER(w)->clip_box, + CURRENT_X(w), CURRENT_Y(w)); + evas_resize(w->evas, EWL_CONTAINER(w)->clip_box, + CURRENT_W(w), CURRENT_H(w)); + } DLEAVE_FUNCTION; } static void -__ewl_hbox_layout_children(Ewl_Widget * w) +__ewl_hbox_configure_children(Ewl_Widget * w) { - Ewl_Box *box; - Ewl_Box_Child *c; - int y, l = 0, r = 0, t = 0, b = 0; + Ewl_Widget *c; + + /* + * Lists for determining the alignment of children + */ + Ewd_List *ll = NULL, *cl = NULL, *rl = NULL; + + /* + * Temporary ints for placing the next child in a specifies alignment + */ + int left_x = 0, right_x = 0, center_x = 0; + int top_y = 0, bottom_y = 0, center_y = 0; + + int rem_w, fillers = 0, center_size = 0; DENTER_FUNCTION; DCHECK_PARAM_PTR("w", w); - box = EWL_BOX(w); + if (ewd_list_nodes(EWL_CONTAINER(w)->children) == 0) + DRETURN; if (w->ebits_object) - ebits_get_insets(w->ebits_object, &l, &r, &t, &b); - - y = REQUEST_Y(w) + t; - - ewd_list_goto_first(EWL_CONTAINER(w)->children); + ebits_get_insets(w->ebits_object, &left_x, &top_y, + &right_x, &bottom_y); - while ((c = ewd_list_next(EWL_CONTAINER(w)->children)) != NULL) - { - if (c->alignment == EWL_ALIGNMENT_LEFT) - { - REQUEST_X(c->widget) = - REQUEST_X(w) + l + c->x_padding; - } - else if (c->alignment == EWL_ALIGNMENT_CENTER) - { - REQUEST_X(c->widget) = REQUEST_X(w); - REQUEST_X(c->widget) += - (REQUEST_W(w) / 2) - - (REQUEST_W(c->widget) - l - r) / 2 + - c->x_padding; - } - else if (c->alignment == EWL_ALIGNMENT_RIGHT) - { - REQUEST_X(c->widget) = - (REQUEST_X(w) + REQUEST_W(w)) - - REQUEST_W(c->widget) - r + c->x_padding; - } + /* + * Set up some temporary variables for layout and calculate starting + * positions from the ebits insets + */ + rem_w = CURRENT_W(w); + left_x += CURRENT_X(w); + right_x = CURRENT_X(w) + CURRENT_W(w) - right_x; + center_x = left_x + ((right_x - left_x) / 2); - REQUEST_Y(c->widget) = y + box->spacing + c->y_padding; - y += REQUEST_H(c->widget) + +box->spacing + c->y_padding; + top_y += CURRENT_Y(w); + bottom_y = CURRENT_Y(w) + CURRENT_H(w) - bottom_y; + center_y = top_y + ((bottom_y - top_y) / 2); - ewl_widget_configure(c->widget); - } + /* + * Sort the list by position order to allow for easy placement + */ + ewd_list_goto_first(EWL_CONTAINER(w)->children); + while ((c = ewd_list_next(EWL_CONTAINER(w)->children))) { - DLEAVE_FUNCTION; -} + /* + * Break up the children into one of three lists depending on + * alignment + */ + if (EWL_OBJECT(c)->align & EWL_ALIGNMENT_LEFT) { + if (!ll) + ll = ewd_dlist_new(); + ewd_list_append(ll, c); + } else if (EWL_OBJECT(c)->align & EWL_ALIGNMENT_RIGHT) { + if (!rl) + rl = ewd_dlist_new(); + ewd_list_append(rl, c); + } else { + if (!cl) + cl = ewd_dlist_new(); + ewd_list_append(cl, c); + center_size += CURRENT_W(c); + } + + if (EWL_OBJECT(c)->fill == EWL_FILL_POLICY_FILL) + fillers++; + + /* + * Since this is a horizontal box, we can set the vertical + * positions the first time through the function. + */ + if (CURRENT_H(c) > bottom_y - top_y) + REQUEST_H(c) = bottom_y - top_y; + + if (EWL_OBJECT(c)->align & EWL_ALIGNMENT_TOP) + REQUEST_Y(c) = top_y; + else if (EWL_OBJECT(c)->align & EWL_ALIGNMENT_BOTTOM) + REQUEST_Y(c) = bottom_y - REQUEST_H(c); + else + REQUEST_Y(c) = center_y - (REQUEST_H(c) / 2); + rem_w -= CURRENT_W(c); + } + /* + * Traverse the left list to determine the position of the widgets + * with a left alignment policy + */ + if (ll) + ewd_list_goto_first(ll); + while (ll && (c = ewd_list_next(ll))) { + + /* + * If we are short on space start setting widgets down to + * their minimum size. Fillers should have their size + * increased by any available space. + */ + REQUEST_X(c) = left_x; + if (rem_w < 0) { + REQUEST_W(c) = MIN_W(c); + left_x += MIN_W(c) + EWL_BOX(w)->spacing; + rem_w += CURRENT_W(c) - MIN_W(c); + } else if (EWL_OBJECT(c)->fill == EWL_FILL_POLICY_FILL) { + REQUEST_W(c) += rem_w / fillers; + left_x += REQUEST_W(c) + EWL_BOX(w)->spacing; + rem_w -= rem_w / fillers; + fillers--; + } else + left_x += CURRENT_W(c) + EWL_BOX(w)->spacing; -static void -__ewl_vbox_configure(Ewl_Widget * w, void *ev_data, void *user_data) -{ - DENTER_FUNCTION; - DCHECK_PARAM_PTR("w", w); + ewl_widget_configure(c); - __ewl_vbox_configure_children(w); - __ewl_vbox_configure_gfx(w); + } - ewl_object_set_current_geometry(EWL_OBJECT(w), - REQUEST_X(w), REQUEST_Y(w), - REQUEST_W(w), REQUEST_H(w)); + if (ll) { + ewd_list_clear(ll); + ewd_list_destroy(ll); + } - DLEAVE_FUNCTION; -} + /* + * Traverse the right list to determine the position of the widgets + * with a right alignment policy + */ + if (rl) + ewd_list_goto_first(rl); + while (rl && (c = ewd_list_next(rl))) { + + /* + * If we are short on space start setting widgets down to + * their minimum size. Fillers should have their size + * increased by any available space. + */ + if (rem_w < 0) { + REQUEST_W(c) = MIN_W(c); + right_x -= MIN_W(c) + EWL_BOX(w)->spacing; + rem_w += CURRENT_W(c) - MIN_W(c); + } else if (EWL_OBJECT(c)->fill == EWL_FILL_POLICY_FILL) { + REQUEST_W(c) += rem_w / fillers; + right_x -= REQUEST_W(c) + EWL_BOX(w)->spacing; + rem_w -= rem_w / fillers; + fillers--; + } else + right_x -= CURRENT_W(c) + EWL_BOX(w)->spacing; -static void -__ewl_vbox_configure_gfx(Ewl_Widget * w) -{ - int l, r, t, b; + REQUEST_X(c) = right_x; - DENTER_FUNCTION; - DCHECK_PARAM_PTR("w", w); + ewl_widget_configure(c); + } - l = 0; - r = 0; - t = 0; - b = 0; + if (rl) { + ewd_list_clear(rl); + ewd_list_destroy(rl); + } /* - * If the widget has been realized, then the graphics need to be - * updated to reflect the changes + * Traverse the center list to determine the position of the widgets + * with a center alignment policy */ - if (REALIZED(w)) - { - /* - * Adjust the size and position of the ebits object - */ - if (w->ebits_object) - { - ebits_move(w->ebits_object, REQUEST_X(w), - REQUEST_Y(w)); - ebits_resize(w->ebits_object, REQUEST_W(w), - REQUEST_H(w)); - } - - if (w->fx_clip_box) - { - evas_move(w->evas, w->fx_clip_box, REQUEST_X(w), - REQUEST_Y(w)); - evas_resize(w->evas, w->fx_clip_box, REQUEST_W(w), - REQUEST_H(w)); - } - - /* - * Move the widgets clip box to the appropriate size and - * place - */ - if (EWL_CONTAINER(w)->clip_box) - { - evas_move(w->evas, EWL_CONTAINER(w)->clip_box, - REQUEST_X(w) + l, REQUEST_Y(w) + t); - evas_resize(w->evas, EWL_CONTAINER(w)->clip_box, - REQUEST_W(w) - (l + r), - REQUEST_H(w) - (t + b)); - } - } + if (cl) { + ewd_list_goto_first(cl); - DLEAVE_FUNCTION; -} + if (fillers > 0) + center_x = left_x; + else + center_x = + left_x + ((right_x - left_x) - center_size) + / 2; + } -static void -__ewl_vbox_configure_children(Ewl_Widget * w) -{ - Ewd_List *f; - int rw; + while (cl && (c = ewd_list_next(cl))) { - DENTER_FUNCTION; - DCHECK_PARAM_PTR("w", w); + /* + * If we are short on space start setting widgets down to + * their minimum size. Fillers should have their size + * increased by any available space. + */ + REQUEST_X(c) = center_x; + if (rem_w < 0) { + REQUEST_W(c) = MIN_W(c); + center_x += MIN_W(c) + EWL_BOX(w)->spacing; + rem_w += CURRENT_W(c) - MIN_W(c); + } else if (EWL_OBJECT(c)->fill == EWL_FILL_POLICY_FILL) { + REQUEST_W(c) += rem_w / fillers; + center_x += REQUEST_W(c) + EWL_BOX(w)->spacing; + rem_w -= rem_w / fillers; + fillers--; + } else + center_x += CURRENT_W(c) + EWL_BOX(w)->spacing; - f = __ewl_vbox_configure_normal(w, &rw); - - if (f) - __ewl_vbox_configure_fillers(w, f, rw); + ewl_widget_configure(c); + } - __ewl_vbox_layout_children(w); + if (cl) { + ewd_list_clear(cl); + ewd_list_destroy(cl); + } DLEAVE_FUNCTION; } -static Ewd_List * -__ewl_vbox_configure_normal(Ewl_Widget * w, int *rw) +static void +__ewl_vbox_configure_children(Ewl_Widget * w) { - Ewd_List *f = NULL; - Ewl_Box *box; - Ewl_Box_Child *c; - int l = 0, r = 0, t = 0, b = 0; - - DENTER_FUNCTION; - DCHECK_PARAM_PTR_RET("w", w, NULL); + Ewl_Widget *c; - box = EWL_BOX(w); + /* + * Lists for determining the alignment of children + */ + Ewd_List *tl = NULL, *cl = NULL, *bl = NULL; - if (w->ebits_object) - ebits_get_insets(w->ebits_object, &l, &r, &t, &b); + /* + * Temporary ints for placing the next child in a specifies alignment + */ + int left_x = 0, right_x = 0, center_x = 0; + int top_y = 0, bottom_y = 0, center_y = 0; - *rw = REQUEST_H(w) - l - r; + int rem_h, fillers = 0, center_size = 0; - ewd_list_goto_first(EWL_CONTAINER(w)->children); + DENTER_FUNCTION; + DCHECK_PARAM_PTR("w", w); - while ((c = ewd_list_next(EWL_CONTAINER(w)->children)) != NULL) - { - Ewl_Widget *cw; - - cw = c->widget; - - if (c->fill_policy & EWL_FILL_POLICY_FILL) - { - if (!f) - f = ewd_list_new(); - - ewd_list_append(f, c->widget); - - continue; - } - - if (CUSTOM_H(cw) != -1) - REQUEST_H(cw) = CUSTOM_H(cw); - else if (MAXIMUM_H(cw) >= REQUEST_H(w)) - REQUEST_H(cw) = REQUEST_H(w) - t - b; - else - REQUEST_H(cw) = CURRENT_H(cw); - - if (CUSTOM_W(cw) != -1) - REQUEST_W(cw) = CUSTOM_W(cw); - else if (MINIMUM_W(cw) < CURRENT_W(cw)) - REQUEST_W(cw) = MINIMUM_W(cw); - else - REQUEST_W(cw) = CURRENT_W(cw); + if (ewd_list_nodes(EWL_CONTAINER(w)->children) == 0) + DRETURN; - *rw -= REQUEST_W(cw) + box->spacing + c->x_padding; - } + if (w->ebits_object) + ebits_get_insets(w->ebits_object, &left_x, &top_y, + &right_x, &bottom_y); - return f; + /* + * Set up some temporary variables for layout and calculate starting + * positions from the ebits insets + */ + rem_h = CURRENT_H(w); + top_y += CURRENT_Y(w); + bottom_y = CURRENT_Y(w) + CURRENT_H(w) - bottom_y; + center_y = top_y + ((bottom_y - top_y) / 2); - DLEAVE_FUNCTION; -} + left_x += CURRENT_X(w); + right_x = CURRENT_X(w) + CURRENT_W(w) - right_x; + center_x = left_x + ((right_x - left_x) / 2); -static void -__ewl_vbox_configure_fillers(Ewl_Widget * w, Ewd_List * f, int rw) -{ - Ewl_Box *box; - Ewl_Widget *c; - int nw, l = 0, r = 0, t = 0, b = 0; + /* + * Sort the list by position order to allow for easy placement + */ + ewd_list_goto_first(EWL_CONTAINER(w)->children); + while ((c = ewd_list_next(EWL_CONTAINER(w)->children))) { - DENTER_FUNCTION; - DCHECK_PARAM_PTR("w", w); + /* + * Break up the children into one of three lists depending on + * alignment + */ + if (EWL_OBJECT(c)->align & EWL_ALIGNMENT_TOP) { + if (!tl) + tl = ewd_dlist_new(); + ewd_list_append(tl, c); + } else if (EWL_OBJECT(c)->align & EWL_ALIGNMENT_BOTTOM) { + if (!bl) + bl = ewd_dlist_new(); + ewd_list_append(bl, c); + } else { + if (!cl) + cl = ewd_dlist_new(); + ewd_list_append(cl, c); + center_size += CURRENT_H(c); + } + + if (EWL_OBJECT(c)->fill == EWL_FILL_POLICY_FILL) + fillers++; + + /* + * Since this is a vertical box, we can set the horizontal + * positions the first time through the function. + */ + if (CURRENT_W(c) > right_x - left_x) + REQUEST_W(c) = right_x - left_x; + + if (EWL_OBJECT(c)->align & EWL_ALIGNMENT_LEFT) + REQUEST_X(c) = left_x; + else if (EWL_OBJECT(c)->align & EWL_ALIGNMENT_RIGHT) + REQUEST_X(c) = right_x - REQUEST_W(c); + else + REQUEST_X(c) = center_x - (REQUEST_W(c) / 2); - box = EWL_BOX(w); + rem_h -= CURRENT_H(c); + } - if (w->ebits_object) - ebits_get_insets(w->ebits_object, &l, &r, &t, &b); + /* + * Traverse the left list to determine the position of the widgets + * with a left alignment policy + */ + if (tl) + ewd_list_goto_first(tl); + while (tl && (c = ewd_list_next(tl))) { + + /* + * If we are short on space start setting widgets down to + * their minimum size. Fillers should have their size + * increased by any available space. + */ + REQUEST_Y(c) = top_y; + if (rem_h < 0) { + REQUEST_H(c) = MIN_H(c); + top_y += MIN_H(c); + rem_h += CURRENT_H(c) - MIN_H(c); + } else if (EWL_OBJECT(c)->fill == EWL_FILL_POLICY_FILL) { + REQUEST_Y(c) += rem_h / fillers; + top_y += REQUEST_H(c); + rem_h -= rem_h / fillers; + fillers--; + } else + top_y += CURRENT_H(c); - ewd_list_goto_first(f); + ewl_widget_configure(c); - nw = (rw - - (ewd_list_nodes(f) - 1) * box->spacing) / ewd_list_nodes(f); + } - while ((c = ewd_list_next(f)) != NULL) - { - if (MAXIMUM_H(c) <= REQUEST_H(w)) - REQUEST_H(c) = REQUEST_H(w) - t - b; - else - REQUEST_H(c) = MAXIMUM_H(c); - - if (MAXIMUM_W(c) <= nw) - REQUEST_W(c) = MAXIMUM_W(c); - else - REQUEST_W(c) = nw; - } + if (tl) { + ewd_list_clear(tl); + ewd_list_destroy(tl); + } - DLEAVE_FUNCTION; -} + /* + * Traverse the right list to determine the position of the widgets + * with a right alignment policy + */ + if (bl) + ewd_list_goto_first(bl); + while (bl && (c = ewd_list_next(bl))) { + + /* + * If we are short on space start setting widgets down to + * their minimum size. Fillers should have their size + * increased by any available space. + */ + if (rem_h < 0) { + REQUEST_H(c) = MIN_H(c); + bottom_y -= MIN_H(c); + rem_h += CURRENT_H(c) - MIN_H(c); + } else if (EWL_OBJECT(c)->fill == EWL_FILL_POLICY_FILL) { + REQUEST_H(c) += rem_h / fillers; + bottom_y -= REQUEST_H(c); + rem_h -= rem_h / fillers; + fillers--; + } else + bottom_y -= CURRENT_H(c); -static void -__ewl_vbox_layout_children(Ewl_Widget * w) -{ - Ewl_Box *box; - Ewl_Box_Child *c; - int x, l = 0, r = 0, t = 0, b = 0; + REQUEST_Y(c) = bottom_y; - DENTER_FUNCTION; - DCHECK_PARAM_PTR("w", w); + ewl_widget_configure(c); + } - box = EWL_BOX(w); + if (bl) { + ewd_list_clear(bl); + ewd_list_destroy(bl); + } - if (w->ebits_object) - ebits_get_insets(w->ebits_object, &l, &r, &t, &b); + /* + * Traverse the center list to determine the position of the widgets + * with a center alignment policy + */ + if (cl) { + ewd_list_goto_first(cl); - x = REQUEST_X(w) + l; + if (fillers > 0) + center_y = top_y; + else + center_y = + top_y + ((bottom_y - top_y) - center_size) + / 2; + } - ewd_list_goto_first(EWL_CONTAINER(w)->children); + while (cl && (c = ewd_list_next(cl))) { - while ((c = ewd_list_next(EWL_CONTAINER(w)->children)) != NULL) - { - if (c->alignment == EWL_ALIGNMENT_LEFT) - REQUEST_Y(c->widget) = - REQUEST_Y(w) + t + c->y_padding; - else if (c->alignment == EWL_ALIGNMENT_CENTER) - { - REQUEST_Y(c->widget) = REQUEST_Y(w); - REQUEST_Y(c->widget) += - (REQUEST_H(w) / 2) - - (REQUEST_H(c->widget) / 2) + c->y_padding; - } - else if (c->alignment == EWL_ALIGNMENT_RIGHT) - REQUEST_Y(c->widget) = - (REQUEST_Y(w) + REQUEST_H(w)) - - REQUEST_H(c->widget) - r + c->y_padding; + /* + * If we are short on space start setting widgets down to + * their minimum size. Fillers should have their size + * increased by any available space. + */ + REQUEST_Y(c) = center_y; + if (rem_h < 0) { + REQUEST_H(c) = MIN_H(c); + center_y += MIN_H(c); + rem_h += CURRENT_H(c) - MIN_H(c); + } else if (EWL_OBJECT(c)->fill == EWL_FILL_POLICY_FILL) { + REQUEST_H(c) += rem_h / fillers; + center_y += REQUEST_H(c); + rem_h -= rem_h / fillers; + fillers--; + } else + center_y += CURRENT_H(c); - REQUEST_X(c->widget) = x + box->spacing + c->x_padding; - x += REQUEST_W(c->widget) + box->spacing + c->x_padding; + ewl_widget_configure(c); + } - ewl_widget_configure(c->widget); - } + if (cl) { + ewd_list_clear(cl); + ewd_list_destroy(cl); + } DLEAVE_FUNCTION; } =================================================================== RCS file: /cvsroot/enlightenment/e17/libs/ewl/src/ewl_box.h,v retrieving revision 1.7 retrieving revision 1.8 diff -u -3 -r1.7 -r1.8 --- ewl_box.h 2001/07/29 21:24:51 1.7 +++ ewl_box.h 2001/08/17 18:39:25 1.8 @@ -12,8 +12,7 @@ typedef struct _ewl_box Ewl_Box; #define EWL_BOX(box) ((Ewl_Box *) box) -struct _ewl_box -{ +struct _ewl_box { Ewl_Container container; Ewl_Orientation orientation; unsigned int spacing; @@ -22,8 +21,7 @@ typedef struct _ewl_box_child Ewl_Box_Child; #define EWL_BOX_CHILD(child) ((Ewl_Box_Child *) child) -struct _ewl_box_child -{ +struct _ewl_box_child { Ewl_Widget *widget; Ewl_Alignment alignment; Ewl_Fill_Policy fill_policy; @@ -36,11 +34,11 @@ Ewl_Widget *ewl_box_new(Ewl_Orientation orientation); -void ewl_box_set_orientation(Ewl_Widget * w, Ewl_Orientation orientation); -void ewl_box_set_spacing(Ewl_Widget * w, unsigned int spacing); -void ewl_box_append_child(Ewl_Widget * w, Ewl_Widget * c, Ewl_Fill_Policy fp, +void ewl_box_set_orientation(Ewl_Box * w, Ewl_Orientation orientation); +void ewl_box_set_spacing(Ewl_Box * w, unsigned int spacing); +void ewl_box_append_child(Ewl_Box * w, Ewl_Widget * c, Ewl_Fill_Policy fp, Ewl_Alignment a, int x_padding, int y_padding); -void ewl_box_prepend_child(Ewl_Widget * w, Ewl_Widget * c, Ewl_Fill_Policy fp, +void ewl_box_prepend_child(Ewl_Box * w, Ewl_Widget * c, Ewl_Fill_Policy fp, Ewl_Alignment a, int x_padding, int y_padding); -#endif /* __EWL_BOX_H__ */ +#endif /* __EWL_BOX_H__ */ =================================================================== RCS file: /cvsroot/enlightenment/e17/libs/ewl/src/ewl_button.c,v retrieving revision 1.13 retrieving revision 1.14 diff -u -3 -r1.13 -r1.14 --- ewl_button.c 2001/07/30 00:11:31 1.13 +++ ewl_button.c 2001/08/17 18:39:25 1.14 @@ -12,8 +12,10 @@ static void __ewl_button_init(Ewl_Button * b, char *label); static void __ewl_button_realize(Ewl_Widget * w, void *ev_data, void *user_data); -static void __ewl_button_show(Ewl_Widget * w, void *ev_data, void *user_data); -static void __ewl_button_hide(Ewl_Widget * w, void *ev_data, void *user_data); +static void __ewl_button_show(Ewl_Widget * w, void *ev_data, + void *user_data); +static void __ewl_button_hide(Ewl_Widget * w, void *ev_data, + void *user_data); static void __ewl_button_destroy(Ewl_Widget * w, void *ev_data, void *user_data); static void __ewl_button_destroy_recursive(Ewl_Widget * w, void *ev_data, @@ -46,9 +48,6 @@ __ewl_button_init(b, l); - if (b->label) - b->label_object = ewl_text_new(); - DRETURN_PTR(EWL_WIDGET(b)); } @@ -61,8 +60,8 @@ * Blank out the structure and initialize it's theme */ memset(b, 0, sizeof(Ewl_Button)); - ewl_container_init(EWL_CONTAINER(b), EWL_WIDGET_BUTTON, 10, 10, - 2048, 2048); + ewl_container_init(EWL_CONTAINER(b), 10, 10, + EWL_FILL_POLICY_NORMAL, EWL_ALIGNMENT_CENTER); /* * Override the default recursive setting on containers. This prevents @@ -119,16 +118,15 @@ if (!l) __ewl_button_remove_label(w); - else - { - b = EWL_BUTTON(w); + else { + b = EWL_BUTTON(w); - IF_FREE(b->label); + IF_FREE(b->label); - b->label = strdup(l); + b->label = strdup(l); - __ewl_button_update_label(w); - } + __ewl_button_update_label(w); + } ewl_widget_configure(w); @@ -140,48 +138,39 @@ __ewl_button_realize(Ewl_Widget * w, void *ev_data, void *user_data) { Ewl_Button *b; + Evas_Object *clip_box; DENTER_FUNCTION; DCHECK_PARAM_PTR("w", w); b = EWL_BUTTON(w); - - { - Evas_Object *clip_box; - - clip_box = evas_add_rectangle(w->evas); - evas_set_color(w->evas, clip_box, 255, 255, 255, 255); - evas_set_layer(w->evas, clip_box, LAYER(w) - 1); - if (w->parent && EWL_CONTAINER(w->parent)->clip_box) - evas_set_clip(w->evas, clip_box, - EWL_CONTAINER(w->parent)->clip_box); - w->fx_clip_box = clip_box; - } + clip_box = evas_add_rectangle(w->evas); + evas_set_color(w->evas, clip_box, 255, 255, 255, 255); + evas_set_layer(w->evas, clip_box, LAYER(w) - 1); + if (w->parent && EWL_CONTAINER(w->parent)->clip_box) + evas_set_clip(w->evas, clip_box, + EWL_CONTAINER(w->parent)->clip_box); + w->fx_clip_box = clip_box; + + + clip_box = evas_add_rectangle(w->evas); + evas_set_color(w->evas, clip_box, 255, 255, 255, 255); + evas_set_layer(w->evas, clip_box, LAYER(w)); + evas_set_clip(w->evas, clip_box, w->fx_clip_box); + evas_show(w->evas, clip_box); - { - Evas_Object *clip_box; + EWL_CONTAINER(w)->clip_box = clip_box; - clip_box = evas_add_rectangle(w->evas); - evas_set_color(w->evas, clip_box, 255, 255, 255, 255); - evas_set_layer(w->evas, clip_box, LAYER(w)); - evas_set_clip(w->evas, clip_box, w->fx_clip_box); - evas_show(w->evas, clip_box); + if (b->label) { + Ewl_Widget *label_object = ewl_text_new(); - EWL_CONTAINER(w)->clip_box = clip_box; + ewl_container_append_child(EWL_CONTAINER(w), label_object); + __ewl_button_update_label(w); } - ewl_widget_theme_update(w); - if (b->label_object && b->label) - { - ewl_widget_realize(b->label_object); - ewl_container_append_child(EWL_CONTAINER(w), - b->label_object); - __ewl_button_update_label(w); - } - DLEAVE_FUNCTION; } @@ -224,12 +213,11 @@ b = EWL_BUTTON(w); - if (w->ebits_object) - { - ebits_hide(w->ebits_object); - ebits_unset_clip(w->ebits_object); - ebits_free(w->ebits_object); - } + if (w->ebits_object) { + ebits_hide(w->ebits_object); + ebits_unset_clip(w->ebits_object); + ebits_free(w->ebits_object); + } evas_hide(w->evas, w->fx_clip_box); evas_unset_clip(w->evas, w->fx_clip_box); @@ -245,7 +233,8 @@ } static void -__ewl_button_destroy_recursive(Ewl_Widget * w, void *ev_data, void *user_data) +__ewl_button_destroy_recursive(Ewl_Widget * w, void *ev_data, + void *user_data) { Ewl_Widget *c; @@ -267,53 +256,58 @@ Ewl_Button *b; Ewl_Widget *t; int req_x, req_y, req_w, req_h; - int cur_w, cur_h; DENTER_FUNCTION; DCHECK_PARAM_PTR("w", w); b = EWL_BUTTON(w); - ewl_object_requested_geometry(EWL_OBJECT(w), &req_x, &req_y, - &req_w, &req_h); + /* + * Retrieve the child object and make sure the button's minimum size + * is not smaller than the child + */ + t = ewd_list_goto_first(EWL_CONTAINER(w)->children); + if (t) { + int cmin_w, cmin_h; + int pmin_w, pmin_h; + + ewl_object_get_minimum_size(EWL_OBJECT(t), &cmin_w, + &cmin_h); + ewl_object_get_minimum_size(EWL_OBJECT(w), &pmin_w, + &pmin_h); + + if (cmin_w > pmin_w) + pmin_w = cmin_w; + if (cmin_h > pmin_h) + pmin_h = cmin_h; - if (w->ebits_object) - { - ebits_move(w->ebits_object, req_x, req_y); - ebits_resize(w->ebits_object, req_w, req_h); - } - - if (w->fx_clip_box) - { - evas_move(w->evas, w->fx_clip_box, req_x, req_y); - evas_resize(w->evas, w->fx_clip_box, req_w, req_h); - } - - if (EWL_CONTAINER(w)->clip_box) - { - evas_move(w->evas, EWL_CONTAINER(w)->clip_box, req_x, - req_y); - evas_resize(w->evas, EWL_CONTAINER(w)->clip_box, req_w, - req_h); - } + ewl_object_set_minimum_size(EWL_OBJECT(w), pmin_w, pmin_h); + } - ewl_object_set_current_geometry(EWL_OBJECT(w), req_x, req_y, req_w, - req_h); + ewl_object_apply_requested(EWL_OBJECT(w)); - ewd_list_goto_first(EWL_CONTAINER(w)->children); - t = ewd_list_current(EWL_CONTAINER(w)->children); + ewl_object_requested_geometry(EWL_OBJECT(w), &req_x, &req_y, + &req_w, &req_h); - if (!t) - DRETURN; + if (w->ebits_object) { + ebits_move(w->ebits_object, req_x, req_y); + ebits_resize(w->ebits_object, req_w, req_h); + } - ewl_object_get_current_size(EWL_OBJECT(t), &cur_w, &cur_h); + if (w->fx_clip_box) { + evas_move(w->evas, w->fx_clip_box, req_x, req_y); + evas_resize(w->evas, w->fx_clip_box, req_w, req_h); + } - ewl_object_request_geometry(EWL_OBJECT(t), - req_x + ((req_w / 2) - (cur_w / 2)), - req_y + ((req_h / 2) - (cur_h / 2)), - cur_w, cur_h); + if (EWL_CONTAINER(w)->clip_box) { + evas_move(w->evas, EWL_CONTAINER(w)->clip_box, req_x, + req_y); + evas_resize(w->evas, EWL_CONTAINER(w)->clip_box, req_w, + req_h); + } - ewl_widget_configure(t); + if (t) + ewl_widget_configure(t); DLEAVE_FUNCTION; } @@ -398,39 +392,36 @@ "/appearance/button/default/base/visible"); - if (v && !strncasecmp(v, "yes", 3)) - { - char *i; - - if (w->state & EWL_STATE_PRESSED) - i = ewl_theme_image_get(w, - "/appearance/button/default/clicked"); - else if (w->state & EWL_STATE_HILITED) - i = ewl_theme_image_get(w, - "/appearance/button/default/hilited"); - else - i = ewl_theme_image_get(w, - "/appearance/button/default/base"); - - if (i) - { - w->ebits_object = ebits_load(i); - FREE(i); - - if (w->ebits_object) - { - ebits_add_to_evas(w->ebits_object, - w->evas); - ebits_set_layer(w->ebits_object, - EWL_OBJECT(w)->layer); - - ebits_set_clip(w->ebits_object, - w->fx_clip_box); - - ebits_show(w->ebits_object); - } - } - } + if (v && !strncasecmp(v, "yes", 3)) { + char *i; + + if (w->state & EWL_STATE_PRESSED) + i = ewl_theme_image_get(w, + "/appearance/button/default/clicked"); + else if (w->state & EWL_STATE_HILITED) + i = ewl_theme_image_get(w, + "/appearance/button/default/hilited"); + else + i = ewl_theme_image_get(w, + "/appearance/button/default/base"); + + if (i) { + w->ebits_object = ebits_load(i); + FREE(i); + + if (w->ebits_object) { + ebits_add_to_evas(w->ebits_object, + w->evas); + ebits_set_layer(w->ebits_object, + EWL_OBJECT(w)->layer); + + ebits_set_clip(w->ebits_object, + w->fx_clip_box); + + ebits_show(w->ebits_object); + } + } + } IF_FREE(v); @@ -446,54 +437,61 @@ __ewl_button_update_label(Ewl_Widget * w) { Ewl_Button *b; + char *tmp; + int fs; + DENTER_FUNCTION; DCHECK_PARAM_PTR("w", w); b = EWL_BUTTON(w); + + if (!b->label) + return; + + /* + * If the label object has not yet been created then do so and + * add it to the container button + */ + if (!b->label_object) { + b->label_object = ewl_text_new(); + ewl_container_append_child(EWL_CONTAINER(w), + b->label_object); + } + + if (REALIZED(w)) + ewl_widget_realize(b->label_object); + + if (VISIBLE(w)) + ewl_widget_show(b->label_object); + - if (b->label) - { - char *tmp; - int fs; - - if (!b->label_object) - { - b->label_object = ewl_text_new(); - ewl_container_append_child(EWL_CONTAINER(w), - b->label_object); - if (REALIZED(w)) - ewl_widget_realize(b->label_object); - - if (VISIBLE(w)) - ewl_widget_show(b->label_object); - } - - - tmp = ewl_theme_data_get(w, - "/appearance/button/default/text/font"); - - if (tmp) - { - ewl_text_set_font(b->label_object, tmp); - FREE(tmp); - } - - tmp = ewl_theme_data_get(w, - "/appearance/button/default/text/font_size"); - - if (tmp) - { - fs = atoi(tmp); - FREE(tmp); - } - else - fs = 20; + /* + * Retrieve theme information + */ + tmp = + ewl_theme_data_get(w, "/appearance/button/default/text/font"); + + if (tmp) { + ewl_text_set_font(b->label_object, tmp); + FREE(tmp); + } - ewl_text_set_font_size(b->label_object, fs); + tmp = + ewl_theme_data_get(w, + "/appearance/button/default/text/font_size"); + + if (tmp) { + fs = atoi(tmp); + FREE(tmp); + } else + fs = 20; - ewl_text_set_text(b->label_object, b->label); - } + /* + * Apply theme info to the text + */ + ewl_text_set_font_size(b->label_object, fs); + ewl_text_set_text(b->label_object, b->label); DLEAVE_FUNCTION; } @@ -502,25 +500,20 @@ __ewl_button_remove_label(Ewl_Widget * w) { Ewl_Button *b; - Ewl_Widget *c; DENTER_FUNCTION; DCHECK_PARAM_PTR("w", w); b = EWL_BUTTON(w); - if (!b->label_object) + if (!b->label) DRETURN; - - ewd_list_goto_first(EWL_CONTAINER(w)->children); - - while ((c = ewd_list_next(EWL_CONTAINER(w)->children)) != NULL) - if (c == b->label_object) - ewd_list_remove(EWL_CONTAINER(w)->children); - ewl_widget_destroy(b->label_object); - - b->label_object = NULL; + if (b->label_object) { + ewd_list_goto_first(EWL_CONTAINER(w)->children); + ewd_list_remove(EWL_CONTAINER(w)->children); + ewl_widget_destroy(b->label_object); + } DLEAVE_FUNCTION; } =================================================================== RCS file: /cvsroot/enlightenment/e17/libs/ewl/src/ewl_button.h,v retrieving revision 1.6 retrieving revision 1.7 diff -u -3 -r1.6 -r1.7 --- ewl_button.h 2001/07/30 00:11:31 1.6 +++ ewl_button.h 2001/08/17 18:39:25 1.7 @@ -10,8 +10,7 @@ typedef struct _ewl_button Ewl_Button; #define EWL_BUTTON(button) ((Ewl_Button *) button) -struct _ewl_button -{ +struct _ewl_button { Ewl_Container container; Ewl_Widget *label_object; char *label; @@ -21,4 +20,4 @@ void ewl_button_set_label(Ewl_Widget * w, const char *l); -#endif /* __EWL_BUTTON_H__ */ +#endif /* __EWL_BUTTON_H__ */ =================================================================== RCS file: /cvsroot/enlightenment/e17/libs/ewl/src/ewl_callback.c,v retrieving revision 1.11 retrieving revision 1.12 diff -u -3 -r1.11 -r1.12 --- ewl_callback.c 2001/08/08 00:50:42 1.11 +++ ewl_callback.c 2001/08/17 18:39:25 1.12 @@ -112,14 +112,12 @@ ewd_list_goto_first(w->callbacks[type]); - while ((cb = ewd_list_next(w->callbacks[type])) != NULL) - { - if (cb->func == func) - { - cb->user_data = user_data; - break; - } - } + while ((cb = ewd_list_next(w->callbacks[type])) != NULL) { + if (cb->func == func) { + cb->user_data = user_data; + break; + } + } DLEAVE_FUNCTION; } @@ -153,12 +151,11 @@ DRETURN; while ((cb = ewd_list_next(w->callbacks[t])) != NULL) - if (cb->id == cb_id) - { - ewd_list_remove(w->callbacks[t]); - FREE(cb); - break; - } + if (cb->id == cb_id) { + ewd_list_remove(w->callbacks[t]); + FREE(cb); + break; + } DLEAVE_FUNCTION; } @@ -171,11 +168,10 @@ DENTER_FUNCTION; DCHECK_PARAM_PTR("w", w); - for (i = 0; i < EWL_CALLBACK_MAX; i++) - { - if (w->callbacks[i]) - ewd_list_destroy(w->callbacks[i]); - } + for (i = 0; i < EWL_CALLBACK_MAX; i++) { + if (w->callbacks[i]) + ewd_list_destroy(w->callbacks[i]); + } DLEAVE_FUNCTION; =================================================================== RCS file: /cvsroot/enlightenment/e17/libs/ewl/src/ewl_callback.h,v retrieving revision 1.8 retrieving revision 1.9 diff -u -3 -r1.8 -r1.9 --- ewl_callback.h 2001/07/30 00:11:31 1.8 +++ ewl_callback.h 2001/08/17 18:39:25 1.9 @@ -15,8 +15,7 @@ typedef void (*Ewl_Cb_Func) (Ewl_Widget * widget, void *event_data, void *user_data); -struct _ewl_callback -{ +struct _ewl_callback { Ewl_Widget *widget; Ewl_Callback_Type type; Ewl_Cb_Func func; @@ -29,7 +28,8 @@ Ewl_Cb_Func func, void *user_data); int ewl_callback_prepend(Ewl_Widget * widget, Ewl_Callback_Type type, Ewl_Cb_Func func, void *user_data); -void ewl_callback_del(Ewl_Widget * widget, Ewl_Callback_Type type, int cb_id); +void ewl_callback_del(Ewl_Widget * widget, Ewl_Callback_Type type, + int cb_id); void ewl_callback_clear(Ewl_Widget * widget); void ewl_callback_call(Ewl_Widget * widget, Ewl_Callback_Type type); void ewl_callback_call_with_event_data(Ewl_Widget * widget, =================================================================== RCS file: /cvsroot/enlightenment/e17/libs/ewl/src/ewl_checkbutton.c,v retrieving revision 1.5 retrieving revision 1.6 diff -u -3 -r1.5 -r1.6 --- ewl_checkbutton.c 2001/08/08 00:50:42 1.5 +++ ewl_checkbutton.c 2001/08/17 18:39:25 1.6 @@ -73,8 +73,8 @@ * Blank out the structure and initialize it's theme */ memset(b, 0, sizeof(Ewl_CheckButton)); - ewl_container_init(EWL_CONTAINER(b), EWL_WIDGET_BUTTON, 16, 16, 16, - 16); + ewl_container_init(EWL_CONTAINER(b), 16, 16, + EWL_FILL_POLICY_NORMAL, EWL_ALIGNMENT_CENTER); w = EWL_WIDGET(b); @@ -178,17 +178,16 @@ DCHECK_PARAM_PTR("w", w); if (EWL_CONTAINER(w)->children && - !ewd_list_is_empty(EWL_CONTAINER(w)->children)) - { - Ewl_Widget *c; - - ewd_list_goto_first(EWL_CONTAINER(w)->children); - - while ((c = ewd_list_next(EWL_CONTAINER(w)->children)) - != NULL) - ewl_widget_show(c); - } + !ewd_list_is_empty(EWL_CONTAINER(w)->children)) { + Ewl_Widget *c; + ewd_list_goto_first(EWL_CONTAINER(w)->children); + + while ((c = ewd_list_next(EWL_CONTAINER(w)->children)) + != NULL) + ewl_widget_show(c); + } + evas_show(w->evas, w->fx_clip_box); DLEAVE_FUNCTION; @@ -215,19 +214,17 @@ cb = EWL_CHECKBUTTON(w); - if (w->ebits_object) - { - ebits_hide(w->ebits_object); - ebits_unset_clip(w->ebits_object); - ebits_free(w->ebits_object); - } - - if (w->fx_clip_box) - { - evas_hide(w->evas, w->fx_clip_box); - evas_unset_clip(w->evas, w->fx_clip_box); - evas_del_object(w->evas, w->fx_clip_box); - } + if (w->ebits_object) { + ebits_hide(w->ebits_object); + ebits_unset_clip(w->ebits_object); + ebits_free(w->ebits_object); + } + + if (w->fx_clip_box) { + evas_hide(w->evas, w->fx_clip_box); + evas_unset_clip(w->evas, w->fx_clip_box); + evas_del_object(w->evas, w->fx_clip_box); + } ewl_callback_clear(w); @@ -273,42 +270,38 @@ ewl_object_requested_geometry(EWL_OBJECT(w), &req_x, &req_y, &req_w, &req_h); - if (w->ebits_object) - { - ebits_move(w->ebits_object, req_x, req_y); - ebits_resize(w->ebits_object, req_w, req_h); - } - - if (w->fx_clip_box) - { - evas_move(w->evas, w->fx_clip_box, req_x, req_y); - evas_resize(w->evas, w->fx_clip_box, req_w, req_h); - } - - if (EWL_CONTAINER(w)->clip_box) - { - evas_move(w->evas, EWL_CONTAINER(w)->clip_box, req_x, - req_y); - evas_resize(w->evas, EWL_CONTAINER(w)->clip_box, req_w, - req_h); - } - - if (b->label_object) - { - ewl_object_get_current_size(EWL_OBJECT(b->label_object), - &cur_w, &cur_h); - - ewl_object_request_geometry(EWL_OBJECT(b->label_object), - req_x + 19, - req_y + ((req_h / 2) - - (cur_h / 2)), cur_w, - cur_h); - - ewl_widget_configure(b->label_object); - - ewl_object_get_current_size(EWL_OBJECT(b->label_object), - &cur_w, &cur_h); - } + if (w->ebits_object) { + ebits_move(w->ebits_object, req_x, req_y); + ebits_resize(w->ebits_object, req_w, req_h); + } + + if (w->fx_clip_box) { + evas_move(w->evas, w->fx_clip_box, req_x, req_y); + evas_resize(w->evas, w->fx_clip_box, req_w, req_h); + } + + if (EWL_CONTAINER(w)->clip_box) { + evas_move(w->evas, EWL_CONTAINER(w)->clip_box, req_x, + req_y); + evas_resize(w->evas, EWL_CONTAINER(w)->clip_box, req_w, + req_h); + } + + if (b->label_object) { + ewl_object_get_current_size(EWL_OBJECT(b->label_object), + &cur_w, &cur_h); + + ewl_object_request_geometry(EWL_OBJECT(b->label_object), + req_x + 19, + req_y + ((req_h / 2) - + (cur_h / 2)), cur_w, + cur_h); + + ewl_widget_configure(b->label_object); + + ewl_object_get_current_size(EWL_OBJECT(b->label_object), + &cur_w, &cur_h); + } ewl_object_set_current_geometry(EWL_OBJECT(w), req_x, req_y, 19 + cur_w, req_h); @@ -343,7 +336,8 @@ } static void -__ewl_checkbutton_mouse_down(Ewl_Widget * w, void *ev_data, void *user_data) +__ewl_checkbutton_mouse_down(Ewl_Widget * w, void *ev_data, + void *user_data) { Ewl_CheckButton *b; @@ -384,7 +378,8 @@ } static void -__ewl_checkbutton_theme_update(Ewl_Widget * w, void *ev_data, void *user_data) +__ewl_checkbutton_theme_update(Ewl_Widget * w, void *ev_data, + void *user_data) { Ewl_CheckButton *b; char *v; @@ -415,34 +410,31 @@ state, b->checked); v = ewl_theme_data_get(w, str); + + if (v && !strncasecmp(v, "yes", 3)) { + char *i; + + snprintf(str, 512, "/appearance/button/check/%s-checked%i", + state, b->checked); + + i = ewl_theme_image_get(w, str); - if (v && !strncasecmp(v, "yes", 3)) - { - char *i; - - snprintf(str, 512, "/appearance/button/check/%s-checked%i", - state, b->checked); - - i = ewl_theme_image_get(w, str); - - if (i) - { - w->ebits_object = ebits_load(i); - FREE(i); - - if (w->ebits_object) - { - ebits_add_to_evas(w->ebits_object, - w->evas); - ebits_set_layer(w->ebits_object, - EWL_OBJECT(w)->layer); - ebits_set_clip(w->ebits_object, - w->fx_clip_box); - - ebits_show(w->ebits_object); - } - } - } + if (i) { + w->ebits_object = ebits_load(i); + FREE(i); + + if (w->ebits_object) { + ebits_add_to_evas(w->ebits_object, + w->evas); + ebits_set_layer(w->ebits_object, + EWL_OBJECT(w)->layer); + ebits_set_clip(w->ebits_object, + w->fx_clip_box); + + ebits_show(w->ebits_object); + } + } + } IF_FREE(v); =================================================================== RCS file: /cvsroot/enlightenment/e17/libs/ewl/src/ewl_checkbutton.h,v retrieving revision 1.3 retrieving revision 1.4 diff -u -3 -r1.3 -r1.4 --- ewl_checkbutton.h 2001/08/08 00:50:42 1.3 +++ ewl_checkbutton.h 2001/08/17 18:39:25 1.4 @@ -10,8 +10,7 @@ typedef struct _ewl_checkbutton Ewl_CheckButton; #define EWL_CHECKBUTTON(button) ((Ewl_CheckButton *) button) -struct _ewl_checkbutton -{ +struct _ewl_checkbutton { Ewl_Button button; unsigned int checked; }; @@ -22,4 +21,4 @@ void ewl_checkbutton_set_checked(Ewl_Widget * w, int c); int ewl_checkbutton_is_checked(Ewl_Widget * w); -#endif /* __EWL_CHECKBUTTON_H */ +#endif /* __EWL_CHECKBUTTON_H */ =================================================================== RCS file: /cvsroot/enlightenment/e17/libs/ewl/src/ewl_config.c,v retrieving revision 1.2 retrieving revision 1.3 diff -u -3 -r1.2 -r1.3 --- ewl_config.c 2001/07/28 12:59:29 1.2 +++ ewl_config.c 2001/08/17 18:39:25 1.3 @@ -18,37 +18,28 @@ int ewl_config_init(void) { - if ((open_user_config()) != -1) - { - config_db = user_config; - return 1; - } - else if ((open_system_config()) != -1) - { - config_db = system_config; - return 1; - } - else - { - if ((create_user_config()) != -1) - { - if ((open_user_config()) != -1) - { - config_db = user_config; - return 1; - } - else - { - DERROR("Failed to open user config, I was able" "to create it tough."); - return -1; - } - } - else - { - DERROR("Failed to create user config."); - return -1; - } - } + if ((open_user_config()) != -1) { + config_db = user_config; + return 1; + } else if ((open_system_config()) != -1) { + config_db = system_config; + return 1; + } else { + if ((create_user_config()) != -1) { + if ((open_user_config()) != -1) { + config_db = user_config; + return 1; + } else { + DERROR + ("Failed to open user config, I was able" + "to create it tough."); + return -1; + } + } else { + DERROR("Failed to create user config."); + return -1; + } + } } static int @@ -59,11 +50,10 @@ home = getenv("HOME"); - if (!home) - { - DWARNING("Failed to fetch environment variable HOME\n"); - return -1; - } + if (!home) { + DWARNING("Failed to fetch environment variable HOME\n"); + return -1; + } snprintf(path, 256, "%s/.e/ewl/config/system.db", home); @@ -88,11 +78,10 @@ home = getenv("HOME"); - if (!home) - { - DWARNING("Failed to fetch environment variable HOME\n"); - return -1; - } + if (!home) { + DWARNING("Failed to fetch environment variable HOME\n"); + return -1; + } snprintf(path, 256, "%s/.e/ewl/config/system.db", home); @@ -133,22 +122,19 @@ snprintf(k2, kl, "%s", k); snprintf(v2, vl, "%s", v); - if (!user_config) - { - if ((create_user_config()) != -1) - open_user_config(); - } - - if (user_config) - { - e_db_str_set(user_config, k2, v2); - e_db_flush(); - } - else - { - DWARNING("Somehow i can't write to the user config, check permissions."); - return -1; - } + if (!user_config) { + if ((create_user_config()) != -1) + open_user_config(); + } + + if (user_config) { + e_db_str_set(user_config, k2, v2); + e_db_flush(); + } else { + DWARNING + ("Somehow i can't write to the user config, check permissions."); + return -1; + } } return 1; @@ -168,22 +154,19 @@ snprintf(k2, kl, "%s", k); v2 = v; - if (!user_config) - { - if ((create_user_config()) != -1) - open_user_config(); - } - - if (user_config) - { - e_db_int_set(user_config, k2, v2); - e_db_flush(); - } - else - { - DWARNING("Somehow i can't write to the user config, check permissions."); - return -1; - } + if (!user_config) { + if ((create_user_config()) != -1) + open_user_config(); + } + + if (user_config) { + e_db_int_set(user_config, k2, v2); + e_db_flush(); + } else { + DWARNING + ("Somehow i can't write to the user config, check permissions."); + return -1; + } } return 1; @@ -203,22 +186,19 @@ snprintf(k2, kl, "%s", k); v2 = v; - if (!user_config) - { - if ((create_user_config()) != -1) - open_user_config(); - } - - if (user_config) - { - e_db_float_set(user_config, k2, v2); - e_db_flush(); - } - else - { - DWARNING("Somehow i can't write to the user config, check permissions."); - return -1; - } + if (!user_config) { + if ((create_user_config()) != -1) + open_user_config(); + } + + if (user_config) { + e_db_float_set(user_config, k2, v2); + e_db_flush(); + } else { + DWARNING + ("Somehow i can't write to the user config, check permissions."); + return -1; + } } return 1; @@ -287,17 +267,16 @@ str = ewl_config_get_str("/evas/render_method"); - if (str) - { - if (!strcasecmp(str, "software")) - return RENDER_METHOD_ALPHA_SOFTWARE; - else if (!strcasecmp(str, "hardware")) - return RENDER_METHOD_3D_HARDWARE; - else if (!strcasecmp(str, "x11")) - return RENDER_METHOD_BASIC_HARDWARE; + if (str) { + if (!strcasecmp(str, "software")) + return RENDER_METHOD_ALPHA_SOFTWARE; + else if (!strcasecmp(str, "hardware")) + return RENDER_METHOD_3D_HARDWARE; + else if (!... [truncated message content] |
From: <enl...@li...> - 2001-08-17 18:40:14
|
Enlightenment CVS committal Author : rbdpngn Project : e17 Module : libs/ewl Dir : e17/libs/ewl Modified Files: configure.in Log Message: Check for etox-config. =================================================================== RCS file: /cvsroot/enlightenment/e17/libs/ewl/configure.in,v retrieving revision 1.7 retrieving revision 1.8 diff -u -3 -r1.7 -r1.8 --- configure.in 2001/08/10 09:22:56 1.7 +++ configure.in 2001/08/17 18:40:13 1.8 @@ -64,10 +64,10 @@ evas_cflags=`evas-config --cflags` evas_libs=`evas-config --libs` -AC_SUBST(ewd_cflags) -AC_SUBST(ewd_libs) -ewd_cflags=`ewd-config --cflags` -ewd_libs=`ewd-config --libs` +AC_SUBST(etox_cflags) +AC_SUBST(etox_libs) +etox_cflags=`etox-config --cflags` +etox_libs=`etox-config --libs` AC_SUBST(imlib2_cflags) AC_SUBST(imlib2_libs) |
From: <enl...@li...> - 2001-09-06 17:24:35
|
Enlightenment CVS committal Author : rbdpngn Project : e17 Module : libs/ewl Dir : e17/libs/ewl/src Modified Files: ewl_container.c ewl_widget.c Log Message: Added a couple quick checks to eliminate warning messages from ewd. =================================================================== RCS file: /cvsroot/enlightenment/e17/libs/ewl/src/ewl_container.c,v retrieving revision 1.8 retrieving revision 1.9 diff -u -3 -r1.8 -r1.9 --- ewl_container.c 2001/09/06 01:35:30 1.8 +++ ewl_container.c 2001/09/06 17:24:34 1.9 @@ -339,10 +339,11 @@ EWL_CONTAINER(w)->clip_box = NULL; } - ewd_list_clear(EWL_CONTAINER(w)->children); - ewd_list_destroy(EWL_CONTAINER(w)->children); - - EWL_CONTAINER(w)->children = NULL; + if (EWL_CONTAINER(w)->children) { + ewd_list_clear(EWL_CONTAINER(w)->children); + ewd_list_destroy(EWL_CONTAINER(w)->children); + EWL_CONTAINER(w)->children = NULL; + } DLEAVE_FUNCTION; } =================================================================== RCS file: /cvsroot/enlightenment/e17/libs/ewl/src/ewl_widget.c,v retrieving revision 1.12 retrieving revision 1.13 diff -u -3 -r1.12 -r1.13 --- ewl_widget.c 2001/09/06 14:23:47 1.12 +++ ewl_widget.c 2001/09/06 17:24:34 1.13 @@ -265,7 +265,8 @@ /* * Perform the series of operations common to every widget when - * they are destroyed + * they are destroyed. This should ALWAYS be the the last callback + * in the chain. */ static void __ewl_widget_destroy(Ewl_Widget *w, void *ev_data, void *data) @@ -305,8 +306,10 @@ * the remaining callbacks. This preserves the list of the destroy * type so we don't get a segfault. */ - ewd_list_clear(w->callbacks[EWL_CALLBACK_DESTROY]); - w->callbacks[EWL_CALLBACK_DESTROY] = NULL; + if (w->callbacks[EWL_CALLBACK_DESTROY]) { + ewd_list_clear(w->callbacks[EWL_CALLBACK_DESTROY]); + w->callbacks[EWL_CALLBACK_DESTROY] = NULL; + } ewl_callback_clear(w); |
From: <enl...@li...> - 2001-09-06 18:53:37
|
Enlightenment CVS committal Author : rbdpngn Project : e17 Module : libs/ewl Dir : e17/libs/ewl/src Modified Files: ewl_config.c ewl_config.h Log Message: Fixed an error with determining the render method, and removed some unnecessary string copies. =================================================================== RCS file: /cvsroot/enlightenment/e17/libs/ewl/src/ewl_config.c,v retrieving revision 1.4 retrieving revision 1.5 diff -u -3 -r1.4 -r1.5 --- ewl_config.c 2001/09/06 01:35:30 1.4 +++ ewl_config.c 2001/09/06 18:53:36 1.5 @@ -110,32 +110,19 @@ } int -ewl_config_set_str(const char *k, const char *v) +ewl_config_set_str(char *k, char *v) { - int kl, vl; - - kl = strlen(k); - vl = strlen(v); + if (!user_config) { + if ((create_user_config()) != -1) + open_user_config(); + } - { - char k2[kl], v2[kl]; - - snprintf(k2, kl, "%s", k); - snprintf(v2, vl, "%s", v); - - if (!user_config) { - if ((create_user_config()) != -1) - open_user_config(); - } - - if (user_config) { - e_db_str_set(user_config, k2, v2); - e_db_flush(); - } else { - DWARNING - ("Somehow i can't write to the user config, check permissions."); - return -1; - } + if (user_config) { + e_db_str_set(user_config, k, v); + e_db_flush(); + } else { + DWARNING("can't write to user config, check permissions."); + return -1; } return 1; @@ -143,122 +130,68 @@ int -ewl_config_set_int(const char *k, const int v) +ewl_config_set_int(char *k, int v) { - int kl, v2; - - kl = strlen(k); - - { - char k2[kl]; + if (!user_config) { + if ((create_user_config()) != -1) + open_user_config(); + } - snprintf(k2, kl, "%s", k); - v2 = v; - - if (!user_config) { - if ((create_user_config()) != -1) - open_user_config(); - } - - if (user_config) { - e_db_int_set(user_config, k2, v2); - e_db_flush(); - } else { - DWARNING - ("Somehow i can't write to the user config, check permissions."); - return -1; - } + if (user_config) { + e_db_int_set(user_config, k, v); + e_db_flush(); + } else { + DWARNING("can't write to user config, check permissions."); + return -1; } return 1; } int -ewl_config_set_float(const char *k, const float v) +ewl_config_set_float(char *k, float v) { - int kl; - float v2; - - kl = strlen(k); + if (!user_config) { + if ((create_user_config()) != -1) + open_user_config(); + } - { - char k2[kl]; - - snprintf(k2, kl, "%s", k); - v2 = v; - - if (!user_config) { - if ((create_user_config()) != -1) - open_user_config(); - } - - if (user_config) { - e_db_float_set(user_config, k2, v2); - e_db_flush(); - } else { - DWARNING - ("Somehow i can't write to the user config, check permissions."); - return -1; - } + if (user_config) { + e_db_float_set(user_config, k, v); + e_db_flush(); + } else { + DWARNING("can't write to user config, check permissions."); + return -1; } return 1; } char * -ewl_config_get_str(const char *k) +ewl_config_get_str(char *k) { - int kl; - - kl = strlen(k); - - { - char k2[kl]; - snprintf(k2, kl, "%s", k); - - if (config_db) - return e_db_str_get(config_db, k2); - else - return NULL; - } + if (config_db) + return e_db_str_get(config_db, k); + else + return NULL; } int -ewl_config_get_int(const char *k, int *v) +ewl_config_get_int(char *k, int *v) { - int kl; - - kl = strlen(k); - - { - char k2[kl]; - - snprintf(k2, kl, "%s", k); - - if (config_db) - return e_db_int_get(config_db, k2, v); - else - return -1; - } + if (config_db) + return e_db_int_get(config_db, k, v); + else + return -1; } int -ewl_config_get_float(const char *k, float *v) +ewl_config_get_float(char *k, float *v) { - int kl; - - kl = strlen(k); - - { - char k2[kl]; - - snprintf(k2, kl, "%s", k); - - if (config_db) - return e_db_float_get(config_db, k2, v); - else - return -1; - } + if (config_db) + return e_db_float_get(config_db, k, v); + else + return -1; } Evas_Render_Method =================================================================== RCS file: /cvsroot/enlightenment/e17/libs/ewl/src/ewl_config.h,v retrieving revision 1.2 retrieving revision 1.3 diff -u -3 -r1.2 -r1.3 --- ewl_config.h 2001/07/28 12:59:29 1.2 +++ ewl_config.h 2001/09/06 18:53:36 1.3 @@ -3,12 +3,12 @@ #define __EWL_CONFIG_H int ewl_config_init(void); -int ewl_config_set_str(const char *k, const char *v); -int ewl_config_set_int(const char *k, const int v); -int ewl_config_set_float(const char *k, const float v); -char *ewl_config_get_str(const char *k); -int ewl_config_get_int(const char *k, int *v); -int ewl_config_get_float(const char *k, float *v); +int ewl_config_set_str(char *k, char *v); +int ewl_config_set_int(char *k, int v); +int ewl_config_set_float(char *k, float v); +char *ewl_config_get_str(char *k); +int ewl_config_get_int(char *k, int *v); +int ewl_config_get_float(char *k, float *v); Evas_Render_Method ewl_config_get_render_method(); #endif |
From: <enl...@li...> - 2001-09-08 17:37:27
|
Enlightenment CVS committal Author : rbdpngn Project : e17 Module : libs/ewl Dir : e17/libs/ewl/src Modified Files: ewl_container.c ewl_container.h ewl_debug.h ewl_misc.c ewl_widget.c ewl_widget.h ewl_window.c Log Message: Widgets now aren't realized unless ewl_main is reached or ewl_widget_realize is specifically called on a widget. Also, it's no longer required to realize a container before adding a child to it. This needs a few minor fix ups, hopefully I'll get this finished up later this weekend. =================================================================== RCS file: /cvsroot/enlightenment/e17/libs/ewl/src/ewl_container.c,v retrieving revision 1.9 retrieving revision 1.10 diff -u -3 -r1.9 -r1.10 --- ewl_container.c 2001/09/06 17:24:34 1.9 +++ ewl_container.c 2001/09/08 17:37:26 1.10 @@ -66,7 +66,7 @@ child->parent = EWL_WIDGET(parent); ewd_list_append(parent->children, child); - ewl_callback_call(EWL_WIDGET(child), EWL_CALLBACK_REPARENT); + ewl_widget_reparent(child); DLEAVE_FUNCTION; } @@ -86,7 +86,7 @@ child->parent = EWL_WIDGET(parent); ewd_list_prepend(parent->children, child); - ewl_callback_call(EWL_WIDGET(child), EWL_CALLBACK_REPARENT); + ewl_widget_reparent(child); DLEAVE_FUNCTION; } @@ -107,7 +107,7 @@ child->parent = EWL_WIDGET(parent); ewd_list_goto_index(parent->children, index); ewd_list_insert(parent->children, child); - ewl_callback_call(EWL_WIDGET(child), EWL_CALLBACK_REPARENT); + ewl_widget_reparent(child); DLEAVE_FUNCTION; } @@ -182,89 +182,6 @@ DRETURN_PTR(NULL); } -void -ewl_container_clip_box_create(Ewl_Container * c) -{ - Ewl_Widget * w; - - DENTER_FUNCTION; - DCHECK_PARAM_PTR("c", c); - - w = EWL_WIDGET(c); - - if (!c->clip_box) - { - c->clip_box = evas_add_rectangle(w->evas); - evas_set_color(w->evas, c->clip_box, 255, 255, 255, 0); - evas_move(w->evas, c->clip_box, CURRENT_X(w), CURRENT_Y(w)); - evas_resize(w->evas, c->clip_box, - CURRENT_W(w), CURRENT_H(w)); - evas_set_layer(w->evas, c->clip_box, LAYER(w)); - evas_show(w->evas, c->clip_box); - } - - DLEAVE_FUNCTION; -} - -void -ewl_container_clip_box_resize(Ewl_Container * c) -{ - Ewl_Widget * w; - - DENTER_FUNCTION; - DCHECK_PARAM_PTR("c", c); - - w = EWL_WIDGET(c); - - if (c->clip_box) - { - evas_move(w->evas, c->clip_box, CURRENT_X(w), CURRENT_Y(w)); - evas_resize(w->evas, c->clip_box, CURRENT_W(w), CURRENT_H(w)); - } - - DLEAVE_FUNCTION; -} - -void -ewl_container_set_clip(Ewl_Container * c) -{ - Ewl_Widget * w; - - DENTER_FUNCTION; - DCHECK_PARAM_PTR("c", c); - - w = EWL_WIDGET(c); - - if (w->parent && w->fx_clip_box && c->clip_box) - evas_set_clip(w->evas, c->clip_box, w->fx_clip_box); - - DLEAVE_FUNCTION; -} - -void -ewl_container_show_clip(Ewl_Container * widget) -{ - DENTER_FUNCTION; - DCHECK_PARAM_PTR("widget", widget); - - if (widget->clip_box) - evas_show(EWL_WIDGET(widget)->evas, widget->clip_box); - - DLEAVE_FUNCTION; -} - -void -ewl_container_hide_clip(Ewl_Container * widget) -{ - DENTER_FUNCTION; - DCHECK_PARAM_PTR("widget", widget); - - if (widget->clip_box) - evas_hide(EWL_WIDGET(widget)->evas, widget->clip_box); - - DLEAVE_FUNCTION; -} - /* * When reparenting a container, it's children need the updated information * about the container, such as evas and evas_window. @@ -283,23 +200,60 @@ while ((child = ewd_list_remove_first(old)) != NULL) { ewl_container_append_child(EWL_CONTAINER(w), child); - ewl_callback_call(child, EWL_CALLBACK_REPARENT); + ewl_widget_reparent(child); } ewd_list_destroy(old); } +/* + * This is the default action to be taken by containers, it involves + * creating and showing a clip box, as well as clipping the clip box to parent + * clip boxes. + */ static void __ewl_container_realize(Ewl_Widget *w, void *event_data, void *user_data) { + Ewl_Container *c; + Ewl_Widget *child; + DENTER_FUNCTION; DCHECK_PARAM_PTR("w", w); - ewl_container_clip_box_create(EWL_CONTAINER(w)); + c = EWL_CONTAINER(w); - ewl_container_show_clip(EWL_CONTAINER(w)); + /* + * Create the clip box for this container, this keeps children clipped + * to the wanted area. + */ + c->clip_box = evas_add_rectangle(w->evas); + evas_set_color(w->evas, c->clip_box, 255, 255, 255, 0); + evas_move(w->evas, c->clip_box, CURRENT_X(w), CURRENT_Y(w)); + evas_resize(w->evas, c->clip_box, CURRENT_W(w), CURRENT_H(w)); + evas_set_layer(w->evas, c->clip_box, LAYER(w)); + evas_show(w->evas, c->clip_box); - ewl_container_set_clip(EWL_CONTAINER(w)); + /* + * Now clip the container portion of this widget to the widget + * fx_clip_box. + */ + if (w->parent && w->fx_clip_box && c->clip_box) + evas_set_clip(w->evas, c->clip_box, w->fx_clip_box); + + if (!c->children) + DRETURN; + + /* + * If this container has not yet been realized, then it's children + * haven't either. So we call ewl_widget_reparent to get each child + * to update it's evas related fields to the new information, and then + * realize any of them that should be visible. + */ + ewd_list_goto_first(c->children); + while ((child = ewd_list_next(c->children)) != NULL) { + ewl_widget_reparent(child); + ewl_widget_realize(child); + } DLEAVE_FUNCTION; } =================================================================== RCS file: /cvsroot/enlightenment/e17/libs/ewl/src/ewl_container.h,v retrieving revision 1.6 retrieving revision 1.7 diff -u -3 -r1.6 -r1.7 --- ewl_container.h 2001/09/06 01:35:30 1.6 +++ ewl_container.h 2001/09/08 17:37:26 1.7 @@ -31,11 +31,6 @@ int y); Ewl_Widget *ewl_container_get_child_at_recursive(Ewl_Container * widget, int x, int y); -void ewl_container_clip_box_create(Ewl_Container * widget); -void ewl_container_clip_box_resize(Ewl_Container * widget); -void ewl_container_set_clip(Ewl_Container * widget); -void ewl_container_show_clip(Ewl_Container * widget); -void ewl_container_hide_clip(Ewl_Container * widget); #define RECURSIVE(w) EWL_CONTAINER(w)->recursive =================================================================== RCS file: /cvsroot/enlightenment/e17/libs/ewl/src/ewl_debug.h,v retrieving revision 1.5 retrieving revision 1.6 diff -u -3 -r1.5 -r1.6 --- ewl_debug.h 2001/09/06 01:35:30 1.5 +++ ewl_debug.h 2001/09/08 17:37:26 1.6 @@ -52,7 +52,16 @@ return ptr; \ } -#define DRETURN_FLOAT(num) return num; +#define DRETURN_FLOAT(num) \ +{ \ + extern Ewl_Options ewl_options; \ + if (ewl_options.debug_level >= 15) \ + { \ + fprintf(stderr, "<-- %s:%i\tReturning float %f in %s();\n", \ + __FILE__, __LINE__, (float) num, __FUNCTION__); \ + } \ + return num; \ +} #define DRETURN_INT(num) \ { \ =================================================================== RCS file: /cvsroot/enlightenment/e17/libs/ewl/src/ewl_misc.c,v retrieving revision 1.10 retrieving revision 1.11 diff -u -3 -r1.10 -r1.11 --- ewl_misc.c 2001/09/06 01:35:30 1.10 +++ ewl_misc.c 2001/09/08 17:37:26 1.11 @@ -55,18 +55,7 @@ { DENTER_FUNCTION; - /* If we have any windows at this point, we want to configure them - to layout the children correct */ - if (ewl_window_list && !ewd_list_is_empty(ewl_window_list)) - { - Ewl_Widget * w; - - ewd_list_goto_first(ewl_window_list); - - while ((w = ewd_list_next(ewl_window_list)) != NULL) - ewl_widget_configure(w); - } - + ewl_idle_render(NULL); e_event_loop(); DLEAVE_FUNCTION; @@ -88,9 +77,18 @@ DRETURN; ewd_list_goto_first(ewl_window_list); + + while ((widget = EWL_WIDGET(ewd_list_next(ewl_window_list))) != NULL) { + + /* + * If we have any unrealized windows at this point, we want to + * realize and configure them to layout the children correct. + */ + if (!REALIZED(widget)) { + ewl_widget_realize(widget); + ewl_widget_configure(widget); + } - while ((widget = - EWL_WIDGET(ewd_list_next(ewl_window_list))) != NULL) { if (widget->evas) evas_render(widget->evas); } =================================================================== RCS file: /cvsroot/enlightenment/e17/libs/ewl/src/ewl_widget.c,v retrieving revision 1.13 retrieving revision 1.14 diff -u -3 -r1.13 -r1.14 --- ewl_widget.c 2001/09/06 17:24:34 1.13 +++ ewl_widget.c 2001/09/08 17:37:26 1.14 @@ -61,12 +61,13 @@ DENTER_FUNCTION; DCHECK_PARAM_PTR("w", w); - if (REALIZED(w)) + if (!w->visible || REALIZED(w)) DRETURN; w->visible |= EWL_VISIBILITY_REALIZED; ewl_callback_call(w, EWL_CALLBACK_REALIZE); + ewl_widget_show(w); DLEAVE_FUNCTION; } @@ -77,12 +78,6 @@ DENTER_FUNCTION; DCHECK_PARAM_PTR("w", w); - if (w->visible) - DRETURN; - - if (!REALIZED(w)) - ewl_widget_realize(w); - w->visible |= EWL_VISIBILITY_SHOWN; ewl_callback_call(w, EWL_CALLBACK_SHOW); @@ -95,8 +90,11 @@ { DENTER_FUNCTION; DCHECK_PARAM_PTR("w", w); + + if (!w->visible) + DRETURN; - w = EWL_VISIBILITY_HIDDEN; + w->visible = EWL_VISIBILITY_HIDDEN; ewl_callback_call(w, EWL_CALLBACK_HIDE); @@ -155,12 +153,26 @@ DENTER_FUNCTION; DCHECK_PARAM_PTR("w", w); + if (!REALIZED(w)) + DRETURN; + ewl_callback_call(w, EWL_CALLBACK_THEME_UPDATE); DLEAVE_FUNCTION; } void +ewl_widget_reparent(Ewl_Widget * w) +{ + DENTER_FUNCTION; + DCHECK_PARAM_PTR("w", w); + + ewl_callback_call(w, EWL_CALLBACK_REPARENT); + + DLEAVE_FUNCTION; +} + +void ewl_widget_set_data(Ewl_Widget * w, void *k, void *v) { DENTER_FUNCTION; @@ -327,7 +339,8 @@ DENTER_FUNCTION; DCHECK_PARAM_PTR("w", w); - evas_show(w->evas, w->fx_clip_box); + if (w->evas && w->fx_clip_box) + evas_show(w->evas, w->fx_clip_box); DLEAVE_FUNCTION; } @@ -341,7 +354,8 @@ DENTER_FUNCTION; DCHECK_PARAM_PTR("w", w); - evas_hide(w->evas, w->fx_clip_box); + if (w->evas && w->fx_clip_box) + evas_hide(w->evas, w->fx_clip_box); DLEAVE_FUNCTION; } @@ -368,7 +382,7 @@ pc = EWL_CONTAINER(w->parent); /* - * clip the fx clip box to the parent clip box + * Clip the fx_clip_box to the parent clip_box. */ if (pc && pc->clip_box) evas_set_clip(w->evas, w->fx_clip_box, pc->clip_box); @@ -404,8 +418,7 @@ if (w->fx_clip_box) { evas_move(w->evas, w->fx_clip_box, CURRENT_X(w), CURRENT_Y(w)); - evas_resize(w->evas, w->fx_clip_box, CURRENT_W(w), - CURRENT_H(w)); + evas_resize(w->evas, w->fx_clip_box, CURRENT_W(w), CURRENT_H(w)); } DLEAVE_FUNCTION; @@ -515,7 +528,8 @@ LAYER(w) = LAYER(w->parent) + 1; - ewl_widget_theme_update(w); + if (REALIZED(w)) + ewl_widget_theme_update(w); DLEAVE_FUNCTION; } =================================================================== RCS file: /cvsroot/enlightenment/e17/libs/ewl/src/ewl_widget.h,v retrieving revision 1.10 retrieving revision 1.11 diff -u -3 -r1.10 -r1.11 --- ewl_widget.h 2001/09/06 01:35:30 1.10 +++ ewl_widget.h 2001/09/08 17:37:26 1.11 @@ -52,7 +52,7 @@ /* Returns a allocated widget structure */ Ewl_Widget *ewl_widget_new(); void ewl_widget_init(Ewl_Widget * w, char *appearance); -void ewl_widget_reparent(Ewl_Widget * parent, Ewl_Widget * widget); +void ewl_widget_reparent(Ewl_Widget * widget); void ewl_widget_realize(Ewl_Widget * widget); void ewl_widget_show(Ewl_Widget * widget); void ewl_widget_hide(Ewl_Widget * widget); =================================================================== RCS file: /cvsroot/enlightenment/e17/libs/ewl/src/ewl_window.c,v retrieving revision 1.16 retrieving revision 1.17 diff -u -3 -r1.16 -r1.17 --- ewl_window.c 2001/09/06 01:35:30 1.16 +++ ewl_window.c 2001/09/08 17:37:26 1.17 @@ -109,6 +109,12 @@ evas_set_layer(w->evas, window->bg_rect, LAYER(w) - 1000); evas_show(w->evas, window->bg_rect); + e_window_show(EWL_WINDOW(w)->window); + e_window_show(w->evas_window); + + if (EWL_WINDOW(w)->borderless) + e_window_hint_set_borderless(EWL_WINDOW(w)->window); + DLEAVE_FUNCTION; } @@ -118,14 +124,17 @@ DENTER_FUNCTION; DCHECK_PARAM_PTR("w", w); + if (!EWL_WINDOW(w)->window) + DRETURN; + e_window_show(EWL_WINDOW(w)->window); e_window_show(w->evas_window); if (EWL_WINDOW(w)->borderless) e_window_hint_set_borderless(EWL_WINDOW(w)->window); - +/* ewl_widget_configure(w); - +*/ DLEAVE_FUNCTION; } |
From: <enl...@li...> - 2001-09-20 15:27:49
|
Enlightenment CVS committal Author : rbdpngn Project : e17 Module : libs/ewl Dir : e17/libs/ewl/data/themes/default/appearance/seeker/horizontal/dragbar Log Message: Directory /cvsroot/enlightenment/e17/libs/ewl/data/themes/default/appearance/seeker/horizontal/dragbar added to the repository |
From: <enl...@li...> - 2001-09-20 15:28:45
|
Enlightenment CVS committal Author : rbdpngn Project : e17 Module : libs/ewl Dir : e17/libs/ewl/data/themes/default/appearance/seeker/vertical/dragbar Log Message: Directory /cvsroot/enlightenment/e17/libs/ewl/data/themes/default/appearance/seeker/vertical/dragbar added to the repository |
From: <enl...@li...> - 2001-09-20 15:29:39
|
Enlightenment CVS committal Author : rbdpngn Project : e17 Module : libs/ewl Dir : e17/libs/ewl/data/themes/default/appearance/scrollbar Log Message: Directory /cvsroot/enlightenment/e17/libs/ewl/data/themes/default/appearance/scrollbar added to the repository |
From: E C. L. <enl...@so...> - 2001-10-03 06:17:28
|
Enlightenment CVS committal Author : rbdpngn Project : e17 Module : libs/ewl Dir : e17/libs/ewl/data/themes/default/appearance/seeker/horizontal/dragbar Added Files: base.bits.db Log Message: The furthest reaching change is the addition of debugging levels to the debugging macros. Quite a few minor bug fixes as well as adding the beginnings of the scrollbars. Scrollbars work, but there are a couple issues that still need to be worked out with the box code it inherits. |
From: E C. L. <enl...@so...> - 2001-10-03 06:17:28
|
Enlightenment CVS committal Author : rbdpngn Project : e17 Module : libs/ewl Dir : e17/libs/ewl/data/themes/default/appearance/seeker/vertical Removed Files: dragbar-base.bits.db dragbar-clicked.bits.db dragbar-hilited.bits.db Log Message: The furthest reaching change is the addition of debugging levels to the debugging macros. Quite a few minor bug fixes as well as adding the beginnings of the scrollbars. Scrollbars work, but there are a couple issues that still need to be worked out with the box code it inherits. |
From: E C. L. <enl...@so...> - 2001-10-03 06:17:28
|
Enlightenment CVS committal Author : rbdpngn Project : e17 Module : libs/ewl Dir : e17/libs/ewl/data/themes/default/appearance/seeker/horizontal Removed Files: dragbar-base.bits.db dragbar-clicked.bits.db dragbar-hilited.bits.db Log Message: The furthest reaching change is the addition of debugging levels to the debugging macros. Quite a few minor bug fixes as well as adding the beginnings of the scrollbars. Scrollbars work, but there are a couple issues that still need to be worked out with the box code it inherits. |
From: E C. L. <enl...@so...> - 2001-10-03 06:17:28
|
Enlightenment CVS committal Author : rbdpngn Project : e17 Module : libs/ewl Dir : e17/libs/ewl/data/themes/default/appearance/seeker/vertical/dragbar Added Files: base.bits.db Log Message: The furthest reaching change is the addition of debugging levels to the debugging macros. Quite a few minor bug fixes as well as adding the beginnings of the scrollbars. Scrollbars work, but there are a couple issues that still need to be worked out with the box code it inherits. |
From: E C. L. <enl...@so...> - 2001-10-03 06:17:28
|
Enlightenment CVS committal Author : rbdpngn Project : e17 Module : libs/ewl Dir : e17/libs/ewl/test Modified Files: Makefile.am ewl_box_test.c ewl_button_test.c ewl_entry_test.c ewl_image_test.c ewl_notebook_test.c ewl_seeker_test.c ewl_spinner_test.c ewl_test.c ewl_text_test.c Added Files: ewl_table_test.c Log Message: The furthest reaching change is the addition of debugging levels to the debugging macros. Quite a few minor bug fixes as well as adding the beginnings of the scrollbars. Scrollbars work, but there are a couple issues that still need to be worked out with the box code it inherits. =================================================================== RCS file: /cvsroot/enlightenment/e17/libs/ewl/test/Makefile.am,v retrieving revision 1.11 retrieving revision 1.12 diff -u -3 -r1.11 -r1.12 --- Makefile.am 2001/09/30 01:46:33 1.11 +++ Makefile.am 2001/10/03 06:17:28 1.12 @@ -11,6 +11,7 @@ ewl_box_test.c \ ewl_button_test.c \ ewl_entry_test.c \ + ewl_table_test.c \ ewl_image_test.c \ ewl_notebook_test.c \ ewl_seeker_test.c \ =================================================================== RCS file: /cvsroot/enlightenment/e17/libs/ewl/test/ewl_box_test.c,v retrieving revision 1.11 retrieving revision 1.12 diff -u -3 -r1.11 -r1.12 --- ewl_box_test.c 2001/09/13 21:41:07 1.11 +++ ewl_box_test.c 2001/10/03 06:17:28 1.12 @@ -2,7 +2,8 @@ static Ewl_Widget *box_button = NULL; -void __create_box_test_window(Ewl_Widget * w, void *ev_data, void *user_data); +void __create_box_test_window(Ewl_Widget * w, void *ev_data, + void *user_data); void __destroy_box_test_window(Ewl_Widget * w, void *ev_data, void *user_data) @@ -24,24 +25,21 @@ f = ewl_object_get_fill_policy(EWL_OBJECT(w)); - if (f == EWL_FILL_POLICY_NORMAL) - { - ewl_object_set_fill_policy(EWL_OBJECT(w), - EWL_FILL_POLICY_FILL); - ewl_object_set_minimum_size(EWL_OBJECT(w), 100, 17); - ewl_object_set_maximum_size(EWL_OBJECT(w), 1 << 30, - 1 << 30); - ewl_button_set_label(w, "Fill"); - ewl_widget_configure(w->parent); - } - else - { - ewl_object_set_fill_policy(EWL_OBJECT(w), - EWL_FILL_POLICY_NORMAL); - ewl_object_set_custom_size(EWL_OBJECT(w), 100, 17); - ewl_button_set_label(w, "Normal"); - ewl_widget_configure(w->parent); - } + if (f == EWL_FILL_POLICY_NORMAL) { + ewl_object_set_fill_policy(EWL_OBJECT(w), + EWL_FILL_POLICY_FILL); + ewl_object_set_minimum_size(EWL_OBJECT(w), 100, 17); + ewl_object_set_maximum_size(EWL_OBJECT(w), 1 << 30, + 1 << 30); + ewl_button_set_label(w, "Fill"); + ewl_widget_configure(w->parent); + } else { + ewl_object_set_fill_policy(EWL_OBJECT(w), + EWL_FILL_POLICY_NORMAL); + ewl_object_set_custom_size(EWL_OBJECT(w), 100, 17); + ewl_button_set_label(w, "Normal"); + ewl_widget_configure(w->parent); + } return; ev_data = NULL; @@ -57,21 +55,16 @@ a = ewl_object_get_alignment(EWL_OBJECT(w)); - if (a == EWL_ALIGNMENT_LEFT) - { - a = EWL_ALIGNMENT_CENTER; - snprintf(l, 10, "Center"); - } - else if (a == EWL_ALIGNMENT_CENTER) - { - a = EWL_ALIGNMENT_RIGHT; - snprintf(l, 10, "Right"); - } - else if (a == EWL_ALIGNMENT_RIGHT) - { - a = EWL_ALIGNMENT_LEFT; - snprintf(l, 10, "Left"); - } + if (a == EWL_ALIGNMENT_LEFT) { + a = EWL_ALIGNMENT_CENTER; + snprintf(l, 10, "Center"); + } else if (a == EWL_ALIGNMENT_CENTER) { + a = EWL_ALIGNMENT_RIGHT; + snprintf(l, 10, "Right"); + } else if (a == EWL_ALIGNMENT_RIGHT) { + a = EWL_ALIGNMENT_LEFT; + snprintf(l, 10, "Left"); + } ewl_button_set_label(w, l); @@ -86,28 +79,24 @@ } void -__toggle_child_vertical_align(Ewl_Widget * w, void *ev_data, void *user_data) +__toggle_child_vertical_align(Ewl_Widget * w, void *ev_data, + void *user_data) { Ewl_Alignment a; char l[10]; a = ewl_object_get_alignment(EWL_OBJECT(w)); - if (a == EWL_ALIGNMENT_TOP) - { - a = EWL_ALIGNMENT_CENTER; - snprintf(l, 10, "Center"); - } - else if (a == EWL_ALIGNMENT_CENTER) - { - a = EWL_ALIGNMENT_BOTTOM; - snprintf(l, 10, "Bottom"); - } - else if (a == EWL_ALIGNMENT_BOTTOM) - { - a = EWL_ALIGNMENT_TOP; - snprintf(l, 10, "Top"); - } + if (a == EWL_ALIGNMENT_TOP) { + a = EWL_ALIGNMENT_CENTER; + snprintf(l, 10, "Center"); + } else if (a == EWL_ALIGNMENT_CENTER) { + a = EWL_ALIGNMENT_BOTTOM; + snprintf(l, 10, "Bottom"); + } else if (a == EWL_ALIGNMENT_BOTTOM) { + a = EWL_ALIGNMENT_TOP; + snprintf(l, 10, "Top"); + } ewl_button_set_label(w, l); @@ -131,7 +120,8 @@ Ewl_Widget *hbox[3]; Ewl_Widget *hbox_button[2][3]; - ewl_callback_del(w, EWL_CALLBACK_CLICKED, __create_box_test_window); + ewl_callback_del(w, EWL_CALLBACK_CLICKED, + __create_box_test_window); box_button = w; @@ -155,7 +145,8 @@ ewl_widget_show(vbox[0]); vbox_button[0][0] = ewl_button_new("Left"); - ewl_container_append_child(EWL_CONTAINER(vbox[0]), vbox_button[0][0]); + ewl_container_append_child(EWL_CONTAINER(vbox[0]), + vbox_button[0][0]); ewl_object_set_custom_size(vbox_button[0][0], 100, 17); ewl_object_set_alignment(EWL_OBJECT(vbox_button[0][0]), EWL_ALIGNMENT_LEFT); @@ -164,7 +155,8 @@ ewl_widget_show(vbox_button[0][0]); vbox_button[0][1] = ewl_button_new("Center"); - ewl_container_append_child(EWL_CONTAINER(vbox[0]), vbox_button[0][1]); + ewl_container_append_child(EWL_CONTAINER(vbox[0]), + vbox_button[0][1]); ewl_object_set_custom_size(vbox_button[0][1], 100, 17); ewl_object_set_alignment(EWL_OBJECT(vbox_button[0][1]), EWL_ALIGNMENT_CENTER); @@ -173,7 +165,8 @@ ewl_widget_show(vbox_button[0][1]); vbox_button[0][2] = ewl_button_new("Right"); - ewl_container_append_child(EWL_CONTAINER(vbox[0]), vbox_button[0][2]); + ewl_container_append_child(EWL_CONTAINER(vbox[0]), + vbox_button[0][2]); ewl_object_set_custom_size(vbox_button[0][2], 100, 17); ewl_object_set_alignment(EWL_OBJECT(vbox_button[0][2]), EWL_ALIGNMENT_RIGHT); @@ -188,7 +181,8 @@ ewl_widget_show(vbox[1]); vbox_button[1][0] = ewl_button_new("Normal"); - ewl_container_append_child(EWL_CONTAINER(vbox[1]), vbox_button[1][0]); + ewl_container_append_child(EWL_CONTAINER(vbox[1]), + vbox_button[1][0]); ewl_object_set_custom_size(vbox_button[1][0], 100, 17); ewl_object_set_fill_policy(EWL_OBJECT(vbox_button[1][0]), EWL_FILL_POLICY_NORMAL); @@ -197,7 +191,8 @@ ewl_widget_show(vbox_button[1][0]); vbox_button[1][1] = ewl_button_new("Fill"); - ewl_container_append_child(EWL_CONTAINER(vbox[1]), vbox_button[1][1]); + ewl_container_append_child(EWL_CONTAINER(vbox[1]), + vbox_button[1][1]); ewl_object_set_fill_policy(EWL_OBJECT(vbox_button[1][1]), EWL_FILL_POLICY_FILL); ewl_callback_append(vbox_button[1][1], EWL_CALLBACK_CLICKED, @@ -205,7 +200,8 @@ ewl_widget_show(vbox_button[1][1]); vbox_button[1][2] = ewl_button_new("Normal"); - ewl_container_append_child(EWL_CONTAINER(vbox[1]), vbox_button[1][2]); + ewl_container_append_child(EWL_CONTAINER(vbox[1]), + vbox_button[1][2]); ewl_object_set_custom_size(vbox_button[1][2], 100, 17); ewl_object_set_fill_policy(EWL_OBJECT(vbox_button[1][2]), EWL_FILL_POLICY_NORMAL); @@ -220,7 +216,8 @@ ewl_widget_show(hbox[1]); hbox_button[0][0] = ewl_button_new("Top"); - ewl_container_append_child(EWL_CONTAINER(hbox[1]), hbox_button[0][0]); + ewl_container_append_child(EWL_CONTAINER(hbox[1]), + hbox_button[0][0]); ewl_object_set_custom_size(hbox_button[0][0], 100, 17); ewl_object_set_alignment(EWL_OBJECT(hbox_button[0][0]), EWL_ALIGNMENT_TOP); @@ -229,7 +226,8 @@ ewl_widget_show(hbox_button[0][0]); hbox_button[0][1] = ewl_button_new("Center"); - ewl_container_append_child(EWL_CONTAINER(hbox[1]), hbox_button[0][1]); + ewl_container_append_child(EWL_CONTAINER(hbox[1]), + hbox_button[0][1]); ewl_object_set_custom_size(hbox_button[0][1], 100, 17); ewl_object_set_alignment(EWL_OBJECT(hbox_button[0][1]), EWL_ALIGNMENT_CENTER); @@ -238,7 +236,8 @@ ewl_widget_show(hbox_button[0][1]); hbox_button[0][2] = ewl_button_new("Bottom"); - ewl_container_append_child(EWL_CONTAINER(hbox[1]), hbox_button[0][2]); + ewl_container_append_child(EWL_CONTAINER(hbox[1]), + hbox_button[0][2]); ewl_object_set_custom_size(hbox_button[0][2], 100, 17); ewl_object_set_alignment(EWL_OBJECT(hbox_button[0][2]), EWL_ALIGNMENT_BOTTOM); @@ -253,7 +252,8 @@ ewl_widget_show(hbox[2]); hbox_button[1][0] = ewl_button_new("Normal"); - ewl_container_append_child(EWL_CONTAINER(hbox[2]), hbox_button[1][0]); + ewl_container_append_child(EWL_CONTAINER(hbox[2]), + hbox_button[1][0]); ewl_object_set_custom_size(hbox_button[1][0], 100, 17); ewl_object_set_fill_policy(EWL_OBJECT(hbox_button[1][0]), EWL_FILL_POLICY_NORMAL); @@ -262,7 +262,8 @@ ewl_widget_show(hbox_button[1][0]); hbox_button[1][1] = ewl_button_new("Fill"); - ewl_container_append_child(EWL_CONTAINER(hbox[2]), hbox_button[1][1]); + ewl_container_append_child(EWL_CONTAINER(hbox[2]), + hbox_button[1][1]); ewl_object_set_fill_policy(EWL_OBJECT(hbox_button[1][1]), EWL_FILL_POLICY_FILL); ewl_callback_append(hbox_button[1][1], EWL_CALLBACK_CLICKED, @@ -270,7 +271,8 @@ ewl_widget_show(hbox_button[1][1]); hbox_button[1][2] = ewl_button_new("Normal"); - ewl_container_append_child(EWL_CONTAINER(hbox[2]), hbox_button[1][2]); + ewl_container_append_child(EWL_CONTAINER(hbox[2]), + hbox_button[1][2]); ewl_object_set_custom_size(hbox_button[1][2], 100, 17); ewl_object_set_fill_policy(EWL_OBJECT(hbox_button[1][2]), EWL_FILL_POLICY_NORMAL); =================================================================== RCS file: /cvsroot/enlightenment/e17/libs/ewl/test/ewl_button_test.c,v retrieving revision 1.10 retrieving revision 1.11 diff -u -3 -r1.10 -r1.11 --- ewl_button_test.c 2001/10/02 02:03:27 1.10 +++ ewl_button_test.c 2001/10/03 06:17:28 1.11 @@ -6,7 +6,8 @@ void *user_data); void -__destroy_button_test_window(Ewl_Widget * w, void *ev_data, void *user_data) +__destroy_button_test_window(Ewl_Widget * w, void *ev_data, + void *user_data) { ewl_widget_destroy_recursive(w); @@ -47,13 +48,15 @@ button[0] = ewl_button_new("With Label"); ewl_container_append_child(EWL_CONTAINER(main_vbox), button[0]); - ewl_object_set_alignment(EWL_OBJECT(button[0]), EWL_ALIGNMENT_LEFT); + ewl_object_set_alignment(EWL_OBJECT(button[0]), + EWL_ALIGNMENT_LEFT); ewl_object_set_custom_size(EWL_OBJECT(button[0]), 100, 17); ewl_widget_show(button[0]); button[1] = ewl_button_new(NULL); ewl_container_append_child(EWL_CONTAINER(main_vbox), button[1]); - ewl_object_set_alignment(EWL_OBJECT(button[1]), EWL_ALIGNMENT_LEFT); + ewl_object_set_alignment(EWL_OBJECT(button[1]), + EWL_ALIGNMENT_LEFT); ewl_object_set_custom_size(EWL_OBJECT(button[1]), 100, 17); ewl_widget_show(button[1]); @@ -64,13 +67,15 @@ ewl_object_set_padding(EWL_OBJECT(separator[0]), 2, 2, 5, 5); check_button[0] = ewl_checkbutton_new("With Label"); - ewl_container_append_child(EWL_CONTAINER(main_vbox), check_button[0]); + ewl_container_append_child(EWL_CONTAINER(main_vbox), + check_button[0]); ewl_object_set_alignment(EWL_OBJECT(check_button[0]), EWL_ALIGNMENT_LEFT); ewl_widget_show(check_button[0]); check_button[1] = ewl_checkbutton_new(NULL); - ewl_container_append_child(EWL_CONTAINER(main_vbox), check_button[1]); + ewl_container_append_child(EWL_CONTAINER(main_vbox), + check_button[1]); ewl_object_set_alignment(EWL_OBJECT(check_button[1]), EWL_ALIGNMENT_LEFT); ewl_widget_show(check_button[1]); @@ -82,14 +87,16 @@ ewl_object_set_padding(EWL_OBJECT(separator[1]), 2, 2, 5, 5); radio_button[0] = ewl_radiobutton_new("With Label"); - ewl_container_append_child(EWL_CONTAINER(main_vbox), radio_button[0]); + ewl_container_append_child(EWL_CONTAINER(main_vbox), + radio_button[0]); ewl_object_set_alignment(EWL_OBJECT(radio_button[0]), EWL_ALIGNMENT_LEFT); ewl_widget_show(radio_button[0]); radio_button[1] = ewl_radiobutton_new(NULL); ewl_radiobutton_set_chain(radio_button[1], radio_button[0]); - ewl_container_append_child(EWL_CONTAINER(main_vbox), radio_button[1]); + ewl_container_append_child(EWL_CONTAINER(main_vbox), + radio_button[1]); ewl_object_set_alignment(EWL_OBJECT(radio_button[1]), EWL_ALIGNMENT_LEFT); ewl_widget_show(radio_button[1]); =================================================================== RCS file: /cvsroot/enlightenment/e17/libs/ewl/test/ewl_entry_test.c,v retrieving revision 1.6 retrieving revision 1.7 diff -u -3 -r1.6 -r1.7 --- ewl_entry_test.c 2001/10/02 02:03:27 1.6 +++ ewl_entry_test.c 2001/10/03 06:17:28 1.7 @@ -59,7 +59,8 @@ Ewl_Widget *button_hbox; Ewl_Widget *button[2]; - ewl_callback_del(w, EWL_CALLBACK_CLICKED, __create_entry_test_window); + ewl_callback_del(w, EWL_CALLBACK_CLICKED, + __create_entry_test_window); entry_button = w; =================================================================== RCS file: /cvsroot/enlightenment/e17/libs/ewl/test/ewl_image_test.c,v retrieving revision 1.2 retrieving revision 1.3 diff -u -3 -r1.2 -r1.3 --- ewl_image_test.c 2001/10/02 02:03:27 1.2 +++ ewl_image_test.c 2001/10/03 06:17:28 1.3 @@ -97,13 +97,11 @@ img = ewl_entry_get_text(entry_path); - if (img && __image_exists(img)) - { - ewd_dlist_append(images, img); - ewd_dlist_goto_last(images); - ewl_image_set_file(image, img); - } - else + if (img && __image_exists(img)) { + ewd_dlist_append(images, img); + ewd_dlist_goto_last(images); + ewl_image_set_file(image, img); + } else printf("ERROR: %s does not exist\n", img); @@ -149,7 +147,8 @@ Ewl_Widget *button_prev, *button_load, *button_next; char *image_file = NULL; - ewl_callback_del(w, EWL_CALLBACK_CLICKED, __create_image_test_window); + ewl_callback_del(w, EWL_CALLBACK_CLICKED, + __create_image_test_window); image_button = w; @@ -205,20 +204,25 @@ ewl_object_set_custom_size(EWL_OBJECT(button_load), 32, 32); ewl_object_set_custom_size(EWL_OBJECT(button_next), 32, 32); - ewl_container_append_child(EWL_CONTAINER(button_hbox), button_prev); - ewl_container_append_child(EWL_CONTAINER(button_hbox), button_load); - ewl_container_append_child(EWL_CONTAINER(button_hbox), button_next); + ewl_container_append_child(EWL_CONTAINER(button_hbox), + button_prev); + ewl_container_append_child(EWL_CONTAINER(button_hbox), + button_load); + ewl_container_append_child(EWL_CONTAINER(button_hbox), + button_next); image_file = NULL; - if ((__image_exists(PACKAGE_DATA_DIR "/images/button_prev.bits.db")) + if ((__image_exists + (PACKAGE_DATA_DIR "/images/button_prev.bits.db")) != -1) image_file = - strdup(PACKAGE_DATA_DIR - "/images/button_prev.bits.db"); - else if ((__image_exists("./data/images/button_prev.bits.db")) != -1) + strdup(PACKAGE_DATA_DIR "/images/button_prev.bits.db"); + else if ((__image_exists("./data/images/button_prev.bits.db")) != + -1) image_file = strdup("./data/images/button_prev.bits.db"); - else if ((__image_exists("../data/images/button_prev.bits.db")) != -1) + else if ((__image_exists("../data/images/button_prev.bits.db")) != + -1) image_file = strdup("../data/images/button_prev.bits.db"); ewl_theme_data_set(button_prev, "/appearance/button/default/base", @@ -226,14 +230,16 @@ IF_FREE(image_file); - if ((__image_exists(PACKAGE_DATA_DIR "/images/button_load.bits.db")) + if ((__image_exists + (PACKAGE_DATA_DIR "/images/button_load.bits.db")) != -1) image_file = - strdup(PACKAGE_DATA_DIR - "/images/button_load.bits.db"); - else if ((__image_exists("./data/images/button_load.bits.db")) != -1) + strdup(PACKAGE_DATA_DIR "/images/button_load.bits.db"); + else if ((__image_exists("./data/images/button_load.bits.db")) != + -1) image_file = strdup("./data/images/button_load.bits.db"); - else if ((__image_exists("../data/images/button_load.bits.db")) != -1) + else if ((__image_exists("../data/images/button_load.bits.db")) != + -1) image_file = strdup("../data/images/button_load.bits.db"); ewl_theme_data_set(button_load, "/appearance/button/default/base", @@ -241,14 +247,16 @@ IF_FREE(image_file); - if ((__image_exists(PACKAGE_DATA_DIR "/images/button_next.bits.db")) + if ((__image_exists + (PACKAGE_DATA_DIR "/images/button_next.bits.db")) != -1) image_file = - strdup(PACKAGE_DATA_DIR - "/images/button_next.bits.db"); - else if ((__image_exists("./data/images/button_next.bits.db")) != -1) + strdup(PACKAGE_DATA_DIR "/images/button_next.bits.db"); + else if ((__image_exists("./data/images/button_next.bits.db")) != + -1) image_file = strdup("./data/images/button_next.bits.db"); - else if ((__image_exists("../data/images/button_next.bits.db")) != -1) + else if ((__image_exists("../data/images/button_next.bits.db")) != + -1) image_file = strdup("../data/images/button_next.bits.db"); ewl_theme_data_set(button_next, "/appearance/button/default/base", @@ -269,13 +277,15 @@ image_file = NULL; - if ((__image_exists(PACKAGE_DATA_DIR "/images/e17-border.bits.db")) != - -1) + if ((__image_exists(PACKAGE_DATA_DIR "/images/e17-border.bits.db")) + != -1) image_file = - strdup(PACKAGE_DATA_DIR "/images/e17-border.bits.db"); - else if ((__image_exists("./data/images/e17-border.bits.db")) != -1) + strdup(PACKAGE_DATA_DIR "/images/e17-border.bits.db"); + else if ((__image_exists("./data/images/e17-border.bits.db")) != + -1) image_file = strdup("./data/images/e17-border.bits.db"); - else if ((__image_exists("../data/images/e17-border.bits.db")) != -1) + else if ((__image_exists("../data/images/e17-border.bits.db")) != + -1) image_file = strdup("../data/images/e17-border.bits.db"); if (image_file) =================================================================== RCS file: /cvsroot/enlightenment/e17/libs/ewl/test/ewl_notebook_test.c,v retrieving revision 1.2 retrieving revision 1.3 diff -u -3 -r1.2 -r1.3 --- ewl_notebook_test.c 2001/10/02 02:03:27 1.2 +++ ewl_notebook_test.c 2001/10/03 06:17:28 1.3 @@ -4,15 +4,18 @@ void __create_notebook_test_window(Ewl_Widget * w, void *ev_data, void *user_data); -void __notebook_append_page(Ewl_Widget * w, void *ev_data, void *user_data); -void __notebook_prepend_page(Ewl_Widget * w, void *ev_data, void *user_data); +void __notebook_append_page(Ewl_Widget * w, void *ev_data, + void *user_data); +void __notebook_prepend_page(Ewl_Widget * w, void *ev_data, + void *user_data); Ewl_Widget *button_aleft, *button_acenter, *button_aright, *button_atop, - *button_abottom; + *button_abottom; Ewl_Widget *button_pleft, *button_pright, *button_ptop, *button_pbottom; void -__destroy_notebook_test_window(Ewl_Widget * w, void *ev_data, void *user_data) +__destroy_notebook_test_window(Ewl_Widget * w, void *ev_data, + void *user_data) { ewl_widget_destroy_recursive(w); @@ -40,7 +43,8 @@ ewl_notebook_set_tabs_alignment(user_data, EWL_ALIGNMENT_RIGHT); else if (w == button_atop) - ewl_notebook_set_tabs_alignment(user_data, EWL_ALIGNMENT_TOP); + ewl_notebook_set_tabs_alignment(user_data, + EWL_ALIGNMENT_TOP); else if (w == button_abottom) ewl_notebook_set_tabs_alignment(user_data, EWL_ALIGNMENT_BOTTOM); @@ -56,11 +60,14 @@ return; if (w == button_pleft) - ewl_notebook_set_tabs_position(user_data, EWL_POSITION_LEFT); + ewl_notebook_set_tabs_position(user_data, + EWL_POSITION_LEFT); else if (w == button_pright) - ewl_notebook_set_tabs_position(user_data, EWL_POSITION_RIGHT); + ewl_notebook_set_tabs_position(user_data, + EWL_POSITION_RIGHT); else if (w == button_ptop) - ewl_notebook_set_tabs_position(user_data, EWL_POSITION_TOP); + ewl_notebook_set_tabs_position(user_data, + EWL_POSITION_TOP); else if (w == button_pbottom) ewl_notebook_set_tabs_position(user_data, EWL_POSITION_BOTTOM); @@ -88,8 +95,8 @@ main_vbox = ewl_vbox_new(); ewl_box_set_spacing(main_vbox, 10); - ewl_theme_data_set(main_vbox, "/appearance/box/vertical/base/visible", - "no"); + ewl_theme_data_set(main_vbox, + "/appearance/box/vertical/base/visible", "no"); ewl_widget_show(main_vbox); text = ewl_text_new(); @@ -211,8 +218,8 @@ main_vbox = ewl_vbox_new(); ewl_box_set_spacing(main_vbox, 10); - ewl_theme_data_set(main_vbox, "/appearance/box/vertical/base/visible", - "no"); + ewl_theme_data_set(main_vbox, + "/appearance/box/vertical/base/visible", "no"); ewl_widget_show(main_vbox); text = ewl_text_new(); @@ -247,7 +254,8 @@ button[2] = ewl_button_new("Remove This Page"); ewl_object_set_custom_size(button[2], 110, 17); - ewl_object_set_alignment(EWL_OBJECT(button[2]), EWL_ALIGNMENT_CENTER); + ewl_object_set_alignment(EWL_OBJECT(button[2]), + EWL_ALIGNMENT_CENTER); ewl_container_append_child(EWL_CONTAINER(main_vbox), button[2]); ewl_widget_show(button[2]); @@ -292,7 +300,8 @@ } void -__create_notebook_test_window(Ewl_Widget * w, void *ev_data, void *user_data) +__create_notebook_test_window(Ewl_Widget * w, void *ev_data, + void *user_data) { Ewl_Widget *notebook_win; Ewl_Widget *notebook; =================================================================== RCS file: /cvsroot/enlightenment/e17/libs/ewl/test/ewl_seeker_test.c,v retrieving revision 1.2 retrieving revision 1.3 diff -u -3 -r1.2 -r1.3 --- ewl_seeker_test.c 2001/10/02 02:03:27 1.2 +++ ewl_seeker_test.c 2001/10/03 06:17:28 1.3 @@ -7,7 +7,8 @@ void -__destroy_seeker_test_window(Ewl_Widget * w, void *ev_data, void *user_data) +__destroy_seeker_test_window(Ewl_Widget * w, void *ev_data, + void *user_data) { ewl_widget_destroy_recursive(w); =================================================================== RCS file: /cvsroot/enlightenment/e17/libs/ewl/test/ewl_spinner_test.c,v retrieving revision 1.2 retrieving revision 1.3 diff -u -3 -r1.2 -r1.3 --- ewl_spinner_test.c 2001/10/02 02:03:27 1.2 +++ ewl_spinner_test.c 2001/10/03 06:17:28 1.3 @@ -8,11 +8,12 @@ void __create_spinner_test_window(Ewl_Widget * w, void *ev_data, void *user_data); void -__spinner_main_window_configure(Ewl_Widget * w, void *ev_data, - void *user_data); + __spinner_main_window_configure(Ewl_Widget * w, void *ev_data, + void *user_data); void -__destroy_spinner_test_window(Ewl_Widget * w, void *ev_data, void *user_data) +__destroy_spinner_test_window(Ewl_Widget * w, void *ev_data, + void *user_data) { ewl_widget_destroy_recursive(w); @@ -90,7 +91,8 @@ } void -__create_spinner_test_window(Ewl_Widget * w, void *ev_data, void *user_data) +__create_spinner_test_window(Ewl_Widget * w, void *ev_data, + void *user_data) { Ewl_Widget *spinner_win; Ewl_Widget *main_vbox; =================================================================== RCS file: /cvsroot/enlightenment/e17/libs/ewl/test/ewl_test.c,v retrieving revision 1.23 retrieving revision 1.24 diff -u -3 -r1.23 -r1.24 --- ewl_test.c 2001/10/02 02:03:27 1.23 +++ ewl_test.c 2001/10/03 06:17:28 1.24 @@ -5,7 +5,8 @@ void __close_main_widow(Ewl_Widget * w, void *ev_data, void *user_data); -void __create_box_test_window(Ewl_Widget * w, void *ev_data, void *user_data); +void __create_box_test_window(Ewl_Widget * w, void *ev_data, + void *user_data); void __create_button_test_window(Ewl_Widget * w, void *ev_data, void *user_data); @@ -25,6 +26,9 @@ void __create_spinner_test_window(Ewl_Widget * w, void *ev_data, void *user_data); +void __create_table_test_window(Ewl_Widget * w, void *ev_data, + void *user_data); + void __create_text_test_window(Ewl_Widget * w, void *ev_data, void *user_data); @@ -63,7 +67,8 @@ ewl_box_set_spacing(main_hbox, 5); ewl_container_append_child(EWL_CONTAINER(main_win), main_hbox); ewl_theme_data_set(main_hbox, - "/appearance/box/horizontal/base/visible", "no"); + "/appearance/box/horizontal/base/visible", + "no"); ewl_widget_show(main_hbox); vbox = ewl_vbox_new(); @@ -117,10 +122,8 @@ button[6] = ewl_button_new("Ewl_Seeker"); ewl_object_set_custom_size(EWL_OBJECT(button[6]), 100, 17); ewl_container_append_child(EWL_CONTAINER(vbox), button[6]); - -/* Nothing to see here yet ewl_callback_append(button[6], EWL_CALLBACK_CLICKED, - __create_seeker_test_window, NULL);*/ + __create_seeker_test_window, NULL); ewl_widget_show(button[6]); button[7] = ewl_button_new("Ewl_Spinner"); @@ -133,6 +136,10 @@ button[8] = ewl_button_new("Ewl_Table"); ewl_object_set_custom_size(EWL_OBJECT(button[8]), 100, 17); ewl_container_append_child(EWL_CONTAINER(vbox), button[8]); + + ewl_callback_append(button[8], EWL_CALLBACK_CLICKED, + __create_table_test_window, NULL); + ewl_widget_show(button[8]); button[9] = ewl_button_new("Ewl_Text"); @@ -144,11 +151,10 @@ ewl_widget_show(button[9]); - for (i = 0; i < 10; i++) - { - ewl_object_set_alignment(EWL_OBJECT(button[i]), - EWL_ALIGNMENT_CENTER); - } + for (i = 0; i < 10; i++) { + ewl_object_set_alignment(EWL_OBJECT(button[i]), + EWL_ALIGNMENT_CENTER); + } ewl_main(); return 1; =================================================================== RCS file: /cvsroot/enlightenment/e17/libs/ewl/test/ewl_text_test.c,v retrieving revision 1.5 retrieving revision 1.6 diff -u -3 -r1.5 -r1.6 --- ewl_text_test.c 2001/10/02 02:03:27 1.5 +++ ewl_text_test.c 2001/10/03 06:17:28 1.6 @@ -26,7 +26,8 @@ Ewl_Widget *main_vbox; Ewl_Widget *text; - ewl_callback_del(w, EWL_CALLBACK_CLICKED, __create_text_test_window); + ewl_callback_del(w, EWL_CALLBACK_CLICKED, + __create_text_test_window); text_button = w; |
From: E C. L. <enl...@so...> - 2001-10-03 06:17:56
|
Enlightenment CVS committal Author : rbdpngn Project : e17 Module : libs/ewl Dir : e17/libs/ewl Modified Files: COPYING Makefile.am configure.ac configure.in Log Message: The furthest reaching change is the addition of debugging levels to the debugging macros. Quite a few minor bug fixes as well as adding the beginnings of the scrollbars. Scrollbars work, but there are a couple issues that still need to be worked out with the box code it inherits. =================================================================== RCS file: /cvsroot/enlightenment/e17/libs/ewl/COPYING,v retrieving revision 1.1.1.1 retrieving revision 1.2 diff -u -3 -r1.1.1.1 -r1.2 --- COPYING 2001/04/14 01:16:13 1.1.1.1 +++ COPYING 2001/10/03 06:17:26 1.2 @@ -1,4 +1,5 @@ -Copyright (C) 2000 Carsten Haitzler and various contributors (see AUTHORS) +Copyright (C) 2000 Nathan Ingersoll, Christopher Rosendahl and various +contributors (see AUTHORS) Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to =================================================================== RCS file: /cvsroot/enlightenment/e17/libs/ewl/Makefile.am,v retrieving revision 1.7 retrieving revision 1.8 diff -u -3 -r1.7 -r1.8 --- Makefile.am 2001/09/28 07:09:44 1.7 +++ Makefile.am 2001/10/03 06:17:26 1.8 @@ -1,6 +1,6 @@ ## Process this file with automake to produce Makefile.in -SUBDIRS = src test tools +SUBDIRS = src test scripts tools MAINTAINERCLEANFILES = Makefile.in aclocal.m4 config.guess \ config.h.in config.sub configure install-sh \ =================================================================== RCS file: /cvsroot/enlightenment/e17/libs/ewl/configure.ac,v retrieving revision 1.3 retrieving revision 1.4 diff -u -3 -r1.3 -r1.4 --- configure.ac 2001/09/28 19:16:00 1.3 +++ configure.ac 2001/10/03 06:17:26 1.4 @@ -122,6 +122,7 @@ ewl-config src/Makefile test/Makefile +scripts/Makefile tools/Makefile tools/ewl_config/Makefile ]) =================================================================== RCS file: /cvsroot/enlightenment/e17/libs/ewl/configure.in,v retrieving revision 1.11 retrieving revision 1.12 diff -u -3 -r1.11 -r1.12 --- configure.in 2001/09/28 19:16:00 1.11 +++ configure.in 2001/10/03 06:17:26 1.12 @@ -121,6 +121,7 @@ ewl-config src/Makefile test/Makefile +scripts/Makefile tools/Makefile tools/ewl_config/Makefile ], [ |
From: E C. L. <enl...@so...> - 2001-10-03 06:17:59
|
Enlightenment CVS committal Author : rbdpngn Project : e17 Module : libs/ewl Dir : e17/libs/ewl/src Modified Files: Ewl.h Makefile.am ewl_box.c ewl_box.h ewl_button.c ewl_button.h ewl_callback.c ewl_callback.h ewl_checkbutton.c ewl_checkbutton.h ewl_config.c ewl_config.h ewl_container.c ewl_container.h ewl_cursor.c ewl_cursor.h ewl_debug.h ewl_entry.c ewl_entry.h ewl_enums.h ewl_events.c ewl_events.h ewl_fx.c ewl_fx.h ewl_image.c ewl_image.h ewl_list.c ewl_list.h ewl_macros.h ewl_misc.c ewl_misc.h ewl_notebook.c ewl_notebook.h ewl_object.c ewl_object.h ewl_radiobutton.c ewl_radiobutton.h ewl_seeker.c ewl_seeker.h ewl_selection.c ewl_selection.h ewl_separator.c ewl_separator.h ewl_spinner.c ewl_spinner.h ewl_table.c ewl_table.h ewl_text.c ewl_text.h ewl_theme.c ewl_theme.h ewl_widget.c ewl_widget.h ewl_window.c ewl_window.h getopt.c getopt.h getopt1.c Log Message: The furthest reaching change is the addition of debugging levels to the debugging macros. Quite a few minor bug fixes as well as adding the beginnings of the scrollbars. Scrollbars work, but there are a couple issues that still need to be worked out with the box code it inherits. =================================================================== RCS file: /cvsroot/enlightenment/e17/libs/ewl/src/Ewl.h,v retrieving revision 1.15 retrieving revision 1.16 diff -u -3 -r1.15 -r1.16 --- Ewl.h 2001/09/28 03:12:38 1.15 +++ Ewl.h 2001/10/03 06:17:27 1.16 @@ -1,3 +1,6 @@ +#ifndef _EWL_H +#define _EWL_H + #include <Ebits.h> #include <Ecore.h> #include <Edb.h> @@ -46,6 +49,7 @@ #include <ewl_fx.h> #include <ewl_seeker.h> +#include <ewl_scrollbar.h> #include <ewl_spinner.h> #include <ewl_list.h> #include <ewl_image.h> @@ -55,3 +59,5 @@ #include <ewl_selection.h> #include <ewl_separator.h> #include <ewl_notebook.h> + +#endif =================================================================== RCS file: /cvsroot/enlightenment/e17/libs/ewl/src/Makefile.am,v retrieving revision 1.19 retrieving revision 1.20 diff -u -3 -r1.19 -r1.20 --- Makefile.am 2001/09/28 19:16:00 1.19 +++ Makefile.am 2001/10/03 06:17:27 1.20 @@ -27,6 +27,7 @@ ewl_notebook.h \ ewl_object.h \ ewl_radiobutton.h \ + ewl_scrollbar.h \ ewl_seeker.h \ ewl_selection.h \ ewl_separator.h \ @@ -54,6 +55,7 @@ ewl_notebook.c \ ewl_object.c \ ewl_radiobutton.c \ + ewl_scrollbar.c \ ewl_seeker.c \ ewl_selection.c \ ewl_separator.c \ =================================================================== RCS file: /cvsroot/enlightenment/e17/libs/ewl/src/ewl_box.c,v retrieving revision 1.27 retrieving revision 1.28 diff -u -3 -r1.27 -r1.28 --- ewl_box.c 2001/10/03 04:19:16 1.27 +++ ewl_box.c 2001/10/03 06:17:27 1.28 @@ -15,36 +15,44 @@ int rw); static void __ewl_vbox_layout_children(Ewl_Widget * w); -/* - * Create and initialize a new box container with the specified orientation +/** + * ewl_box_new - alloacte and initialize a new box with orientation + * + * @o: the orientation for the box's layout + * + * Returns NULL on failure, or a newly allocated box on success. */ Ewl_Widget * ewl_box_new(Ewl_Orientation o) { Ewl_Box *b; - DENTER_FUNCTION; + DENTER_FUNCTION(DLEVEL_STABLE); b = NEW(Ewl_Box, 1); if (!b) - DRETURN_PTR(NULL); + DRETURN_PTR(NULL, DLEVEL_STABLE); memset(b, 0, sizeof(Ewl_Box)); ewl_box_init(b, o); - DRETURN_PTR(EWL_WIDGET(b)); + DRETURN_PTR(EWL_WIDGET(b), DLEVEL_STABLE); } -/* - * Initialize the specified box to sane starting values and the given - * orientation +/** + * ewl_box_init - initialize the box to starting values + * + * @b: the box to initialize + * @o: the orientation for the box to layout child widgets + * + * Returns no value. */ void ewl_box_init(Ewl_Box * b, Ewl_Orientation o) { Ewl_Widget *w; - DENTER_FUNCTION; + DENTER_FUNCTION(DLEVEL_STABLE); DCHECK_PARAM_PTR("b", b); w = EWL_WIDGET(b); @@ -61,36 +69,41 @@ ewl_object_set_fill_policy(EWL_OBJECT(b), EWL_FILL_POLICY_FILL); - ewl_callback_append(w, EWL_CALLBACK_CONFIGURE, __ewl_box_configure, - NULL); + ewl_callback_prepend(w, EWL_CALLBACK_CONFIGURE, + __ewl_box_configure, NULL); /* * Set the box's appropriate orientation */ b->orientation = o; - DLEAVE_FUNCTION; + DLEAVE_FUNCTION(DLEVEL_STABLE); } -/* - * Change the specified box's orientation +/** + * ewl_box_set_orientation - change the specified box's orientation + * + * @b: the box to change the orientation + * @o: the orientation to set for the box + * + * Returns no value. */ void -ewl_box_set_orientation(Ewl_Widget * w, Ewl_Orientation o) +ewl_box_set_orientation(Ewl_Box * b, Ewl_Orientation o) { - Ewl_Box *b; + Ewl_Widget *w; - DENTER_FUNCTION; - DCHECK_PARAM_PTR("w", w); + DENTER_FUNCTION(DLEVEL_STABLE); + DCHECK_PARAM_PTR("b", b); - b = EWL_BOX(w); + w = EWL_WIDGET(b); /* * Set the orientation and reconfigure the widget so that child * widgets now have the new orientation layout */ if (b->orientation == o) - DRETURN; + DRETURN(DLEVEL_STABLE); b->orientation = o; if (b->orientation == EWL_ORIENTATION_VERTICAL) @@ -100,33 +113,38 @@ ewl_widget_configure(w); - DLEAVE_FUNCTION; + DLEAVE_FUNCTION(DLEVEL_STABLE); } -/* - * Adjust the spacing between the objects in the box +/** + * ewl_box_set_spacing - changes the spacing between the objects in the box + * + * @b: the box to change the spacing + * @s: the spacing to put between the child widgets + * + * Returns no value. */ void -ewl_box_set_spacing(Ewl_Widget * w, unsigned int s) +ewl_box_set_spacing(Ewl_Box * b, int s) { - Ewl_Box *b; + Ewl_Widget *w; - DENTER_FUNCTION; - DCHECK_PARAM_PTR("w", w); + DENTER_FUNCTION(DLEVEL_STABLE); + DCHECK_PARAM_PTR("b", b); - b = EWL_BOX(w); + w = EWL_WIDGET(b); b->spacing = s; ewl_widget_configure(w); - DLEAVE_FUNCTION; + DLEAVE_FUNCTION(DLEVEL_STABLE); } void __ewl_box_configure(Ewl_Widget * w, void *ev_data, void *user_data) { - DENTER_FUNCTION; + DENTER_FUNCTION(DLEVEL_STABLE); DCHECK_PARAM_PTR("w", w); if (EWL_BOX(w)->orientation == EWL_ORIENTATION_VERTICAL) @@ -134,7 +152,7 @@ else __ewl_hbox_configure_children(w); - DLEAVE_FUNCTION; + DLEAVE_FUNCTION(DLEVEL_STABLE); } static void @@ -143,7 +161,7 @@ Ewd_List *f; int rh; - DENTER_FUNCTION; + DENTER_FUNCTION(DLEVEL_STABLE); DCHECK_PARAM_PTR("w", w); f = __ewl_vbox_configure_normal(w, &rh); @@ -153,7 +171,7 @@ __ewl_vbox_layout_children(w); - DLEAVE_FUNCTION; + DLEAVE_FUNCTION(DLEVEL_STABLE); } static Ewd_List * @@ -164,7 +182,7 @@ Ewl_Widget *c; int ll = 0, rr = 0, tt = 0, bb = 0; - DENTER_FUNCTION; + DENTER_FUNCTION(DLEVEL_STABLE); DCHECK_PARAM_PTR_RET("w", w, NULL); box = EWL_BOX(w); @@ -176,39 +194,37 @@ ewd_list_goto_first(EWL_CONTAINER(w)->children); - while ((c = ewd_list_next(EWL_CONTAINER(w)->children)) != NULL) - { - if (EWL_OBJECT(c)->fill & EWL_FILL_POLICY_FILL) - { - if (!f) - f = ewd_list_new(); - - ewd_list_append(f, c); - - continue; - } - - if (MAXIMUM_W(c) && MAXIMUM_W(c) < CURRENT_W(c)) - REQUEST_W(c) = MAXIMUM_W(c); - else if (MINIMUM_W(c) && MINIMUM_W(c) > CURRENT_W(c)) - REQUEST_W(c) = MINIMUM_W(c); - else - REQUEST_W(c) = CURRENT_W(c); - - if (MAXIMUM_H(c) && MAXIMUM_H(c) < CURRENT_H(c)) - REQUEST_H(c) = MAXIMUM_H(c); - else if (MINIMUM_H(c) && MINIMUM_H(c) > CURRENT_H(c)) - REQUEST_H(c) = MINIMUM_H(c); - else - REQUEST_H(c) = CURRENT_H(c); - - *rh -= REQUEST_H(c) + box->spacing; - *rh -= c->object.padd.t + c->object.padd.b; - } + while ((c = ewd_list_next(EWL_CONTAINER(w)->children)) != NULL) { + if (EWL_OBJECT(c)->fill & EWL_FILL_POLICY_FILL) { + if (!f) + f = ewd_list_new(); + + ewd_list_append(f, c); + + continue; + } + + if (MAXIMUM_W(c) && MAXIMUM_W(c) < CURRENT_W(c)) + REQUEST_W(c) = MAXIMUM_W(c); + else if (MINIMUM_W(c) && MINIMUM_W(c) > CURRENT_W(c)) + REQUEST_W(c) = MINIMUM_W(c); + else + REQUEST_W(c) = CURRENT_W(c); + + if (MAXIMUM_H(c) && MAXIMUM_H(c) < CURRENT_H(c)) + REQUEST_H(c) = MAXIMUM_H(c); + else if (MINIMUM_H(c) && MINIMUM_H(c) > CURRENT_H(c)) + REQUEST_H(c) = MINIMUM_H(c); + else + REQUEST_H(c) = CURRENT_H(c); + + *rh -= REQUEST_H(c) + box->spacing; + *rh -= c->object.padd.t + c->object.padd.b; + } return f; - DLEAVE_FUNCTION; + DLEAVE_FUNCTION(DLEVEL_STABLE); } static void @@ -220,7 +236,7 @@ int children = 0, rchildren = 0; int nfh = 0; - DENTER_FUNCTION; + DENTER_FUNCTION(DLEVEL_STABLE); DCHECK_PARAM_PTR("w", w); b = EWL_BOX(w); @@ -232,52 +248,50 @@ rchildren = children; nh = (rh - (rchildren - 1) * b->spacing) / children; + + if (children > 1) { + ewd_list_goto_first(f); - if (children > 1) - { - ewd_list_goto_first(f); - - while ((c = ewd_list_next(f)) != NULL) - { - if (MAXIMUM_H(c) && MAXIMUM_H(c) < nh) - nfh += MAXIMUM_H(c); - else if (MINIMUM_H(c) && MINIMUM_H(c) > nh) - nfh -= MINIMUM_H(c); - else - continue; + while ((c = ewd_list_next(f)) != NULL) { + if (MAXIMUM_H(c) && MAXIMUM_H(c) < nh) + nfh += MAXIMUM_H(c); + else if (MINIMUM_H(c) && MINIMUM_H(c) > nh) + nfh -= MINIMUM_H(c); + else + continue; - --children; - } + --children; + } - } + } if (children) - nh = ((rh - nfh) - (rchildren - 1) * b->spacing) / children; + nh = ((rh - nfh) - + (rchildren - 1) * b->spacing) / children; ewd_list_goto_first(f); - while ((c = ewd_list_next(f)) != NULL) - { - if (MAXIMUM_W(c) && MAXIMUM_W(c) < REQUEST_W(w) - ll - rr) - REQUEST_W(c) = MAXIMUM_W(c); - else if (MINIMUM_W(c) - && MINIMUM_W(c) > REQUEST_W(w) - ll - rr) - REQUEST_W(c) = MINIMUM_W(c); - else - REQUEST_W(c) = - REQUEST_W(w) - ll - rr - c->object.padd.l - - c->object.padd.r; - - if (MAXIMUM_H(c) && MAXIMUM_H(c) < nh) - REQUEST_H(c) = MAXIMUM_H(c); - else if (MINIMUM_H(c) && MINIMUM_H(c) > nh) - REQUEST_H(c) = MINIMUM_H(c); - else - REQUEST_H(c) = - nh - c->object.padd.t - c->object.padd.b; - } + while ((c = ewd_list_next(f)) != NULL) { + if (MAXIMUM_W(c) && MAXIMUM_W(c) < REQUEST_W(w) - ll - rr) + REQUEST_W(c) = MAXIMUM_W(c); + else if (MINIMUM_W(c) + && MINIMUM_W(c) > REQUEST_W(w) - ll - rr) + REQUEST_W(c) = MINIMUM_W(c); + else + REQUEST_W(c) = + REQUEST_W(w) - ll - rr - c->object.padd.l - + c->object.padd.r; + + if (MAXIMUM_H(c) && MAXIMUM_H(c) < nh) + REQUEST_H(c) = MAXIMUM_H(c); + else if (MINIMUM_H(c) && MINIMUM_H(c) > nh) + REQUEST_H(c) = MINIMUM_H(c); + else + REQUEST_H(c) = + nh - c->object.padd.t - c->object.padd.b; + } - DLEAVE_FUNCTION; + DLEAVE_FUNCTION(DLEVEL_STABLE); } static void @@ -287,7 +301,7 @@ Ewl_Widget *c; int y, l = 0, r = 0, t = 0, b = 0; - DENTER_FUNCTION; + DENTER_FUNCTION(DLEVEL_STABLE); DCHECK_PARAM_PTR("w", w); box = EWL_BOX(w); @@ -299,53 +313,50 @@ if (!EWL_CONTAINER(w)->children || ewd_list_is_empty(EWL_CONTAINER(w)->children)) - DRETURN; + DRETURN(DLEVEL_STABLE); ewd_list_goto_first(EWL_CONTAINER(w)->children); - while ((c = ewd_list_next(EWL_CONTAINER(w)->children)) != NULL) - { - /* - * If the child is bigger then the box, align it left - */ - if (REQUEST_W(c) > REQUEST_W(w) - l - r) - REQUEST_X(c) = REQUEST_X(w) + l + c->object.padd.l; - /* - * Left alignment - */ - else if (EWL_OBJECT(c)->align & EWL_ALIGNMENT_LEFT) - REQUEST_X(c) = REQUEST_X(w) + l + c->object.padd.l; - /* - * Right - */ - else if (EWL_OBJECT(c)->align & EWL_ALIGNMENT_RIGHT) - { - REQUEST_X(c) = - REQUEST_X(w) + REQUEST_W(w) - l + - c->object.padd.l; - REQUEST_X(c) -= REQUEST_W(c); - } - /* - * Center or unknown - */ - else - { - REQUEST_X(c) = REQUEST_X(w) + c->object.padd.l; - REQUEST_X(c) += (REQUEST_W(w) / 2) - - (REQUEST_W(c) / 2); - } - - REQUEST_Y(c) = y + c->object.padd.t; - /* - * Update y so the next child comes beneath it - */ - y = REQUEST_Y(c) + REQUEST_H(c) + box->spacing + - c->object.padd.b; + while ((c = ewd_list_next(EWL_CONTAINER(w)->children)) != NULL) { + /* + * If the child is bigger then the box, align it left + */ + if (REQUEST_W(c) > REQUEST_W(w) - l - r) + REQUEST_X(c) = REQUEST_X(w) + l + c->object.padd.l; + /* + * Left alignment + */ + else if (EWL_OBJECT(c)->align & EWL_ALIGNMENT_LEFT) + REQUEST_X(c) = REQUEST_X(w) + l + c->object.padd.l; + /* + * Right + */ + else if (EWL_OBJECT(c)->align & EWL_ALIGNMENT_RIGHT) { + REQUEST_X(c) = + REQUEST_X(w) + REQUEST_W(w) - l + + c->object.padd.l; + REQUEST_X(c) -= REQUEST_W(c); + } + /* + * Center + */ + else { + REQUEST_X(c) = REQUEST_X(w) + c->object.padd.l; + REQUEST_X(c) += (REQUEST_W(w) / 2) - + (REQUEST_W(c) / 2); + } + + REQUEST_Y(c) = y + c->object.padd.t; + /* + * Update y so the next child comes beneath it + */ + y = REQUEST_Y(c) + REQUEST_H(c) + box->spacing + + c->object.padd.b; - ewl_widget_configure(c); - } + ewl_widget_configure(c); + } - DLEAVE_FUNCTION; + DLEAVE_FUNCTION(DLEVEL_STABLE); } @@ -356,7 +367,7 @@ Ewd_List *f; int rw; - DENTER_FUNCTION; + DENTER_FUNCTION(DLEVEL_STABLE); DCHECK_PARAM_PTR("w", w); f = __ewl_hbox_configure_normal(w, &rw); @@ -366,7 +377,7 @@ __ewl_hbox_layout_children(w); - DLEAVE_FUNCTION; + DLEAVE_FUNCTION(DLEVEL_STABLE); } static Ewd_List * @@ -377,7 +388,7 @@ Ewl_Widget *c; int ll = 0, rr = 0, tt = 0, bb = 0; - DENTER_FUNCTION; + DENTER_FUNCTION(DLEVEL_STABLE); DCHECK_PARAM_PTR_RET("w", w, NULL); box = EWL_BOX(w); @@ -389,39 +400,37 @@ ewd_list_goto_first(EWL_CONTAINER(w)->children); - while ((c = ewd_list_next(EWL_CONTAINER(w)->children)) != NULL) - { - if (EWL_OBJECT(c)->fill & EWL_FILL_POLICY_FILL) - { - if (!f) - f = ewd_list_new(); - - ewd_list_append(f, c); - - continue; - } - - if (MAXIMUM_H(c) < REQUEST_H(w) - tt - bb) - REQUEST_H(c) = MAXIMUM_H(c); - else if (MINIMUM_H(c) > REQUEST_H(w)) - REQUEST_H(c) = MINIMUM_H(c); - else - REQUEST_H(c) = CURRENT_H(c); - - if (MAXIMUM_W(c) < CURRENT_W(c)) - REQUEST_W(c) = MAXIMUM_W(c); - else if (MINIMUM_W(c) > CURRENT_W(c)) - REQUEST_W(c) = MINIMUM_W(c); - else - REQUEST_W(c) = CURRENT_W(c); - - *rw -= REQUEST_W(c) + box->spacing; - *rw -= c->object.padd.l + c->object.padd.r; - } + while ((c = ewd_list_next(EWL_CONTAINER(w)->children)) != NULL) { + if (EWL_OBJECT(c)->fill & EWL_FILL_POLICY_FILL) { + if (!f) + f = ewd_list_new(); + + ewd_list_append(f, c); + + continue; + } + + if (MAXIMUM_H(c) < REQUEST_H(w) - tt - bb) + REQUEST_H(c) = MAXIMUM_H(c); + else if (MINIMUM_H(c) > REQUEST_H(w)) + REQUEST_H(c) = MINIMUM_H(c); + else + REQUEST_H(c) = CURRENT_H(c); + + if (MAXIMUM_W(c) < CURRENT_W(c)) + REQUEST_W(c) = MAXIMUM_W(c); + else if (MINIMUM_W(c) > CURRENT_W(c)) + REQUEST_W(c) = MINIMUM_W(c); + else + REQUEST_W(c) = CURRENT_W(c); + + *rw -= REQUEST_W(c) + box->spacing; + *rw -= c->object.padd.l + c->object.padd.r; + } return f; - DLEAVE_FUNCTION; + DLEAVE_FUNCTION(DLEVEL_STABLE); } static void @@ -433,7 +442,7 @@ int children = 0, rchildren = 0; int nfw = 0; - DENTER_FUNCTION; + DENTER_FUNCTION(DLEVEL_STABLE); DCHECK_PARAM_PTR("w", w); b = EWL_BOX(w); @@ -445,52 +454,50 @@ rchildren = children; nw = (rw - (rchildren - 1) * b->spacing) / children; + + if (children > 1) { + ewd_list_goto_first(f); - if (children > 1) - { - ewd_list_goto_first(f); - - while ((c = ewd_list_next(f)) != NULL) - { - if (MAXIMUM_W(c) && MAXIMUM_W(c) < nw) - nfw += MAXIMUM_W(c); - else if (MINIMUM_W(c) && MINIMUM_W(c) > nw) - nfw -= MINIMUM_W(c); - else - continue; + while ((c = ewd_list_next(f)) != NULL) { + if (MAXIMUM_W(c) && MAXIMUM_W(c) < nw) + nfw += MAXIMUM_W(c); + else if (MINIMUM_W(c) && MINIMUM_W(c) > nw) + nfw -= MINIMUM_W(c); + else + continue; - --children; - } + --children; + } - } + } if (children) - nw = ((rw - nfw) - (rchildren - 1) * b->spacing) / children; + nw = ((rw - nfw) - + (rchildren - 1) * b->spacing) / children; ewd_list_goto_first(f); - while ((c = ewd_list_next(f)) != NULL) - { - if (MAXIMUM_H(c) && MAXIMUM_H(c) < REQUEST_H(w) - tt - bb) - REQUEST_H(c) = MAXIMUM_H(c); - else if (MINIMUM_H(c) - && MINIMUM_H(c) > REQUEST_W(w) - ll - rr) - REQUEST_H(c) = MINIMUM_H(w); - else - REQUEST_H(c) = - REQUEST_H(w) - ll - rr - c->object.padd.t - - c->object.padd.b; - - if (MAXIMUM_W(c) && MAXIMUM_W(c) < nw) - REQUEST_W(c) = MAXIMUM_W(c); - else if (MINIMUM_W(c) && MINIMUM_W(c) > nw) - REQUEST_W(c) = MINIMUM_W(c); - else - REQUEST_W(c) = - nw - c->object.padd.l - c->object.padd.r; - } + while ((c = ewd_list_next(f)) != NULL) { + if (MAXIMUM_H(c) && MAXIMUM_H(c) < REQUEST_H(w) - tt - bb) + REQUEST_H(c) = MAXIMUM_H(c); + else if (MINIMUM_H(c) + && MINIMUM_H(c) > REQUEST_W(w) - ll - rr) + REQUEST_H(c) = MINIMUM_H(w); + else + REQUEST_H(c) = + REQUEST_H(w) - ll - rr - c->object.padd.t - + c->object.padd.b; + + if (MAXIMUM_W(c) && MAXIMUM_W(c) < nw) + REQUEST_W(c) = MAXIMUM_W(c); + else if (MINIMUM_W(c) && MINIMUM_W(c) > nw) + REQUEST_W(c) = MINIMUM_W(c); + else + REQUEST_W(c) = + nw - c->object.padd.l - c->object.padd.r; + } - DLEAVE_FUNCTION; + DLEAVE_FUNCTION(DLEVEL_STABLE); } static void @@ -500,7 +507,7 @@ Ewl_Widget *c; int x, l = 0, r = 0, t = 0, b = 0; - DENTER_FUNCTION; + DENTER_FUNCTION(DLEVEL_STABLE); DCHECK_PARAM_PTR("w", w); box = EWL_BOX(w); @@ -512,47 +519,43 @@ if (!EWL_CONTAINER(w)->children || ewd_list_is_empty(EWL_CONTAINER(w)->children)) - DRETURN; + DRETURN(DLEVEL_STABLE); ewd_list_goto_first(EWL_CONTAINER(w)->children); - while ((c = ewd_list_next(EWL_CONTAINER(w)->children)) != NULL) - { - /* - * If the child is bigger then the box, align it to the TOP - */ - if (REQUEST_H(c) > REQUEST_H(w) - t - b) - REQUEST_Y(c) = REQUEST_Y(w) + t + c->object.padd.t; - else if (EWL_OBJECT(c)->align & EWL_ALIGNMENT_TOP) - REQUEST_Y(c) = REQUEST_Y(w) + t + c->object.padd.t; - /* - * Bottom - */ - else if (EWL_OBJECT(c)->align & EWL_ALIGNMENT_BOTTOM) - { - REQUEST_Y(c) = - REQUEST_Y(w) + REQUEST_H(w) - l - r; - REQUEST_Y(c) -= REQUEST_H(c); - REQUEST_Y(c) += c->object.padd.b; - } - /* - * Center or unknown - */ - else - { - REQUEST_Y(c) = REQUEST_Y(w); - REQUEST_Y(c) += (REQUEST_H(w) / 2) - - (REQUEST_H(c) / 2); - REQUEST_Y(c) += c->object.padd.t; - } - - REQUEST_X(c) = x + c->object.padd.l; + while ((c = ewd_list_next(EWL_CONTAINER(w)->children)) != NULL) { + /* + * If the child is bigger then the box, align it to the TOP + */ + if (REQUEST_H(c) > REQUEST_H(w) - t - b) + REQUEST_Y(c) = REQUEST_Y(w) + t + c->object.padd.t; + else if (EWL_OBJECT(c)->align & EWL_ALIGNMENT_TOP) + REQUEST_Y(c) = REQUEST_Y(w) + t + c->object.padd.t; + /* + * Bottom + */ + else if (EWL_OBJECT(c)->align & EWL_ALIGNMENT_BOTTOM) { + REQUEST_Y(c) = REQUEST_Y(w) + REQUEST_H(w) - l - r; + REQUEST_Y(c) -= REQUEST_H(c); + REQUEST_Y(c) += c->object.padd.b; + } + /* + * Center or unknown + */ + else { + REQUEST_Y(c) = REQUEST_Y(w); + REQUEST_Y(c) += (REQUEST_H(w) / 2) - + (REQUEST_H(c) / 2); + REQUEST_Y(c) += c->object.padd.t; + } + + REQUEST_X(c) = x + c->object.padd.l; - x = REQUEST_X(c) + REQUEST_W(c) + box->spacing; - x += c->object.padd.r; + x = REQUEST_X(c) + REQUEST_W(c) + box->spacing; + x += c->object.padd.r; - ewl_widget_configure(c); - } + ewl_widget_configure(c); + } - DLEAVE_FUNCTION; + DLEAVE_FUNCTION(DLEVEL_STABLE); } =================================================================== RCS file: /cvsroot/enlightenment/e17/libs/ewl/src/ewl_box.h,v retrieving revision 1.14 retrieving revision 1.15 diff -u -3 -r1.14 -r1.15 --- ewl_box.h 2001/09/20 01:08:44 1.14 +++ ewl_box.h 2001/10/03 06:17:27 1.15 @@ -13,8 +13,7 @@ #define EWL_BOX(box) ((Ewl_Box *) box) -struct _ewl_box -{ +struct _ewl_box { Ewl_Container container; Ewl_Orientation orientation; unsigned int spacing; @@ -26,8 +25,7 @@ Ewl_Widget *ewl_box_new(Ewl_Orientation orientation); void ewl_box_init(Ewl_Box * box, Ewl_Orientation orientation); -void ewl_box_set_orientation(Ewl_Widget * w, Ewl_Orientation o); -void ewl_box_set_spacing(Ewl_Widget * w, unsigned int spacing); -void ewl_box_child_set_padding(Ewl_Widget * w, int xp, int yp); +void ewl_box_set_orientation(Ewl_Box * b, Ewl_Orientation o); +void ewl_box_set_spacing(Ewl_Box * b, int spacing); -#endif /* __EWL_BOX_H__ */ +#endif /* __EWL_BOX_H__ */ =================================================================== RCS file: /cvsroot/enlightenment/e17/libs/ewl/src/ewl_button.c,v retrieving revision 1.23 retrieving revision 1.24 diff -u -3 -r1.23 -r1.24 --- ewl_button.c 2001/09/20 01:08:44 1.23 +++ ewl_button.c 2001/10/03 06:17:27 1.24 @@ -7,19 +7,27 @@ void __ewl_button_update_label(Ewl_Button * b); void __ewl_button_focus_in(Ewl_Widget * w, void *ev_data, void *user_data); -void __ewl_button_focus_out(Ewl_Widget * w, void *ev_data, void *user_data); -void __ewl_button_mouse_down(Ewl_Widget * w, void *ev_data, void *user_data); +void __ewl_button_focus_out(Ewl_Widget * w, void *ev_data, + void *user_data); +void __ewl_button_mouse_down(Ewl_Widget * w, void *ev_data, + void *user_data); void __ewl_button_mouse_up(Ewl_Widget * w, void *ev_data, void *user_data); void __ewl_button_theme_update(Ewl_Widget * w, void *ev_data, void *user_data); - +/** + * ewl_button_new - allocate and initialize a new button + * + * @label: the string to use as a label for the button + * + * Returns NULL on failure, a pointer to the new button on success + */ Ewl_Widget * ewl_button_new(char *label) { Ewl_Button *b; - DENTER_FUNCTION; + DENTER_FUNCTION(DLEVEL_STABLE); b = NEW(Ewl_Button, 1); if (!b) @@ -29,15 +37,23 @@ ewl_button_init(b, label); - DRETURN_PTR(EWL_WIDGET(b)); + DRETURN_PTR(EWL_WIDGET(b), DLEVEL_STABLE); } +/** + * ewl_button_init - initialize a button to starting values + * + * @b: the button to initialize + * @label: the string to use as the buttons label + * + * Returns no value. + */ void ewl_button_init(Ewl_Button * b, char *label) { Ewl_Widget *w; - DENTER_FUNCTION; + DENTER_FUNCTION(DLEVEL_STABLE); w = EWL_WIDGET(b); @@ -67,46 +83,49 @@ ewl_callback_append(w, EWL_CALLBACK_THEME_UPDATE, __ewl_button_theme_update, NULL); - if (label) - { - b->label = strdup(label); - b->label_object = ewl_text_new(); - ewl_text_set_text(b->label_object, label); - - ewl_object_set_alignment(EWL_OBJECT(b->label_object), - EWL_ALIGNMENT_CENTER); - ewl_container_append_child(EWL_CONTAINER(b), - b->label_object); - } + if (label) { + b->label = strdup(label); + b->label_object = ewl_text_new(); + ewl_text_set_text(b->label_object, label); + + ewl_object_set_alignment(EWL_OBJECT(b->label_object), + EWL_ALIGNMENT_CENTER); + ewl_container_append_child(EWL_CONTAINER(b), + b->label_object); + } - DLEAVE_FUNCTION; + DLEAVE_FUNCTION(DLEVEL_STABLE); } -/* - * Change the label of the specified button +/** + * ewl_button_set_label - change the label of the specified button + * + * @b: the buttons whose label will be changed + * @l: the new label for the button + * + * Returns no value. */ void -ewl_button_set_label(Ewl_Widget * w, char *l) +ewl_button_set_label(Ewl_Button * b, char *l) { - Ewl_Button *b; + Ewl_Widget *w; - DENTER_FUNCTION; - DCHECK_PARAM_PTR("w", w); + DENTER_FUNCTION(DLEVEL_STABLE); + DCHECK_PARAM_PTR("b", b); - b = EWL_BUTTON(w); + w = EWL_WIDGET(b); - if (!l) - { - __ewl_button_remove_label(b); - DRETURN; - } + if (!l) { + __ewl_button_remove_label(b); + DRETURN(DLEVEL_STABLE); + } IF_FREE(b->label); b->label = strdup(l); __ewl_button_update_label(b); ewl_widget_configure(w); - DLEAVE_FUNCTION; + DLEAVE_FUNCTION(DLEVEL_STABLE); } void @@ -114,44 +133,43 @@ { Ewl_Button *b; - DENTER_FUNCTION; + DENTER_FUNCTION(DLEVEL_STABLE); DCHECK_PARAM_PTR("w", w); b = EWL_BUTTON(w); - - if (b->label_object) - { - void *tmp; - - tmp = ewl_theme_data_get(w, - "/appearance/button/default/text/font"); - if (tmp) - ewl_text_set_font(b->label_object, tmp); - - tmp = ewl_theme_data_get(w, - "/appearance/button/default/text/style"); - if (tmp) - ewl_text_set_style(b->label_object, tmp); - tmp = ewl_theme_data_get(b->label_object, - "/appearance/button/default/text/font_size"); + if (b->label_object) { + void *tmp; + tmp = ewl_theme_data_get(w, + "/appearance/button/default/text/font"); + if (tmp) + ewl_text_set_font(b->label_object, tmp); + + tmp = ewl_theme_data_get(w, + "/appearance/button/default/text/style"); + if (tmp) + ewl_text_set_style(b->label_object, tmp); + + tmp = ewl_theme_data_get(b->label_object, + "/appearance/button/default/text/font_size"); + + + if (tmp) + ewl_text_set_font_size(b->label_object, + (int) (tmp)); - if (tmp) - ewl_text_set_font_size(b->label_object, - (int) (tmp)); - - ewl_widget_show(b->label_object); - } + ewl_widget_show(b->label_object); + } - DLEAVE_FUNCTION; + DLEAVE_FUNCTION(DLEVEL_STABLE); } void __ewl_button_focus_in(Ewl_Widget * w, void *ev_data, void *user_data) { - DENTER_FUNCTION; + DENTER_FUNCTION(DLEVEL_STABLE); DCHECK_PARAM_PTR("w", w); if (w->state & EWL_STATE_PRESSED) @@ -159,64 +177,62 @@ else ewl_widget_update_appearance(w, "hilited"); - DLEAVE_FUNCTION; + DLEAVE_FUNCTION(DLEVEL_STABLE); } void __ewl_button_focus_out(Ewl_Widget * w, void *ev_data, void *user_data) { - DENTER_FUNCTION; + DENTER_FUNCTION(DLEVEL_STABLE); DCHECK_PARAM_PTR("w", w); ewl_widget_update_appearance(w, "normal"); - DLEAVE_FUNCTION; + DLEAVE_FUNCTION(DLEVEL_STABLE); } void __ewl_button_mouse_down(Ewl_Widget * w, void *ev_data, void *user_data) { - DENTER_FUNCTION; + DENTER_FUNCTION(DLEVEL_STABLE); DCHECK_PARAM_PTR("w", w); ewl_widget_update_appearance(w, "clicked"); - DLEAVE_FUNCTION; + DLEAVE_FUNCTION(DLEVEL_STABLE); } void __ewl_button_mouse_up(Ewl_Widget * w, void *ev_data, void *user_data) { - DENTER_FUNCTION; + DENTER_FUNCTION(DLEVEL_STABLE); DCHECK_PARAM_PTR("w", w); - if (w->state & EWL_STATE_HILITED) - { - ewl_widget_update_appearance(w, "hilited"); - ewl_callback_call(w, EWL_CALLBACK_CLICKED); - } - else + if (w->state & EWL_STATE_HILITED) { + ewl_widget_update_appearance(w, "hilited"); + ewl_callback_call(w, EWL_CALLBACK_CLICKED); + } else ewl_widget_update_appearance(w, "normal"); - DLEAVE_FUNCTION; + DLEAVE_FUNCTION(DLEVEL_STABLE); } void __ewl_button_theme_update(Ewl_Widget * w, void *ev_data, void *user_data) { - DENTER_FUNCTION; + DENTER_FUNCTION(DLEVEL_STABLE); DCHECK_PARAM_PTR("w", w); /* * Don't want to update anything if the widget isn't realized. */ if (!REALIZED(w)) - DRETURN; + DRETURN(DLEVEL_STABLE); __ewl_button_update_label(EWL_BUTTON(w)); - DLEAVE_FUNCTION; + DLEAVE_FUNCTION(DLEVEL_STABLE); } void @@ -226,13 +242,13 @@ char key[PATH_LEN]; void *tmp; - DENTER_FUNCTION; + DENTER_FUNCTION(DLEVEL_STABLE); DCHECK_PARAM_PTR("b", b); w = EWL_WIDGET(b); if (!b->label) - DRETURN; + DRETURN(DLEVEL_STABLE); if (VISIBLE(b)) ewl_widget_show(b->label_object); @@ -254,20 +270,20 @@ ewl_text_set_text(b->label_object, b->label); ewl_widget_show(b->label_object); - DLEAVE_FUNCTION; + DLEAVE_FUNCTION(DLEVEL_STABLE); } void __ewl_button_remove_label(Ewl_Button * b) { - DENTER_FUNCTION; + DENTER_FUNCTION(DLEVEL_STABLE); DCHECK_PARAM_PTR("b", b); if (!b->label) - DRETURN; + DRETURN(DLEVEL_STABLE); if (!b->label_object) - DRETURN; + DRETURN(DLEVEL_STABLE); ewd_list_goto_first(EWL_CONTAINER(b)->children); @@ -276,5 +292,5 @@ ewl_widget_destroy(b->label_object); - DLEAVE_FUNCTION; + DLEAVE_FUNCTION(DLEVEL_STABLE); } =================================================================== RCS file: /cvsroot/enlightenment/e17/libs/ewl/src/ewl_button.h,v retrieving revision 1.10 retrieving revision 1.11 diff -u -3 -r1.10 -r1.11 --- ewl_button.h 2001/09/13 21:41:07 1.10 +++ ewl_button.h 2001/10/03 06:17:27 1.11 @@ -11,8 +11,7 @@ #define EWL_BUTTON(button) ((Ewl_Button *) button) -struct _ewl_button -{ +struct _ewl_button { Ewl_Box box; char *label; @@ -20,6 +19,6 @@ }; Ewl_Widget *ewl_button_new(char *l); -void ewl_button_set_label(Ewl_Widget * w, char *l); +void ewl_button_set_label(Ewl_Button * b, char *l); -#endif /* __EWL_BUTTON_H__ */ +#endif /* __EWL_BUTTON_H__ */ =================================================================== RCS file: /cvsroot/enlightenment/e17/libs/ewl/src/ewl_callback.c,v retrieving revision 1.18 retrieving revision 1.19 diff -u -3 -r1.18 -r1.19 --- ewl_callback.c 2001/10/02 03:43:16 1.18 +++ ewl_callback.c 2001/10/03 06:17:27 1.19 @@ -2,19 +2,29 @@ static int callback_id = 0; +/** + * ewl_callback_append - append a callback of the specified type + * + * @w: the widget to attach the callback + * @t: the type of the callback that is being attached + * @f: the function to attach as a callback + * @user_data: the data to be passed to the callback function + * + * Returns 0 on failure, the id of the new callback on success. + */ int ewl_callback_append(Ewl_Widget * w, Ewl_Callback_Type t, Ewl_Cb_Func f, void *user_data) { Ewl_Callback *cb; - DENTER_FUNCTION; + DENTER_FUNCTION(DLEVEL_STABLE); DCHECK_PARAM_PTR_RET("w", w, -1); DCHECK_PARAM_PTR_RET("f", f, -1); cb = NEW(Ewl_Callback, 1); if (!cb) - DRETURN_INT(0); + DRETURN_INT(0, DLEVEL_STABLE); memset(cb, 0, sizeof(Ewl_Callback)); cb->widget = w; @@ -29,22 +39,32 @@ cb->id = ++callback_id; - DRETURN_INT(cb->id); + DRETURN_INT(cb->id, DLEVEL_STABLE); } +/** + * ewl_callback_prepend - prepend a callback of the specified type + * + * @w: the widget to attach the callback + * @t: the type of the callback that is being attached + * @f: the function to attach as a callback + * @user_data: the data to be passed to the callback function + * + * Returns 0 on failure, the id of the new callback on success. + */ int ewl_callback_prepend(Ewl_Widget * w, Ewl_Callback_Type t, Ewl_Cb_Func f, void *user_data) { Ewl_Callback *cb; - DENTER_FUNCTION; + DENTER_FUNCTION(DLEVEL_STABLE); DCHECK_PARAM_PTR_RET("w", w, -1); DCHECK_PARAM_PTR_RET("f", f, -1); cb = NEW(Ewl_Callback, 1); if (!cb) - DRETURN_INT(0); + DRETURN_INT(0, DLEVEL_STABLE); memset(cb, 0, sizeof(Ewl_Callback)); cb->widget = w; @@ -59,34 +79,50 @@ cb->id = ++callback_id; - DRETURN_INT(cb->id); + DRETURN_INT(cb->id, DLEVEL_STABLE); } +/** + * ewl_callback_call - execute callbacks of specified types for the widget + * + * @w: the widget to execute the callbacks + * @t: the type of the callbacks to be executed + * + * Returns no value. + */ void ewl_callback_call(Ewl_Widget * w, Ewl_Callback_Type t) { Ewd_List *cb_list = NULL; Ewl_Callback *cb = NULL; - DENTER_FUNCTION; + DENTER_FUNCTION(DLEVEL_STABLE); DCHECK_PARAM_PTR("w", w); cb_list = w->callbacks[t]; if (!cb_list || ewd_list_is_empty(cb_list)) - DRETURN; + DRETURN(DLEVEL_STABLE); ewd_list_goto_first(cb_list); - while (cb_list && (cb = ewd_list_next(cb_list))) - { - if (cb->func) - cb->func(w, cb->event_data, cb->user_data); - } + while (cb_list && (cb = ewd_list_next(cb_list))) { + if (cb->func) + cb->func(w, cb->event_data, cb->user_data); + } - DLEAVE_FUNCTION; + DLEAVE_FUNCTION(DLEVEL_STABLE); } +/** + * ewl_callback_call - execute callbacks of specified types with event data + * + * @w: the widget to execute the callbacks + * @t: the type of the callbacks to be executed + * @ev_data: the event data to pass to the callbacks + * + * Returns no value. + */ void ewl_callback_call_with_event_data(Ewl_Widget * w, Ewl_Callback_Type t, void *ev_data) @@ -94,85 +130,102 @@ Ewl_Callback *cb; Ewd_List *cb_list; - DENTER_FUNCTION; + DENTER_FUNCTION(DLEVEL_STABLE); DCHECK_PARAM_PTR("w", w); cb_list = w->callbacks[t]; if (!cb_list || ewd_list_is_empty(cb_list)) - DRETURN; + DRETURN(DLEVEL_STABLE); ewd_list_goto_first(cb_list); - while (cb_list && (cb = ewd_list_next(cb_list))) - { - if (cb->func) - cb->func(w, ev_data, cb->user_data); - } + while (cb_list && (cb = ewd_list_next(cb_list))) { + if (cb->func) + cb->func(w, ev_data, cb->user_data); + } - DLEAVE_FUNCTION; + DLEAVE_FUNCTION(DLEVEL_STABLE); } +/** + * ewl_callback_set_user_data - set the user data for the specified callback + * + * @w: the widget to search for the callback + * @type: the type of the callback to be changed + * @func: the function whose callback data will be changed + * @user_data: the new data to pass into the callback + * + * Returns no value. + */ void ewl_callback_set_user_data(Ewl_Widget * w, Ewl_Callback_Type type, Ewl_Cb_Func func, void *user_data) { Ewl_Callback *cb; - DENTER_FUNCTION; + DENTER_FUNCTION(DLEVEL_STABLE); if (!w->callbacks[type] || ewd_list_is_empty(w->callbacks[type])) - DRETURN; + DRETURN(DLEVEL_STABLE); ewd_list_goto_first(w->callbacks[type]); - while ((cb = ewd_list_next(w->callbacks[type])) != NULL) - { - if (cb->func == func) - { - cb->user_data = user_data; - break; - } - } + while ((cb = ewd_list_next(w->callbacks[type])) != NULL) { + if (cb->func == func) { + cb->user_data = user_data; + break; + } + } - DLEAVE_FUNCTION; + DLEAVE_FUNCTION(DLEVEL_STABLE); } +/** + * ewl_callback_del_type - delete all callbacks of the specified type + * + * @w: the widget to delete the callbacks + * @t: the type of the callbacks to be deleted + * + * Returns no value. + */ void ewl_callback_del_type(Ewl_Widget * w, Ewl_Callback_Type t) { - DENTER_FUNCTION; + DENTER_FUNCTION(DLEVEL_STABLE); DCHECK_PARAM_PTR("w", w); if (!w->callbacks[t]) - DRETURN; + DRETURN(DLEVEL_STABLE); ewd_list_clear(w->callbacks[t]); ewd_list_destroy(w->callbacks[t]); w->callbacks[t] = NULL; - DLEAVE_FUNCTION; + DLEAVE_FUNCTION(DLEVEL_STABLE); } +/** + * + */ void ewl_callback_del_cb_id(Ewl_Widget * w, Ewl_Callback_Type t, int cb_id) { Ewl_Callback *cb; - DENTER_FUNCTION; + DENTER_FUNCTION(DLEVEL_STABLE); DCHECK_PARAM_PTR("w", w); if (!w->callbacks[t] || ewd_list_is_empty(w->callbacks[t]) || cb_id > callback_id) - DRETURN; + DRETURN(DLEVEL_STABLE); while ((cb = ewd_list_next(w->callbacks[t])) != NULL) - if (cb->id == cb_id) - { - ewd_list_remove(w->callbacks[t]); - FREE(cb); - break; - } + if (cb->id == cb_id) { + ewd_list_remove(w->callbacks[t]); + FREE(cb); + break; + } - DLEAVE_FUNCTION; + DLEAVE_FUNCTION(DLEVEL_STABLE); } void @@ -180,17 +233,16 @@ { int i; - DENTER_FUNCTION; + DENTER_FUNCTION(DLEVEL_STABLE); DCHECK_PARAM_PTR("w", w); - for (i = 0; i < EWL_CALLBACK_MAX; i++) - { - if (w->callbacks[i]) - ewl_callback_del_type(w, i); - } + for (i = 0; i < EWL_CALLBACK_MAX; i++) { + if (w->callbacks[i]) + ewl_callback_del_type(w, i); + } - DLEAVE_FUNCTION; + DLEAVE_FUNCTION(DLEVEL_STABLE); } void @@ -198,25 +250,23 @@ { Ewl_Callback *cb; - DENTER_FUNCTION; + DENTER_FUNCTION(DLEVEL_STABLE); DCHECK_PARAM_PTR("w", w); if (!w->callbacks[t] || ewd_list_is_empty(w->callbacks[t])) - DRETURN; + DRETURN(DLEVEL_STABLE); ewd_list_goto_first(w->callbacks[t]); - while ((cb = ewd_list_current(w->callbacks[t])) != NULL) - { - if (cb->func == f) - { - ewd_list_remove(w->callbacks[t]); - break; - } - ewd_list_next(w->callbacks[t]); - } + while ((cb = ewd_list_current(w->callbacks[t])) != NULL) { + if (cb->func == f) { + ewd_list_remove(w->callbacks[t]); + break; + } + ewd_list_next(w->callbacks[t]); + } IF_FREE(cb); - DLEAVE_FUNCTION; + DLEAVE_FUNCTION(DLEVEL_STABLE); } =================================================================== RCS file: /cvsroot/enlightenment/e17/libs/ewl/src/ewl_callback.h,v retrieving revision 1.13 retrieving revision 1.14 diff -u -3 -r1.13 -r1.14 --- ewl_callback.h 2001/09/16 03:46:18 1.13 +++ ewl_callback.h 2001/10/03 06:17:27 1.14 @@ -16,8 +16,7 @@ typedef void (*Ewl_Cb_Func) (Ewl_Widget * widget, void *event_data, void *user_data); -struct _ewl_callback -{ +struct _ewl_callback { Ewl_Widget *widget; Ewl_Callback_Type type; Ewl_Cb_Func func; @@ -40,4 +39,4 @@ void ewl_callback_del_type(Ewl_Widget * w, Ewl_Callback_Type t); void ewl_callback_del(Ewl_Widget * w, Ewl_Callback_Type t, Ewl_Cb_Func f); -#endif /* __EWL_CALLBACK_H__ */ +#endif /* __EWL_CALLBACK_H__ */ =================================================================== RCS file: /cvsroot/enlightenment/e17/libs/ewl/src/ewl_checkbutton.c,v retrieving revision 1.19 retrieving revision 1.20 diff -u -3 -r1.19 -r1.20 --- ewl_checkbutton.c 2001/09/30 01:46:33 1.19 +++ ewl_checkbutton.c 2001/10/03 06:17:27 1.20 @@ -6,8 +6,8 @@ void __ewl_checkbutton_configure(Ewl_Widget * w, void *ev_data, void *user_data); -void __ewl_checkbutton_mouse_down(Ewl_Widget * w, void *ev_data, - void *user_data); +void __ewl_checkbutton_clicked(Ewl_Widget * w, void *ev_data, + void *user_data); void __ewl_checkbutton_update_check(Ewl_Widget * w); void __ewl_box_configure(Ewl_Widget * w, void *ev_data, void *user_data); @@ -21,7 +21,7 @@ { Ewl_CheckButton *b; - DENTER_FUNCTION; + DENTER_FUNCTION(DLEVEL_STABLE); b = NEW(Ewl_CheckButton, 1); if (!b) @@ -30,7 +30,7 @@ memset(b, 0, sizeof(Ewl_CheckButton)); ewl_checkbutton_init(b, label); - DRETURN_PTR(EWL_WIDGET(b)); + DRETURN_PTR(EWL_WIDGET(b), DLEVEL_STABLE); } void @@ -38,7 +38,7 @@ { Ewl_CheckButton *cb; - DENTER_FUNCTION; + DENTER_FUNCTION(DLEVEL_STABLE); DCHECK_PARAM_PTR("w", w); cb = EWL_CHECKBUTTON(w); @@ -50,7 +50,7 @@ __ewl_checkbutton_update_check(w); - DLEAVE_FUNCTION; + DLEAVE_FUNCTION(DLEVEL_STABLE); } int @@ -58,12 +58,12 @@ { Ewl_CheckButton *cb; - DENTER_FUNCTION; + DENTER_FUNCTION(DLEVEL_STABLE); DCHECK_PARAM_PTR_RET("w", w, -1); cb = EWL_CHECKBUTTON(w); - DRETURN_INT(cb->checked); + DRETURN_INT(cb->checked, DLEVEL_STABLE); } void @@ -71,7 +71,7 @@ { Ewl_CheckButton *cb; - DENTER_FUNCTION; + DENTER_FUNCTION(DLEVEL_STABLE); DCHECK_PARAM_PTR("w", w); cb = EWL_CHECKBUTTON(w); @@ -80,7 +80,7 @@ ewl_widget_configure(w); - DLEAVE_FUNCTION; + DLEAVE_FUNCTION(DLEVEL_STABLE); } void @@ -89,7 +89,7 @@ Ewl_Button *b; Ewl_Widget *w; - DENTER_FUNCTION; + DENTER_FUNCTION(DLEVEL_STABLE); b = EWL_BUTTON(cb); w = EWL_WIDGET(cb); @@ -102,12 +102,12 @@ __ewl_checkbutton_theme_update, NULL); ewl_callback_append(w, EWL_CALLBACK_CONFIGURE, __ewl_checkbutton_configure, NULL); - ewl_callback_append(w, EWL_CALLBACK_MOUSE_DOWN, - __ewl_checkbutton_mouse_down, NULL); + ewl_callback_append(w, EWL_CALLBACK_CLICKED, + __ewl_checkbutton_clicked, NULL); cb->label_position = EWL_POSITION_RIGHT; - DLEAVE_FUNCTION; + DLEAVE_FUNCTION(DLEVEL_STABLE); } void @@ -116,69 +116,62 @@ Ewl_Button *b; Ewl_CheckButton *cb; - DENTER_FUNCTION; + DENTER_FUNCTION(DLEVEL_STABLE); DCHECK_PARAM_PTR("w", w); b = EWL_BUTTON(w); cb = EWL_CHECKBUTTON(w); - if (b->label_object) - { - if (MINIMUM_H(b->label_object) > CURRENT_H(w)) - { - REQUEST_Y(b->label_object) = CURRENT_Y(w) + 17; - MINIMUM_H(w) = MINIMUM_H(b->label_object); - MAXIMUM_H(w) = MINIMUM_H(b->label_object); - } - else - { - REQUEST_Y(b->label_object) = CURRENT_Y(w); - REQUEST_Y(b->label_object) += - (CURRENT_H(w) / 2) - - (CURRENT_H(b->label_object) / 2); - MINIMUM_H(w) = 17; - MAXIMUM_H(w) = 17; - } - - MINIMUM_W(w) = 17 + CURRENT_W(b->label_object); - MAXIMUM_W(w) = 17 + CURRENT_W(b->label_object); - - if (cb->label_position == EWL_POSITION_LEFT) - REQUEST_X(b->label_object) = REQUEST_X(w); - else - REQUEST_X(b->label_object) = CURRENT_X(w) + 17; - - ewl_widget_configure(b->label_object); - - if (w->ebits_object) - { - if (cb->label_position == EWL_POSITION_LEFT) - ebits_move(w->ebits_object, - REQUEST_X(w) + - CURRENT_W(b->label_object), - REQUEST_Y(w)); - else - ebits_move(w->ebits_object, REQUEST_X(w), - REQUEST_Y(w)); + if (b->label_object) { + if (MINIMUM_H(b->label_object) > CURRENT_H(w)) { + REQUEST_Y(b->label_object) = CURRENT_Y(w) + 17; + MINIMUM_H(w) = MINIMUM_H(b->label_object); + MAXIMUM_H(w) = MINIMUM_H(b->label_object); + } else { + REQUEST_Y(b->label_object) = CURRENT_Y(w); + REQUEST_Y(b->label_object) += + (CURRENT_H(w) / 2) - + (CURRENT_H(b->label_object) / 2); + MINIMUM_H(w) = 17; + MAXIMUM_H(w) = 17; + } + + MINIMUM_W(w) = 17 + CURRENT_W(b->label_object); + MAXIMUM_W(w) = 17 + CURRENT_W(b->label_object); + + if (cb->label_position == EWL_POSITION_LEFT) + REQUEST_X(b->label_object) = REQUEST_X(w); + else + REQUEST_X(b->label_object) = CURRENT_X(w) + 17; + + ewl_widget_configure(b->label_object); + + if (w->ebits_object) { + if (cb->label_position == EWL_POSITION_LEFT) + ebits_move(w->ebits_object, + REQUEST_X(w) + + CURRENT_W(b->label_object), + REQUEST_Y(w)); + else + ebits_move(w->ebits_object, REQUEST_X(w), + REQUEST_Y(w)); + + } + } else { + MAXIMUM_W(w) = 17; + MAXIMUM_H(w) = 17; + } - } - } - else - { - MAXIMUM_W(w) = 17; - MAXIMUM_H(w) = 17; - } - - DLEAVE_FUNCTION; + DLEAVE_FUNCTION(DLEVEL_STABLE); } void -__ewl_checkbutton_mouse_down(Ewl_Widget * w, void *ev_data, void *user_data) +__ewl_checkbutton_clicked(Ewl_Widget * w, void *ev_data, void *user_data) { Ewl_CheckButton *cb; int oc; - DENTER_FUNCTION; + DENTER_FUNCTION(DLEVEL_STABLE); DCHECK_PARAM_PTR("w", w); cb = EWL_CHECKBUTTON(w); @@ -188,10 +181,9 @@ __ewl_checkbutton_update_check(w); - if (oc != cb->checked) - ewl_callback_call(w, EWL_CALLBACK_VALUE_CHANGED); + ewl_callback_call(w, EWL_CALLBACK_VALUE_CHANGED); - DLEAVE_FUNCTION; + DLEAVE_FUNCTION(DLEVEL_STABLE); } void @@ -199,31 +191,31 @@ { Ewl_CheckButton *cb; - DENTER_FUNCTION; + DENTER_FUNCTION(DLEVEL_STABLE); DCHECK_PARAM_PTR("w", w); cb = EWL_CHECKBUTTON(w); - if (w->ebits_object) - { - if (cb->checked) - ebits_set_named_bit_state(w->ebits_object, "Check", - "clicked"); - else - ebits_set_named_bit_state(w->ebits_object, "Check", - "normal"); - } + if (w->ebits_object) { + if (cb->checked) + ebits_set_named_bit_state(w->ebits_object, "Check", + "clicked"); + else + ebits_set_named_bit_state(w->ebits_object, "Check", + "normal"); + } - DLEAVE_FUNCTION; + DLEAVE_FUNCTION(DLEVEL_STABLE); } void -__ewl_checkbutton_theme_update(Ewl_Widget * w, void *ev_data, void *user_data) +__ewl_checkbutton_theme_update(Ewl_Widget * w, void *ev_data, + void *user_data) { - DENTER_FUNCTION; + DENTER_FUNCTION(DLEVEL_STABLE); DCHECK_PARAM_PTR("w", w); __ewl_checkbutton_update_check(w); - DLEAVE_FUNCTION; + DLEAVE_FUNCTION(DLEVEL_STABLE); } =================================================================== RCS file: /cvsroot/enlightenment/e17/libs/ewl/src/ewl_checkbutton.h,v retrieving revision 1.9 retrieving revision 1.10 diff -u -3 -r1.9 -r1.10 --- ewl_checkbutton.h 2001/09/29 05:49:00 1.9 +++ ewl_checkbutton.h 2001/10/03 06:17:27 1.10 @@ -11,8 +11,7 @@ #define EWL_CHECKBUTTON(button) ((Ewl_CheckButton *) button) -struct _ewl_checkbutton -{ +struct _ewl_checkbutton { Ewl_Button button; Ewl_Position label_position; unsigned int checked; @@ -24,4 +23,4 @@ int ewl_checkbutton_is_checked(Ewl_Widget * w); void ewl_checkbutton_set_label_position(Ewl_Widget * w, Ewl_Position p); -#endif /* __EWL_CHECKBUTTON_H__ */ +#endif /* __EWL_CHECKBUTTON_H__ */ =================================================================== RCS file: /cvsroot/enlightenment/e17/libs/ewl/src/ewl_config.c,v retrieving revision 1.9 retrieving revision 1.10 diff -u -3 -r1.9 -r1.10 --- ewl_config.c 2001/09/29 05:49:00 1.9 +++ ewl_config.c 2001/10/03 06:17:27 1.10 @@ -19,12 +19,10 @@ { memset(&ewl_config, 0, sizeof(Ewl_Config)); - if ((open_user_config()) != -1) - { - close_config(); - return 1; - } - else + if ((open_user_config()) != -1) { + close_config(); + return 1; + } else create_user_config(); return 1; @@ -38,11 +36,10 @@ home = getenv("HOME"); - if (!home) - { - DWARNING("Failed to fetch environment variable HOME\n"); - return -1; - } + if (!home) { + DWARNING("Failed to fetch environment variable HOME\n"); + return -1; + } snprintf(pe, 1024, "%s/.e", home); mkdir(pe, 0755); @@ -71,11 +68,10 @@ home = getenv("HOME"); - if (!home) - { - DWARNING("Failed to fetch environment variable HOME\n"); - return -1; - } + if (!home) { + DWARNING("Failed to fetch environment variable HOME\n"); + return -1; + } snprintf(path, 256, "%s/.e/ewl/config/system.db", home); @@ -140,12 +136,11 @@ { char *ret = NULL; - if ((open_user_config()) != -1) - { - ret = e_db_str_get(config_db, k); + if ((open_user_config()) != -1) { + ret = e_db_str_get(config_db, k); - close_config(); - } + close_config(); + } return ret; } @@ -155,12 +150,11 @@ { int ret = -1; - if ((open_user_config()) != -1) - { - ret = e_db_int_get(config_db, k, v); + if ((open_user_config()) != -1) { + ret = e_db_int_get(config_db, k, v); - close_config(); - } + close_config(); + } return ret; } @@ -170,12 +164,11 @@ { int ret = -1; - if ((open_user_config()) != -1) - { - ret = e_db_float_get(config_db, k, v); + if ((open_user_config()) != -1) { + ret = e_db_float_get(config_db, k, v); - close_config(); - } + close_config(); + } return ret; } @@ -188,17 +181,16 @@ str = ewl_config_get_str("/evas/render_method"); - if (str) - { - if (!strncasecmp(str, "software", 8)) - method = RENDER_METHOD_ALPHA_SOFTWARE; - else if (!strncasecmp(str, "hardware", 8)) - method = RENDER_METHOD_3D_HARDWARE; - else if (!strncasecmp(str, "x11", 3)) - method = RENDER_METHOD_BASIC_HARDWARE; + if (str) { + if (!strncasecmp(str, "software", 8)) + method = RENDER_METHOD_ALPHA_SOFTWARE; + else if (!strncasecmp(str, "hardware", 8)) + method = RENDER_METHOD_3D_HARDWARE; + else if (!strncasecmp(str, "x11", 3)) + method = RENDER_METHOD_BASIC_HARDWARE; - FREE(str); - } + FREE(str); + } return method; } @@ -208,7 +200,7 @@ { Ewl_Config nc; - DENTER_FUNCTION; + DENTER_FUNCTION(DLEVEL_STABLE); ewl_config_get_int("/debug/enable", &nc.debug.enable); ewl_config_get_int("/debug/level", &nc.debug.level); @@ -218,38 +210,33 @@ ewl_config_get_float("/fx/max_fps", &nc.fx.max_fps); ewl_config_get_float("/fx/timeout", &nc.fx.timeout); nc.theme.name = ewl_config_get_str("/theme/name"); + + if (ewl_window_list && !ewd_list_is_empty(ewl_window_list)) { + Ewl_Widget *w; + + ewd_list_goto_first(ewl_window_list); - if (ewl_window_list && !ewd_list_is_empty(ewl_window_list)) - { - Ewl_Widget *w; - - ewd_list_goto_first(ewl_window_list); - - while ((w = ewd_list_next(ewl_window_list)) != NULL) - { - if (!w->evas) - continue; - - if (nc.evas.font_cache) - { - evas_flush_font_cache(w->evas); - evas_set_font_cache(w->evas, - nc.evas.font_cache); - } - - if (nc.evas.image_cache) - { - evas_flush_image_cache(w->evas); - evas_set_image_cache(w->evas, - nc.evas. - image_cache); - } - - evas_set_output_method(w->evas, - ewl_config_get_render_method - ()); - } - } + while ((w = ewd_list_next(ewl_window_list)) != NULL) { + if (!w->evas) + continue; + + if (nc.evas.font_cache) { + evas_flush_font_cache(w->evas); + evas_set_font_cache(w->evas, + nc.evas.font_cache); + } + + if (nc.evas.image_cache) { + evas_flush_image_cache(w->evas); + evas_set_image_cache(w->evas, + nc.evas.image_cache); + } + + evas_set_output_method(w->evas, + ewl_config_get_render_method + ()); + } + } IF_FREE(ewl_config.evas.render_method); IF_FREE(ewl_config.theme.name); @@ -263,5 +250,5 @@ ewl_config.fx.timeout = nc.fx.timeout; ewl_config.theme.name = nc.theme.name; - DLEAVE_FUNCTION; + DLEAVE_FUNCTION(DLEVEL_STABLE); } =================================================================== RCS file: /cvsroot/enlightenment/e17/libs/ewl/src/ewl_config.h,v retrieving revision 1.7 retrieving revision 1.8 diff -u -3 -r1.7 -r1.8 --- ewl_config.h 2001/09/28 23:27:49 1.7 +++ ewl_config.h 2001/10/03 06:17:27 1.8 @@ -4,32 +4,23 @@ typedef struct _ewl_config Ewl_Config; -struct _ewl_config -{ - struct - { +struct _ewl_config { + struct { int enable; int level; - } - debug; - struct - { + } debug; + struct { int font_cache; int image_cache; char *render_method; - } - evas; - struct - { + } evas; + struct { float max_fps; float timeout; - } - fx; - struct - { + } fx; + struct { char *name; - } - theme; + } theme; }; Ewl_Config ewl_config; @@ -45,4 +36,4 @@ void ewl_config_reread_and_apply(void); -#endif /* __EWL_CONFIG_H__ */ +#endif /* __EWL_CONFIG_H__ */ =================================================================== RCS file: /cvsroot/enlightenment/e17/libs/ewl/src/ewl_container.c,v retrieving revision 1.15 retrieving revision 1.16 diff -u -3 -r1.15 -r1.16 --- ewl_container.c 2001/10/02 02:03:27 1.15 +++ ewl_container.c 2001/10/03 06:17:27 1.16 @@ -17,7 +17,7 @@ { Ewl_Widget *w; - DENTER_FUNCTION; + DENTER_FUNCTION(DLEVEL_STABLE); DCHECK_PARAM_PTR("c", c); w = EWL_WIDGET(c); @@ -48,13 +48,13 @@ ewl_callback_prepend(w, EWL_CALLBACK_DESTROY_RECURSIVE, __ewl_container_destroy_recursive, NULL); - DLEAVE_FUNCTION; + DLEAVE_FUNCTION(DLEVEL_STABLE); } void ewl_container_append_child(Ewl_Container * pc, Ewl_Widget * child) { - DENTER_FUNCTION; + DENTER_FUNCTION(DLEVEL_STABLE); DCHECK_PARAM_PTR("pc", pc); DCHECK_PARAM_PTR("child", child); @@ -69,16 +69,16 @@ ewl_widget_reparent(child); if (!pc->children || ewd_list_is_empty(pc->children)) - evas_set_color(EWL_WIDGET(pc)->evas, pc->clip_box, 255, 255, - 255, 255); + evas_set_color(EWL_WIDGET(pc)->evas, pc->clip_box, 255, + 255, 255, 255); - DLEAVE_FUNCTION; + DLEAVE_FUNCTION(DLEVEL_STABLE); } void ewl_container_prepend_child(Ewl_Container * pc, Ewl_Widget * child) { - DENTER_FUNCTION; + DENTER_FUNCTION(DLEVEL_STABLE); DCHECK_PARAM_PTR("pc", pc); DCHECK_PARAM_PTR("child", child); @@ -93,16 +93,17 @@ ewl_widget_reparent(child); if (!pc->children || ewd_list_is_empty(pc->children)) - evas_set_color(EWL_WIDGET(pc)->evas, pc->clip_box, 255, 255, - 255, 255); + evas_set_color(EWL_WIDGET(pc)->evas, pc->clip_box, 255, + 255, 255, 255); - DLEAVE_FUNCTION; + DLEAVE_FUNCTION(DLEVEL_STABLE); } void -ewl_container_insert_child(Ewl_Container * pc, Ewl_Widget * child, int index) +ewl_container_insert_child(Ewl_Container * pc, Ewl_Widget * child, + int index) { - DENTER_FUNCTION; + DENTER_FUNCTION(DLEVEL_STABLE); DCHECK_PARAM_PTR("pc", pc); DCHECK_PARAM_PTR("child", child); @@ -117,10 +118,10 @@ ewl_widget_reparent(child); if (!pc->children || ewd_list_is_empty(pc->children)) - evas_set_color(EWL_WIDGET(pc)->evas, pc->clip_box, 255, 255, - 255, 255); + evas_set_color(EWL_WIDGET(pc)->evas, pc->clip_box, 255, + 255, 255, 255); - DLEAVE_FUNCTION; + DLEAVE_FUNCTION(DLEVEL_STABLE); } void @@ -128,7 +129,7 @@ { Ewl_Widget *temp; - DENTER_FUNCTION; + DENTER_FUNCTION(DLEVEL_STABLE); DCHECK_PARAM_PTR("pc", pc); DCHECK_PARAM_PTR("child", child); @@ -144,7 +145,7 @@ evas_set_color(EWL_WIDGET(pc)->evas, pc->clip_box, 0, 0, 0, 0); - DLEAVE_FUNCTION; + DLEAVE_FUNCTION(DLEVEL_STABLE); } Ewl_Widget * @@ -152,52 +153,71 @@ { Ewl_Widget *child = NULL; - DENTER_FUNCTION; + DENTER_FUNCTION(DLEVEL_STABLE); DCHECK_PARAM_PTR_RET("widget", widget, NULL); if (!widget->children || ewd_list_is_empty(widget->children)) - DRETURN_PTR(NULL); + DRETURN_PTR(NULL, DLEVEL_STABLE); ewd_list_goto_first(widget->children); while ((child = - ewd_list_next(EWL_CONTAINER(widget)->children)) != NULL) - { - if (x >= CURRENT_X(child) && y >= CURRENT_Y(child) - && CURRENT_X(child) + CURRENT_W(child) >= x - && CURRENT_Y(child) + CURRENT_H(child) >= y) - DRETURN_PTR(child); - } - - DRETURN_PTR(NULL); -} - + ewd_list_next(EWL_CONTAINER(widget)->children)) != NULL) { + if (x >= CURRENT_X(child) && y >= CURRENT_Y(child) + && CURRENT_X(child) + CURRENT_W(child) >= x + && CURRENT_Y(child) + CURRENT_H(child) >= y) + DRETURN_PTR(child, DLEVEL_STABLE); + } + + DRETURN_PTR(NULL, DLEVEL_STABLE); +} + +/** + * ewl_container_get_child_at_recursive - find child that intersects coordinates + * + * @widget: the widget to search for intersecting child + * @x: the x coordinate of the intersection point + * @y: the y coordinate of the intersection point + * + * Returns a point to the intersecting widget on success, NULL on failure. + */ Ewl_Widget * ewl_container_get_child_at_recursive(Ewl_Container * widget, int x, int y) { - Ewl_Container *child = NULL; + /* + * These 2 temporary variables allow for traversing recursive + * containers without using high levels of recursion. + */ + Ewl_Widget *child = NULL; Ewl_Widget *child2 = NULL; - DENTER_FUNCTION; + DENTER_FUNCTION(DLEVEL_STABLE); DCHECK_PARAM_PTR_RET("widget", widget, NULL); if (!widget->children || ewd_list_is_empty(widget->children)) return NULL; + /* + * The starting point is the current widget + */ ewd_list_goto_first(widget->children); - - child = widget; + child = EWL_WIDGET(widget); - while ((child2 = ewl_container_get_child_at(child, x, y)) != NULL) - { - if (child2->recursive) - child = EWL_CONTAINER(ewl_container_get_child_at - (child, x, y)); - else - DRETURN_PTR(child2); - } + /* + * Now move down through the tree of widgets until the bottom layer is + * found. + */ + while ((child2 = + ewl_container_get_child_at(EWL_CONTAINER(child), x, y))) { + if (child2->recursive) + child = + ewl_container_get_child_at(EWL_CONTAINER + (child), x, y); + else + DRETURN_PTR(child2, DLEVEL_STABLE); + } - DRETURN_PTR(NULL); + DRETURN_PTR((child ? child : NULL), DLEVEL_STABLE); } /* @@ -210,17 +230,16 @@ Ewl_Widget *child; Ewd_List *old; - DENTER_FUNCTION; + DENTER_FUNCTION(DLEVEL_STABLE); DCHECK_PARAM_PTR("w", w); old = EWL_CONTAINER(w)->children; EWL_CONTAINER(w)->children = ewd_list_new(); - while ((child = ewd_list_remove_first(old)) != NULL) - { - ewl_container_append_child(EWL_CONTAINER(w), child); - ewl_widget_reparent(child); - } + while ((child = ewd_list_remove_first(old)) != NULL) { + ewl_container_append_child(EWL_CONTAINER(w), child); + ewl_widget_reparent(child); + } ewd_list_destroy(old); } @@ -236,7 +255,7 @@ Ewl_Container *c; Ewl_Widget *child; - DENTER_FUNCTION; + DENTER_FUNCTION(DLEVEL_STABLE); DCHECK_PARAM_PTR("w", w); c = EWL_CONTAINER(w); @@ -260,7 +279,7 @@ evas_set_clip(w->evas, c->clip_box, w->fx_clip_box); if (!c->children || ewd_list_is_empty(c->children)) - DRETURN; + DRETURN(DLEVEL_STABLE); /* * If this container has not yet been realized, then it's children @@ -269,62 +288,59 @@ * realize any of them that should be visible. */ ewd_list_goto_first(c->children); - while ((child = ewd_list_next(c->children)) != NULL) - { - ewl_widget_reparent(child); - ewl_widget_realize(child); - } + while ((child = ewd_list_next(c->children)) != NULL) { + ewl_widget_reparent(child); + ewl_widget_realize(child); + } - DLEAVE_FUNCTION; + DLEAVE_FUNCTION(DLEVEL_STABLE); } void -__ewl_container_configure(Ewl_Widget * w, void *event_data, void *user_data) +__ewl_container_configure(Ewl_Widget * w, void *event_data, + void *user_data) { - DENTER_FUNCTION; + DENTER_FUNCTION(DLEVEL_STABLE); DCHECK_PARAM_PTR("w", w); + + if (EWL_CONTAINER(w)->clip_box) { + int ll = 0, rr = 0, tt = 0, bb = 0; - if (EWL_CONTAINER(w)->clip_box) - { - int ll = 0, rr = 0, tt = 0, bb = 0; - - if (w->ebits_object) - ebits_get_insets(w->ebits_object, &ll, &rr, &tt, - &bb); - - evas_move(w->evas, EWL_CONTAINER(w)->clip_box, - CURRENT_X(w) + ll, CURRENT_Y(w) + tt); - evas_resize(w->evas, EWL_CONTAINER(w)->clip_box, - CURRENT_W(w) - (ll + rr), - CURRENT_H(w) - (tt + bb)); - } + if (w->ebits_object) + ebits_get_insets(w->ebits_object, &ll, &rr, &tt, + &bb); + + evas_move(w->evas, EWL_CONTAINER(w)->clip_box, + CURRENT_X(w) + ll, CURRENT_Y(w) + tt); + evas_resize(w->evas, EWL_CONTAINER(w)->clip_box, + CURRENT_W(w) - (ll + rr), + CURRENT_H(w) - (tt + bb)); + } - DLEAVE_FUNCTION; + DLEAVE_FUNCTION(DLEVEL_STABLE); } void __ewl_container_destroy(Ewl_Widget * w, void *event_data, void *user_data) { - DENTER_FUNCTION; + DENTER_FUNCTION(DLEVEL_STABLE); DCHECK_PARAM_PTR("w", w); - if (EWL_CONTAINER(w)->clip_box) - { - evas_hide(w->evas, EWL_CONTAINER(w)->clip_box); - evas_unset_clip(w->evas, EWL_CONTAINER(w)->clip_box); - evas_del_object(w->evas, EWL_CONTAINER(w)->clip_box); - - EWL_CONTAINER(w)->clip_box = NULL; - } - - if (EWL_CONTAINER(w)->children) - { - ewd_list_clear(EWL_CONTAINER(w)->children); - ewd_list_destroy(EWL_CONTAINER(w)->children); - EWL_CONTAINER(w)->children = NULL; - } + if (EWL_CONTAINER(w)->clip_box) { + evas_hide(w->evas, EWL_CONTAINER(w)->clip_box); + evas_unset_clip(w->evas, EWL_CONTAINER(w)->clip_box); + evas_del_object(w->evas, EWL_CONTAINER(w)->clip_box); + + EWL_CONTAINER(w)->clip_box = NULL; + } + + if (EWL_CONTAINER(w)->children) { + ewd_list_clear(EWL_CONTAINER(w)->children); + ewd_list_destroy(EWL_CONTAINER(w)->children); + EWL_CONTAINER(w)->children = NULL; + } - DLEAVE_FUNCTION; + DLEAVE_FUNCTION(DLEVEL_STABLE); } void @@ -334,18 +350,18 @@ Ewl_Container *c; Ewl_Widget *child; - DENTER_FUNCTION; + DENTER_FUNCTION(DLEVEL_STABLE); DCHECK_PARAM_PTR("w", w); c = EWL_CONTAINER(w); if (!c->children || ewd_list_is_empty(c->children)) - DRETURN; + DRETURN(DLEVEL_STABLE); ewd_list_goto_first(c->children); while ((child = ewd_list_remove_last(c->children))) ewl_widget_destroy_recursive(child); - DLEAVE_FUNCTION; + DLEAVE_FUNCTION(DLEVEL_STABLE); } =================================================================== RCS file: /cvsroot/enlightenment/e17/libs/ewl/src/ewl_container.h,v retrieving revision 1.9 retrieving revision 1.10 diff -u -3 -r1.9 -r1.10 --- ewl_container.h 2001/09/13 21:41:07 1.9 +++ ewl_container.h 2001/10/03 06:17:27 1.10 @@ -13,23 +13,26 @@ #define EWL_CONTAINER(widget) ((Ewl_Container *) widget) -struct _ewl_container -{ +struct _ewl_container { Ewl_Widget widget; Ewd_List *children; Evas_Object clip_box; }; void ewl_container_init(Ewl_Container * widget, char *appearance); -void ewl_container_append_child(Ewl_Container * parent, Ewl_Widget * child); -void ewl_container_prepend_child(Ewl_Container * parent, Ewl_Widget * child); +void ewl_container_append_child(Ewl_Container * parent, + Ewl_Widget * child); +void ewl_container_prepend_child(Ewl_Container * parent, + Ewl_Widget * child); void ewl_container_insert_child(Ewl_Container * parent, Ewl_Widget * child, int index); -void ewl_container_remove_child(Ewl_Container * parent, Ewl_Widget * child); -Ewl_Widget *ewl_contai... [truncated message content] |
From: E C. L. <enl...@so...> - 2001-10-08 02:14:27
|
Enlightenment CVS committal Author : rbdpngn Project : e17 Module : libs/ewl Dir : e17/libs/ewl/src Modified Files: ewl_box.c ewl_list.c ewl_table.c ewl_widget.c ewl_window.c Log Message: Fixed up some memory leaks. =================================================================== RCS file: /cvsroot/enlightenment/e17/libs/ewl/src/ewl_box.c,v retrieving revision 1.29 retrieving revision 1.30 diff -u -3 -r1.29 -r1.30 --- ewl_box.c 2001/10/03 07:03:51 1.29 +++ ewl_box.c 2001/10/08 02:14:27 1.30 @@ -205,21 +205,22 @@ continue; } - +/* if (MAXIMUM_W(c) && MAXIMUM_W(c) < CURRENT_W(c)) REQUEST_W(c) = MAXIMUM_W(c); else if (MINIMUM_W(c) && MINIMUM_W(c) > CURRENT_W(c)) REQUEST_W(c) = MINIMUM_W(c); else REQUEST_W(c) = CURRENT_W(c); - +*/ +/* if (MAXIMUM_H(c) && MAXIMUM_H(c) < CURRENT_H(c)) REQUEST_H(c) = MAXIMUM_H(c); else if (MINIMUM_H(c) && MINIMUM_H(c) > CURRENT_H(c)) REQUEST_H(c) = MINIMUM_H(c); else REQUEST_H(c) = CURRENT_H(c); - +*/ *rh -= REQUEST_H(c) + box->spacing; *rh -= c->object.padd.t + c->object.padd.b; } @@ -295,6 +296,9 @@ nh - c->object.padd.t - c->object.padd.b; } + ewd_list_clear(f); + ewd_list_destroy(f); + DLEAVE_FUNCTION(DLEVEL_STABLE); } @@ -507,6 +511,9 @@ REQUEST_W(c) = nw - c->object.padd.l - c->object.padd.r; } + + ewd_list_clear(f); + ewd_list_destroy(f); DLEAVE_FUNCTION(DLEVEL_STABLE); } =================================================================== RCS file: /cvsroot/enlightenment/e17/libs/ewl/src/ewl_list.c,v retrieving revision 1.12 retrieving revision 1.13 diff -u -3 -r1.12 -r1.13 --- ewl_list.c 2001/10/03 07:03:51 1.12 +++ ewl_list.c 2001/10/08 02:14:27 1.13 @@ -305,6 +305,7 @@ image = ewl_theme_image_get(l, "/appearance/list/default/selection"); sel->ebits_object = ebits_load(image); + FREE(image); ebits_add_to_evas(sel->ebits_object, l->evas); ebits_set_layer(sel->ebits_object, l->layer + 5); ebits_set_clip(sel->ebits_object, l->fx_clip_box); =================================================================== RCS file: /cvsroot/enlightenment/e17/libs/ewl/src/ewl_table.c,v retrieving revision 1.18 retrieving revision 1.19 diff -u -3 -r1.18 -r1.19 --- ewl_table.c 2001/10/03 22:55:58 1.18 +++ ewl_table.c 2001/10/08 02:14:27 1.19 @@ -462,7 +462,7 @@ __ewl_table_configure(Ewl_Widget * w, void *ev_data, void *user_data) { Ewl_Table *t; - int rem_w, rem_h; + int rem_w = 0, rem_h = 0; Ewd_List *fillers; DENTER_FUNCTION(DLEVEL_STABLE); =================================================================== RCS file: /cvsroot/enlightenment/e17/libs/ewl/src/ewl_widget.c,v retrieving revision 1.24 retrieving revision 1.25 diff -u -3 -r1.24 -r1.25 --- ewl_widget.c 2001/10/03 22:55:58 1.24 +++ ewl_widget.c 2001/10/08 02:14:27 1.25 @@ -522,6 +522,7 @@ } FREE(key); + FREE(i); DRETURN(DLEVEL_STABLE); } =================================================================== RCS file: /cvsroot/enlightenment/e17/libs/ewl/src/ewl_window.c,v retrieving revision 1.25 retrieving revision 1.26 diff -u -3 -r1.25 -r1.26 --- ewl_window.c 2001/10/03 07:03:51 1.25 +++ ewl_window.c 2001/10/08 02:14:27 1.26 @@ -96,6 +96,7 @@ ewl_config_get_render_method(), 216, 1024 * 1024 * 2, 1024 * 1024 * 5, font_path); + FREE(font_path); w->evas_window = evas_get_window(w->evas); e_window_set_events(w->evas_window, XEV_KEY | XEV_BUTTON | |
From: E C. L. <enl...@so...> - 2001-10-08 21:28:42
|
Enlightenment CVS committal Author : rbdpngn Project : e17 Module : libs/ewl Dir : e17/libs/ewl/src Modified Files: ewl_scrollbar.c Log Message: This still needs some work, but at least all of the scrollbar is visible now. =================================================================== RCS file: /cvsroot/enlightenment/e17/libs/ewl/src/ewl_scrollbar.c,v retrieving revision 1.1 retrieving revision 1.2 diff -u -3 -r1.1 -r1.2 --- ewl_scrollbar.c 2001/10/03 07:03:51 1.1 +++ ewl_scrollbar.c 2001/10/08 21:28:42 1.2 @@ -51,7 +51,7 @@ ewl_box_init(EWL_BOX(s), orientation); ewl_callback_append(EWL_WIDGET(s), EWL_CALLBACK_SHOW, __ewl_scrollbar_show, NULL); - ewl_object_set_fill_policy(EWL_OBJECT(s), EWL_FILL_POLICY_NORMAL); + ewl_object_set_fill_policy(EWL_OBJECT(s), EWL_FILL_POLICY_FILL); s->decrement = ewl_button_new(NULL); ewl_callback_append(s->decrement, EWL_CALLBACK_MOUSE_DOWN, @@ -69,6 +69,16 @@ ewl_object_set_maximum_size(EWL_OBJECT(s->increment), MINIMUM_W(s->seeker), MINIMUM_W(s->seeker)); + + /* + * Keep the bounding box snugg to the edges of the seeker portion of + * the scrollbar. The buttons will still fit on the ends since the max + * and min dimensions are still unset for the ends. + */ + MAXIMUM_W(s) = MAXIMUM_W(s->seeker); + MAXIMUM_H(s) = MAXIMUM_H(s->seeker); + MAXIMUM_W(s) = MAXIMUM_W(s->seeker); + MAXIMUM_H(s) = MAXIMUM_H(s->seeker); if (orientation == EWL_ORIENTATION_HORIZONTAL) { |
From: <enl...@li...> - 2001-10-17 22:19:39
|
Enlightenment CVS committal Author : rbdpngn Project : e17 Module : libs/ewl Dir : e17/libs/ewl/src Modified Files: ewl_box.c ewl_button.c ewl_callback.c ewl_checkbutton.c ewl_config.c ewl_config.h ewl_container.c ewl_entry.c ewl_events.c ewl_fx.c ewl_list.c ewl_misc.c ewl_notebook.c ewl_object.c ewl_radiobutton.c ewl_scrollbar.c ewl_seeker.c ewl_spinner.c ewl_table.c ewl_theme.c ewl_theme.h ewl_widget.c ewl_window.c getopt.c getopt1.c Log Message: A good start at documenting the ewl api. About 1/2 the widgets now have documentation generated by make html-docs. Some of these could probably use some better explanations, but I've had enough of writing documentation for today. =================================================================== RCS file: /cvsroot/enlightenment/e17/libs/ewl/src/ewl_box.c,v retrieving revision 1.32 retrieving revision 1.33 diff -u -3 -r1.32 -r1.33 --- ewl_box.c 2001/10/08 02:45:26 1.32 +++ ewl_box.c 2001/10/17 22:19:08 1.33 @@ -16,8 +16,7 @@ static void __ewl_vbox_layout_children(Ewl_Widget * w); /** - * ewl_box_new - alloacte and initialize a new box with orientation - * + * ewl_box_new - allocate and initialize a new box with given orientation * @o: the orientation for the box's layout * * Returns NULL on failure, or a newly allocated box on success. @@ -41,11 +40,11 @@ /** * ewl_box_init - initialize the box to starting values - * * @b: the box to initialize * @o: the orientation for the box to layout child widgets * - * Returns no value. + * Returns no value. Responsible for setting up default values and callbacks + * within a box structure. */ void ewl_box_init(Ewl_Box * b, Ewl_Orientation o) @@ -82,11 +81,11 @@ /** * ewl_box_set_orientation - change the specified box's orientation - * * @b: the box to change the orientation * @o: the orientation to set for the box * - * Returns no value. + * Returns no value. Changes the orientation of the specified box, and + * reconfigures it in order for the appearance to be updated. */ void ewl_box_set_orientation(Ewl_Box * b, Ewl_Orientation o) @@ -118,11 +117,11 @@ /** * ewl_box_set_spacing - changes the spacing between the objects in the box - * * @b: the box to change the spacing * @s: the spacing to put between the child widgets * - * Returns no value. + * Returns no value. Adjust the spacing of the specified box and reconfigure + * it to change the appearance. */ void ewl_box_set_spacing(Ewl_Box * b, int s) =================================================================== RCS file: /cvsroot/enlightenment/e17/libs/ewl/src/ewl_button.c,v retrieving revision 1.26 retrieving revision 1.27 diff -u -3 -r1.26 -r1.27 --- ewl_button.c 2001/10/03 22:55:58 1.26 +++ ewl_button.c 2001/10/17 22:19:08 1.27 @@ -15,10 +15,9 @@ /** * ewl_button_new - allocate and initialize a new button - * * @label: the string to use as a label for the button * - * Returns NULL on failure, a pointer to the new button on success + * Returns NULL on failure, a pointer to a new button on success */ Ewl_Widget * ewl_button_new(char *label) @@ -40,11 +39,10 @@ /** * ewl_button_init - initialize a button to starting values - * * @b: the button to initialize * @label: the string to use as the buttons label * - * Returns no value. + * Returns no value. Initializes a button to default values and callbacks. */ void ewl_button_init(Ewl_Button * b, char *label) @@ -153,9 +151,8 @@ if (tmp) ewl_text_set_style(b->label_object, tmp); - ewl_theme_data_get_int(b->label_object, - "/appearance/button/default/text/font_size", - &itmp); + itmp = ewl_theme_data_get_int(b->label_object, + "/appearance/button/default/text/font_size"); if (tmp) @@ -215,8 +212,7 @@ { ewl_widget_update_appearance(w, "hilited"); ewl_callback_call(w, EWL_CALLBACK_CLICKED); - } - else + } else ewl_widget_update_appearance(w, "normal"); DLEAVE_FUNCTION(DLEVEL_STABLE); @@ -267,7 +263,7 @@ ewl_text_set_font(b->label_object, tmp); snprintf(key, PATH_LEN, "%s/text/font_size", w->appearance); - ewl_theme_data_get_int(w, key, &itmp); + itmp = ewl_theme_data_get_int(w, key); if (itmp) ewl_text_set_font_size(b->label_object, itmp); =================================================================== RCS file: /cvsroot/enlightenment/e17/libs/ewl/src/ewl_callback.c,v retrieving revision 1.21 retrieving revision 1.22 diff -u -3 -r1.21 -r1.22 --- ewl_callback.c 2001/10/09 05:55:12 1.21 +++ ewl_callback.c 2001/10/17 22:19:08 1.22 @@ -2,15 +2,17 @@ static int callback_id = 0; -/* +/** * ewl_callback_append - append a callback of the specified type - * * @w: the widget to attach the callback * @t: the type of the callback that is being attached * @f: the function to attach as a callback * @user_data: the data to be passed to the callback function * - * Returns 0 on failure, the id of the new callback on success. + * Returns 0 on failure, the id of the new callback on success. Allocates a + * new callback for the specified widget that calls @f with @user_data as the + * data parameter when event @t occurs. This event is placed at the end of the + * callback chain. */ int ewl_callback_append(Ewl_Widget * w, Ewl_Callback_Type t, Ewl_Cb_Func f, @@ -42,15 +44,16 @@ DRETURN_INT(cb->id, DLEVEL_STABLE); } -/* +/** * ewl_callback_prepend - prepend a callback of the specified type - * * @w: the widget to attach the callback * @t: the type of the callback that is being attached * @f: the function to attach as a callback * @user_data: the data to be passed to the callback function * - * Returns 0 on failure, the id of the new callback on success. + * Returns 0 on failure, the id of the new callback on success. Same + * functionality as ewl_callback_append, but the callback is placed at the + * beginning of the callback chain. */ int ewl_callback_prepend(Ewl_Widget * w, Ewl_Callback_Type t, Ewl_Cb_Func f, @@ -82,13 +85,13 @@ DRETURN_INT(cb->id, DLEVEL_STABLE); } -/* +/** * ewl_callback_call - execute callbacks of specified types for the widget - * * @w: the widget to execute the callbacks * @t: the type of the callbacks to be executed * - * Returns no value. + * Returns no value. Executes the callback chain for the specified widget @w, + * with event @t. */ void ewl_callback_call(Ewl_Widget * w, Ewl_Callback_Type t) @@ -115,14 +118,14 @@ DLEAVE_FUNCTION(DLEVEL_STABLE); } -/* +/** * ewl_callback_call - execute callbacks of specified types with event data - * * @w: the widget to execute the callbacks * @t: the type of the callbacks to be executed * @ev_data: the event data to pass to the callbacks * - * Returns no value. + * Returns no value. Similar to ewl_callback_call, but the event data is + * substituted by @ev_data. */ void ewl_callback_call_with_event_data(Ewl_Widget * w, Ewl_Callback_Type t, @@ -149,15 +152,15 @@ DLEAVE_FUNCTION(DLEVEL_STABLE); } -/* +/** * ewl_callback_set_user_data - set the user data for the specified callback - * * @w: the widget to search for the callback * @type: the type of the callback to be changed * @func: the function whose callback data will be changed * @user_data: the new data to pass into the callback * - * Returns no value. + * Returns no value. Change the user data for the specified callback to + * @user_data. */ void ewl_callback_set_user_data(Ewl_Widget * w, Ewl_Callback_Type type, @@ -184,13 +187,12 @@ DLEAVE_FUNCTION(DLEVEL_STABLE); } -/* +/** * ewl_callback_del_type - delete all callbacks of the specified type - * * @w: the widget to delete the callbacks * @t: the type of the callbacks to be deleted * - * Returns no value. + * Returns no value. Delete all callbacks of type @t from widget @w. */ void ewl_callback_del_type(Ewl_Widget * w, Ewl_Callback_Type t) @@ -208,6 +210,14 @@ DLEAVE_FUNCTION(DLEVEL_STABLE); } +/** + * ewl_callback_del_cb_id - delete the specified callback id from the widget + * @w: the widget to delete the id + * @t: the type of event the callback is attached to + * @cb_id: the id of the callback to delete + * + * Returns no value. Delete the specified callback id from the widget @w. + */ void ewl_callback_del_cb_id(Ewl_Widget * w, Ewl_Callback_Type t, int cb_id) { @@ -231,6 +241,14 @@ DLEAVE_FUNCTION(DLEVEL_STABLE); } + +/** + * ewl_callback_clear - remove all callbacks from the specified widget + * @w: the widget to remove the callbacks + * + * Returns no value. Removes and frees all callbacks associated with widget + * @w. + */ void ewl_callback_clear(Ewl_Widget * w) { @@ -249,6 +267,15 @@ DLEAVE_FUNCTION(DLEVEL_STABLE); } +/** + * ewl_callback_del - delete the specified callback function from the widget + * @w: the widget to delete the callback + * @t: the type of event associated with the callback + * @f: the function called by the callback + * + * Returns no value. Delete and frees the callback that calls function @f when + * event @t occurs to widget @w. + */ void ewl_callback_del(Ewl_Widget * w, Ewl_Callback_Type t, Ewl_Cb_Func f) { =================================================================== RCS file: /cvsroot/enlightenment/e17/libs/ewl/src/ewl_checkbutton.c,v retrieving revision 1.21 retrieving revision 1.22 diff -u -3 -r1.21 -r1.22 --- ewl_checkbutton.c 2001/10/03 07:03:51 1.21 +++ ewl_checkbutton.c 2001/10/17 22:19:08 1.22 @@ -15,7 +15,12 @@ void *user_data); void ewl_button_init(Ewl_Button * b, char *l); - +/** + * ewl_checkbutton_new - allocate and initialize a new check button + * @label: the label to display with the checkbutton, NULL for no label + * + * Returns the newly allocated checkbutton on success, NULL on failure. + */ Ewl_Widget * ewl_checkbutton_new(char *label) { @@ -33,6 +38,14 @@ DRETURN_PTR(EWL_WIDGET(b), DLEVEL_STABLE); } +/** + * ewl_checkbutton_set_checked - change the checked status of the check button + * @w: the check button to change the status + * @c: the new status of the check button + * + * Returns no value. Changes the checked status of the check button and + * updates it's appearance to reflect the change. + */ void ewl_checkbutton_set_checked(Ewl_Widget * w, int c) { @@ -53,6 +66,12 @@ DLEAVE_FUNCTION(DLEVEL_STABLE); } +/** + * ewl_checkbutton_is_checked - determine the check state of the check button + * @w: the check button to examine for it's checked state + * + * Returns TRUE if the button is checked, FALSE if not. + */ int ewl_checkbutton_is_checked(Ewl_Widget * w) { @@ -66,6 +85,14 @@ DRETURN_INT(cb->checked, DLEVEL_STABLE); } +/** + * ewl_checkbutton_set_label_position - set the check buttons label position + * @w: the widget to change the label positioning + * @p: the new position of the label + * + * Returns no value. Changes the position of the label associated with the + * check button. + */ void ewl_checkbutton_set_label_position(Ewl_Widget * w, Ewl_Position p) { @@ -83,6 +110,14 @@ DLEAVE_FUNCTION(DLEVEL_STABLE); } +/** + * ewl_checkbutton_init - initialize the members and callbacks of a check button + * @cb: the check button to initialize + * @label: the label to give the initialized check button + * + * Returns no vlalue.The internal structures and callbacks of the checkbutton + * are initialized ot default values. + */ void ewl_checkbutton_init(Ewl_CheckButton * cb, char *label) { @@ -129,8 +164,7 @@ REQUEST_Y(b->label_object) = CURRENT_Y(w) + 17; MINIMUM_H(w) = MINIMUM_H(b->label_object); MAXIMUM_H(w) = MINIMUM_H(b->label_object); - } - else + } else { REQUEST_Y(b->label_object) = CURRENT_Y(w); REQUEST_Y(b->label_object) += @@ -162,8 +196,7 @@ REQUEST_Y(w)); } - } - else + } else { MAXIMUM_W(w) = 17; MAXIMUM_H(w) = 17; =================================================================== RCS file: /cvsroot/enlightenment/e17/libs/ewl/src/ewl_config.c,v retrieving revision 1.12 retrieving revision 1.13 diff -u -3 -r1.12 -r1.13 --- ewl_config.c 2001/10/03 22:55:58 1.12 +++ ewl_config.c 2001/10/17 22:19:08 1.13 @@ -8,185 +8,202 @@ static E_DB_File *config_db = NULL; -static int create_user_config(void); -static int open_user_config(void); -static int close_config(void); +static void __create_user_config(void); +static int __open_user_config(void); +static void __close_config(void); extern Ewd_List *ewl_window_list; +/** + * ewl_config_init - initialize the configuration system + * + * Returns true on success, false on failure. This sets up the necessary + * configuration variables. + */ int ewl_config_init(void) { - memset(&ewl_config, 0, sizeof(Ewl_Config)); - - if ((open_user_config()) != -1) - { - close_config(); - return 1; - } - else - create_user_config(); - - return 1; -} - -static int -create_user_config(void) -{ - char *home; - char pe[256]; - - home = getenv("HOME"); - - if (!home) - { - DWARNING("Failed to fetch environment variable HOME\n"); - return -1; - } - - snprintf(pe, 1024, "%s/.e", home); - mkdir(pe, 0755); - snprintf(pe, 1024, "%s/.e/ewl", home); - mkdir(pe, 0755); - snprintf(pe, 1024, "%s/.e/ewl/config", home); - mkdir(pe, 0755); - - ewl_config_set_int("/debug/enable", 0); - ewl_config_set_int("/debug/level", 0); - ewl_config_set_str("/evas/render_method", "software"); - ewl_config_set_int("/evas/font_cache", 2097152); - ewl_config_set_int("/evas/image_cache", 8388608); - ewl_config_set_float("/fx/max_fps", 25.0); - ewl_config_set_float("/fx/timeout", 2.0); - ewl_config_set_str("/theme/name", "default"); - ewl_config_set_int("/theme/cache", 1); - - return 1; -} - -static int -open_user_config(void) -{ - char *home; - char path[256]; + DENTER_FUNCTION(DLEVEL_STABLE); - home = getenv("HOME"); + memset(&ewl_config, 0, sizeof(Ewl_Config)); - if (!home) + if (!__open_user_config()) { - DWARNING("Failed to fetch environment variable HOME\n"); - return -1; - } - - snprintf(path, 256, "%s/.e/ewl/config/system.db", home); - - config_db = e_db_open(path); - - if (config_db) - return 1; - - return -1; -} - -static int -close_config(void) -{ - if (config_db) - e_db_close(config_db); - - e_db_flush(); - - return 1; -} - + __close_config(); + DRETURN_INT(FALSE, DLEVEL_STABLE); + } else + __create_user_config(); + + DRETURN_INT(TRUE, DLEVEL_STABLE); +} + +/** + * ewl_config_set_str - set the value of key to the specified string + * @k: the key to set in the configuration database + * @v: the string value that will be associated with the key + * + * Returns TRUE on success, FALSE on failure. Sets the string value associated + * with the key @k to @v in the configuration database. + */ int ewl_config_set_str(char *k, char *v) { - open_user_config(); + DENTER_FUNCTION(DLEVEL_STABLE); + if (!__open_user_config()) + DRETURN_INT(FALSE, DLEVEL_STABLE); + e_db_str_set(config_db, k, v); - close_config(); + __close_config(); - return 1; + DRETURN_INT(TRUE, DLEVEL_STABLE); } + +/** + * ewl_config_set_int - set the value of key to the specified integer + * @k: the key to set in the configuration database + * @v: the integer value that will be associated with the key + * + * Returns TRUE on success, FALSE on failure. Sets the integer value associated + * with the key @k to @v in the configuration database. + */ int ewl_config_set_int(char *k, int v) { - open_user_config(); + DENTER_FUNCTION(DLEVEL_STABLE); + if (!__open_user_config()) + DRETURN_INT(FALSE, DLEVEL_STABLE); + e_db_int_set(config_db, k, v); - close_config(); + __close_config(); - return 1; + DRETURN_INT(TRUE, DLEVEL_STABLE); } + +/** + * ewl_config_set_float - set the value of key to the specified float + * @k: the key to set in the configuration database + * @v: the float value that will be associated with the key + * + * Returns TRUE on success, FALSE on failure. Sets the float value associated + * with the key @k to @v in the configuration database. + */ int ewl_config_set_float(char *k, float v) { - open_user_config(); + DENTER_FUNCTION(DLEVEL_STABLE); + + if (!__open_user_config()) + DRETURN_INT(FALSE, DLEVEL_STABLE); e_db_float_set(config_db, k, v); - close_config(); + __close_config(); - return 1; + DRETURN_INT(TRUE, DLEVEL_STABLE); } + +/** + * ewl_config_get_str - retrieve string value associated with a key + * @k: the key to search + * + * Returns the string value associated with key @k in the configuration + * database on success, NULL on failure. + */ char * ewl_config_get_str(char *k) { char *ret = NULL; - if ((open_user_config()) != -1) + DENTER_FUNCTION(DLEVEL_STABLE); + + if (!__open_user_config()) { ret = e_db_str_get(config_db, k); - close_config(); + __close_config(); } - return ret; + DRETURN_PTR(ret, DLEVEL_STABLE); } + +/** + * ewl_config_get_int - retrieve integer value associated with a key + * @k: the key to search + * + * Returns the integer value associated with key @k in the configuration + * database on success, 0 on failure. + */ int -ewl_config_get_int(char *k, int *v) +ewl_config_get_int(char *k) { int ret = -1; + int v; - if ((open_user_config()) != -1) + DENTER_FUNCTION(DLEVEL_STABLE); + + if (!__open_user_config()) { - ret = e_db_int_get(config_db, k, v); + ret = e_db_int_get(config_db, k, &v); - close_config(); + __close_config(); } + + if (ret < 0) + DRETURN_INT(FALSE, DLEVEL_STABLE); - return ret; + DRETURN_INT(ret, DLEVEL_STABLE); } -int -ewl_config_get_float(char *k, float *v) +/** + * ewl_config_get_float - retrieve floating point value associated with a key + * @k: the key to search + * + * Returns the float value associated with key @k in the configuration + * database on success, 0.0 on failure. + */ +float +ewl_config_get_float(char *k) { int ret = -1; + float v = 0.0; + + DENTER_FUNCTION(DLEVEL_STABLE); - if ((open_user_config()) != -1) + if (!__open_user_config()) { - ret = e_db_float_get(config_db, k, v); + ret = e_db_float_get(config_db, k, &v); - close_config(); + __close_config(); } - return ret; + if (ret < 0) + DRETURN_FLOAT(0.0, DLEVEL_STABLE); + + DRETURN_FLOAT(ret, DLEVEL_STABLE); } +/** + * ewl_config_get_render_method - retrieve the render method of the evas + * + * Returns the found render method on success, software rendering on failure. + */ Evas_Render_Method ewl_config_get_render_method() { Evas_Render_Method method = RENDER_METHOD_ALPHA_SOFTWARE; char *str = NULL; + DENTER_FUNCTION(DLEVEL_STABLE); + str = ewl_config_get_str("/evas/render_method"); if (str) @@ -201,9 +218,15 @@ FREE(str); } - return method; + DRETURN_INT(method, DLEVEL_STABLE); } +/** + * ewl_config_reread_and_apply - reread the values of the configuration database + * + * Returns no value. Reads in the values of the configuration database and + * applies them to the running ewl program. + */ void ewl_config_reread_and_apply(void) { @@ -211,15 +234,15 @@ DENTER_FUNCTION(DLEVEL_STABLE); - ewl_config_get_int("/debug/enable", &nc.debug.enable); - ewl_config_get_int("/debug/level", &nc.debug.level); - ewl_config_get_int("/evas/font_cache", &nc.evas.font_cache); - ewl_config_get_int("/evas/image_cache", &nc.evas.image_cache); + nc.debug.enable = ewl_config_get_int("/debug/enable"); + nc.debug.level = ewl_config_get_int("/debug/level"); + nc.evas.font_cache = ewl_config_get_int("/evas/font_cache"); + nc.evas.image_cache = ewl_config_get_int("/evas/image_cache"); nc.evas.render_method = ewl_config_get_str("/evas/render_method"); - ewl_config_get_float("/fx/max_fps", &nc.fx.max_fps); - ewl_config_get_float("/fx/timeout", &nc.fx.timeout); + nc.fx.max_fps = ewl_config_get_float("/fx/max_fps"); + nc.fx.timeout = ewl_config_get_float("/fx/timeout"); nc.theme.name = ewl_config_get_str("/theme/name"); - ewl_config_get_int("/theme/cache", &nc.theme.cache); + nc.theme.cache = ewl_config_get_int("/theme/cache"); if (ewl_window_list && !ewd_list_is_empty(ewl_window_list)) { @@ -265,6 +288,81 @@ ewl_config.fx.timeout = nc.fx.timeout; ewl_config.theme.name = nc.theme.name; ewl_config.theme.cache = nc.theme.cache; + + DLEAVE_FUNCTION(DLEVEL_STABLE); +} + +static void +__create_user_config(void) +{ + char *home; + char pe[256]; + + DENTER_FUNCTION(DLEVEL_STABLE); + + home = getenv("HOME"); + + if (!home) + { + DWARNING("Failed to fetch environment variable HOME\n"); + DRETURN(DLEVEL_STABLE); + } + + snprintf(pe, 1024, "%s/.e", home); + mkdir(pe, 0755); + snprintf(pe, 1024, "%s/.e/ewl", home); + mkdir(pe, 0755); + snprintf(pe, 1024, "%s/.e/ewl/config", home); + mkdir(pe, 0755); + + ewl_config_set_int("/debug/enable", 0); + ewl_config_set_int("/debug/level", 0); + ewl_config_set_str("/evas/render_method", "software"); + ewl_config_set_int("/evas/font_cache", 2097152); + ewl_config_set_int("/evas/image_cache", 8388608); + ewl_config_set_float("/fx/max_fps", 25.0); + ewl_config_set_float("/fx/timeout", 2.0); + ewl_config_set_str("/theme/name", "default"); + ewl_config_set_int("/theme/cache", 1); + + DRETURN(DLEVEL_STABLE); +} + +static int +__open_user_config(void) +{ + char *home; + char path[256]; + + DENTER_FUNCTION(DLEVEL_STABLE); + + home = getenv("HOME"); + + if (!home) + { + DWARNING("Failed to fetch environment variable HOME\n"); + DRETURN_INT(FALSE, DLEVEL_STABLE); + } + + snprintf(path, 256, "%s/.e/ewl/config/system.db", home); + + config_db = e_db_open(path); + + if (config_db) + DRETURN_INT(TRUE, DLEVEL_STABLE); + + DRETURN_INT(FALSE, DLEVEL_STABLE); +} + +static void +__close_config(void) +{ + DENTER_FUNCTION(DLEVEL_STABLE); + + if (config_db) + e_db_close(config_db); + + e_db_flush(); DLEAVE_FUNCTION(DLEVEL_STABLE); } =================================================================== RCS file: /cvsroot/enlightenment/e17/libs/ewl/src/ewl_config.h,v retrieving revision 1.10 retrieving revision 1.11 diff -u -3 -r1.10 -r1.11 --- ewl_config.h 2001/10/03 22:55:58 1.10 +++ ewl_config.h 2001/10/17 22:19:08 1.11 @@ -40,8 +40,8 @@ int ewl_config_set_int(char *k, int v); int ewl_config_set_float(char *k, float v); char *ewl_config_get_str(char *k); -int ewl_config_get_int(char *k, int *v); -int ewl_config_get_float(char *k, float *v); +int ewl_config_get_int(char *k); +float ewl_config_get_float(char *k); Evas_Render_Method ewl_config_get_render_method(); void ewl_config_reread_and_apply(void); =================================================================== RCS file: /cvsroot/enlightenment/e17/libs/ewl/src/ewl_container.c,v retrieving revision 1.18 retrieving revision 1.19 diff -u -3 -r1.18 -r1.19 --- ewl_container.c 2001/10/09 05:55:12 1.18 +++ ewl_container.c 2001/10/17 22:19:08 1.19 @@ -11,6 +11,15 @@ void __ewl_container_child_destroy(Ewl_Widget * w, void *ev_data, void *user_data); +/** + * ewl_container_init - initialize a containers default fields and callbacks + * @c: the container to initialize + * @appearance: the appearance key for this container + * + * Returns no value. Initializes the default values of the container, this + * also sets up the widget fields of the container, so the @appearance string + * is necessary. + */ void ewl_container_init(Ewl_Container * c, char *appearance) { @@ -50,6 +59,14 @@ DLEAVE_FUNCTION(DLEVEL_STABLE); } +/** + * ewl_container_append_child - add a child at the end of the container + * @pc: the parent container that will hold the child + * @child: the child to add to the container + * + * Returns no value. Attaches the child to the end of the parent containers + * child list. + */ void ewl_container_append_child(Ewl_Container * pc, Ewl_Widget * child) { @@ -77,6 +94,15 @@ DLEAVE_FUNCTION(DLEVEL_STABLE); } + +/** + * ewl_container_prepend_child - add a child at the end of the container + * @pc: the parent container that will hold the child + * @child: the child to add to the container + * + * Returns no value. Attaches the child to the start of the parent containers + * child list. + */ void ewl_container_prepend_child(Ewl_Container * pc, Ewl_Widget * child) { @@ -104,6 +130,16 @@ DLEAVE_FUNCTION(DLEVEL_STABLE); } + +/** + * ewl_container_insert_child - add a child at an index of the container + * @pc: the parent container that will hold the child + * @child: the child to add to the container + * @index: the position in the child list to add the cihld + * + * Returns no value. Attaches the child to the @index position of the parent + * containers child list. + */ void ewl_container_insert_child(Ewl_Container * pc, Ewl_Widget * child, int index) { @@ -132,6 +168,14 @@ DLEAVE_FUNCTION(DLEVEL_STABLE); } +/** + * ewl_container_remove_child - remove the specified child from the container + * @pc: the container to search for the child to remove + * @child: the child to remove from the container + * + * Returns no value. Removes the specified child from the container without + * destroying the child. + */ void ewl_container_remove_child(Ewl_Container * pc, Ewl_Widget * child) { @@ -158,6 +202,15 @@ DLEAVE_FUNCTION(DLEVEL_STABLE); } +/** + * ewl_container_get_child_at - find the child at the given coordinates + * @widget: the searched container + * @x: the x coordinate to search for + * @y: the y coordinate to search for + * + * Returns the found widget on success, NULL on failure. The given container + * is searched to find any child that intersects the given coordinates. + */ Ewl_Widget * ewl_container_get_child_at(Ewl_Container * widget, int x, int y) { @@ -185,7 +238,6 @@ /** * ewl_container_get_child_at_recursive - find child that intersects coordinates - * * @widget: the widget to search for intersecting child * @x: the x coordinate of the intersection point * @y: the y coordinate of the intersection point =================================================================== RCS file: /cvsroot/enlightenment/e17/libs/ewl/src/ewl_entry.c,v retrieving revision 1.29 retrieving revision 1.30 diff -u -3 -r1.29 -r1.30 --- ewl_entry.c 2001/10/08 02:41:45 1.29 +++ ewl_entry.c 2001/10/17 22:19:08 1.30 @@ -200,8 +200,7 @@ xx += CURRENT_W(e->text); ww = 5; hh = CURRENT_H(w) - tt - bb; - } - else + } else { xx += xx2; yy += yy2; @@ -235,8 +234,7 @@ ww -= sw; ww += ex - sx; ww += ew; - } - else if (ee < 0) + } else if (ee < 0) { xx -= sx; xx += ex; @@ -330,8 +328,7 @@ if (str) len = index = strlen(str); - } - else + } else ewl_text_get_index_at(e->text, (double) (ev->x), (double) (CURRENT_Y(e->text) + (CURRENT_H(e->text) / 2)), @@ -402,11 +399,9 @@ ewl_cursor_set_position(e->cursor, index + 1); - } - else if (ev->x < CURRENT_X(e->text)) + } else if (ev->x < CURRENT_X(e->text)) { - } - else if (ev->x > CURRENT_X(e->text) + CURRENT_W(e->text)) + } else if (ev->x > CURRENT_X(e->text) + CURRENT_W(e->text)) { char *str; @@ -470,8 +465,8 @@ font = ewl_theme_data_get_str(w, "/appearance/entry/default/text/font"); - ewl_theme_data_get_int(w, "/appearance/entry/default/text/font_size", - &size); + size = ewl_theme_data_get_int(w, + "/appearance/entry/default/text/font_size"); style = ewl_theme_data_get_str(w, "/appearance/entry/default/text/style"); =================================================================== RCS file: /cvsroot/enlightenment/e17/libs/ewl/src/ewl_events.c,v retrieving revision 1.17 retrieving revision 1.18 diff -u -3 -r1.17 -r1.18 --- ewl_events.c 2001/10/03 07:03:51 1.17 +++ ewl_events.c 2001/10/17 22:19:08 1.18 @@ -17,8 +17,10 @@ static void ewl_ev_mouse_up(Eevent * _ev); static void ewl_ev_mouse_move(Eevent * _ev); -/* - * Initialize the event handlers for dispatching to the proper widgets +/** + * ewl_ev_init - initialize the event handlers for dispatching to proper widgets + * + * Returns true or false to indicate success in initiating the event filters. */ int ewl_ev_init(void) @@ -40,13 +42,20 @@ DRETURN_INT(1, DLEVEL_STABLE); } -/* - * Widgets don't need to know about this usually, but we still need to let - * them know in case a widget is using a non-evas based draw method +/** + * ewl_ev_window_expose - handles the exposing of a window + * @_ev: the expose event information + * + * Returns no value. Dispatches the expose event to the appropriate window for + * handling. */ static void ewl_ev_window_expose(Eevent * _ev) { + /* + * Widgets don't need to know about this usually, but we still need to + * let them know in case a widget is using a non-evas based draw method + */ Ev_Window_Expose *ev; Ewl_Window *window; @@ -65,13 +74,20 @@ DLEAVE_FUNCTION(DLEVEL_STABLE); } -/* - * When a configure event occurs, we must update the windows geometry based on - * the coordinates and dimensions given in the Eevent. +/** + * ewl_ev_window_configure - handles configure events that occur in windows + * @_ev: the configure event information + * + * Returns no value. Dispatches a configure even to the appropriate ewl + * window. */ static void ewl_ev_window_configure(Eevent * _ev) { + /* + * When a configure event occurs, we must update the windows geometry + * based on the coordinates and dimensions given in the Eevent. + */ Ev_Window_Configure *ev; Ewl_Window *window; @@ -106,13 +122,20 @@ } */ -/* - * Retrieve the appropriate ewl_window using the x window id that is held - * in the eevent, and call it's handlers for a window delete event. +/** + * ewl_ev_window_delete - handles delete events that occur to windows + * @_ev: the delete event information + * + * Returns no value. Dispatches the delete event to the appropriate ewl + * window. */ static void ewl_ev_window_delete(Eevent * _ev) { + /* + * Retrieve the appropriate ewl_window using the x window id that is + * held in the eevent, and call it's handlers for a window delete event. + */ Ev_Window_Delete *ev; Ewl_Window *window; @@ -130,12 +153,20 @@ DLEAVE_FUNCTION(DLEVEL_STABLE); } -/* - * Dispatcher of key down events, these get sent to the last widget selected +/** + * ewl_ev_key_down - handles key down events in windows + * @_ev: the key down event information + * + * Returns no value. Dispatches the key down event to the appropriate ewl + * window. */ static void ewl_ev_key_down(Eevent * _ev) { + /* + * Dispatcher of key down events, these get sent to the last widget + * selected. + */ Ewl_Window *window; Ev_Key_Down *ev; @@ -160,12 +191,19 @@ DLEAVE_FUNCTION(DLEVEL_STABLE); } -/* - * Dispatch key up events to the appropriate widget +/** + * ewl_ev_key_up - handles key up events in windows + * @_ev: the key up event information + * + * Returns no value. Dispatches the key up event to the appropriate ewl + * window. */ static void ewl_ev_key_up(Eevent * _ev) { + /* + * Dispatch key up events to the appropriate widget + */ Ewl_Window *window; Ev_Key_Up *ev; @@ -188,6 +226,14 @@ DLEAVE_FUNCTION(DLEVEL_STABLE); } + +/** + * ewl_ev_mouse_down - handles mouse down events in windows + * @_ev: the mouse down event information + * + * Returns no value. Dispatches the mouse down event to the appropriate ewl + * window. Also determines the widgets clicked state. + */ static void ewl_ev_mouse_down(Eevent * _ev) { @@ -247,6 +293,14 @@ DLEAVE_FUNCTION(DLEVEL_STABLE); } + +/** + * ewl_ev_mouse_up - handles mouse up events in windows + * @_ev: the mouse up event information + * + * Returns no value. Dispatches the mouse up event to the appropriate ewl + * window. Also determines the widgets clicked state. + */ static void ewl_ev_mouse_up(Eevent * _ev) { @@ -272,6 +326,14 @@ DLEAVE_FUNCTION(DLEVEL_STABLE); } + +/** + * ewl_ev_mouse_move - handles mouse move events in windows + * @_ev: the mouse move event information + * + * Returns no value. Dispatches the mouse move event to the appropriate ewl + * window. + */ static void ewl_ev_mouse_move(Eevent * _ev) { =================================================================== RCS file: /cvsroot/enlightenment/e17/libs/ewl/src/ewl_fx.c,v retrieving revision 1.11 retrieving revision 1.12 diff -u -3 -r1.11 -r1.12 --- ewl_fx.c 2001/10/03 07:03:51 1.11 +++ ewl_fx.c 2001/10/17 22:19:08 1.12 @@ -2,19 +2,34 @@ #include <Ewl.h> -static void ewl_fx_handle_fade_in(int val, void *data); -static void ewl_fx_handle_fade_out(int val, void *data); -static void ewl_fx_handle_glow(int val, void *data); +static void __ewl_fx_handle_fade_in(int val, void *data); +static void __ewl_fx_handle_fade_out(int val, void *data); +static void __ewl_fx_handle_glow(int val, void *data); +/** + * ewl_fx_init - initialize the fx system + * + * Returns TRUE on success, FALSE on failure. Sets up any necessary internal + * structures for the fx system. + */ int ewl_fx_init() { - DENTER_FUNCTION(DLEVEL_STABLE); + DENTER_FUNCTION(DLEVEL_TESTING); - DRETURN_INT(1, DLEVEL_TESTING); + DRETURN_INT(TRUE, DLEVEL_TESTING); } +/** + * ewl_fx_add - add fx of a specified type to a widget + * @widget: the widget to add the fx + * @type: the type of fx to add + * @func: the callback function when the fx are executed + * @func_data: the function data passed to the callback function + * + * Returns no value. Adds the specified fx to the widget @widget. + */ void ewl_fx_add(Ewl_Widget * widget, Ewl_FX_Type type, void (*func) (Ewl_Widget * widget, void *func_data), @@ -22,10 +37,9 @@ { Ewl_FX_Timer *timer = NULL; - DENTER_FUNCTION(DLEVEL_STABLE); + DENTER_FUNCTION(DLEVEL_TESTING); + DCHECK_PARAM_PTR("widget", widget); - CHECK_PARAM_POINTER("widget", widget); - timer = NEW(Ewl_FX_Timer, 1); if (!timer) DRETURN(DLEVEL_STABLE); @@ -67,29 +81,30 @@ if (timer->type == EWL_FX_TYPE_FADE_IN) e_add_event_timer(timer->name, timer->timeout, - ewl_fx_handle_fade_in, timer->start_val, + __ewl_fx_handle_fade_in, timer->start_val, timer); else if (timer->type == EWL_FX_TYPE_FADE_OUT) e_add_event_timer(timer->name, timer->timeout, - ewl_fx_handle_fade_out, timer->start_val, + __ewl_fx_handle_fade_out, timer->start_val, timer); else if (timer->type == EWL_FX_TYPE_GLOW) e_add_event_timer(timer->name, timer->timeout, - ewl_fx_handle_glow, timer->start_val, + __ewl_fx_handle_glow, timer->start_val, timer); - DLEAVE_FUNCTION(DLEVEL_STABLE); + DLEAVE_FUNCTION(DLEVEL_TESTING); } static void -ewl_fx_handle_fade_in(int val, void *data) +__ewl_fx_handle_fade_in(int val, void *data) { Ewl_FX_Timer *timer = NULL; Ewl_Widget *widget = NULL; - CHECK_PARAM_POINTER("data", data); + DENTER_FUNCTION(DLEVEL_TESTING); + DCHECK_PARAM_PTR("data", data); timer = data; widget = timer->widget; @@ -102,35 +117,36 @@ { e_add_event_timer(timer->name, timer->timeout, - ewl_fx_handle_fade_in, + __ewl_fx_handle_fade_in, val + timer->increase, timer); - } - else + } else { timer->repeat--; if (timer->repeat > 0) { e_add_event_timer(timer->name, timer->timeout, - ewl_fx_handle_fade_in, + __ewl_fx_handle_fade_in, timer->start_val, timer); - } - else + } else { if (timer->func) timer->func(timer->widget, timer->func_data); } } + + DLEAVE_FUNCTION(DLEVEL_TESTING); } static void -ewl_fx_handle_fade_out(int val, void *data) +__ewl_fx_handle_fade_out(int val, void *data) { Ewl_FX_Timer *timer = NULL; Ewl_Widget *widget = NULL; - CHECK_PARAM_POINTER("data", data); + DENTER_FUNCTION(DLEVEL_TESTING); + DCHECK_PARAM_PTR("data", data); timer = data; widget = timer->widget; @@ -143,35 +159,36 @@ { e_add_event_timer(timer->name, timer->timeout, - ewl_fx_handle_fade_out, + __ewl_fx_handle_fade_out, val - timer->increase, timer); - } - else + } else { timer->repeat--; if (timer->repeat > 0) { e_add_event_timer(timer->name, timer->timeout, - ewl_fx_handle_fade_out, + __ewl_fx_handle_fade_out, timer->start_val, timer); - } - else + } else { if (timer->func) timer->func(timer->widget, timer->func_data); } } + + DLEAVE_FUNCTION(DLEVEL_TESTING); } static void -ewl_fx_handle_glow(int val, void *data) +__ewl_fx_handle_glow(int val, void *data) { Ewl_FX_Timer *timer = NULL; Ewl_Widget *widget = NULL; - CHECK_PARAM_POINTER("data", data); + DENTER_FUNCTION(DLEVEL_TESTING); + DCHECK_PARAM_PTR("data", data); timer = data; widget = timer->widget; @@ -183,13 +200,12 @@ if (timer->start_val == 5 && val < 255) { e_add_event_timer(timer->name, - timer->timeout, ewl_fx_handle_glow, + timer->timeout, __ewl_fx_handle_glow, val + 5, timer); - } - else if (timer->start_val == 255 && val > 5) + } else if (timer->start_val == 255 && val > 5) { e_add_event_timer(timer->name, - timer->timeout, ewl_fx_handle_glow, + timer->timeout, __ewl_fx_handle_glow, val - 5, timer); } @@ -199,7 +215,7 @@ timer->start_val = 5; e_add_event_timer(timer->name, timer->timeout, - ewl_fx_handle_glow, timer->start_val, + __ewl_fx_handle_glow, timer->start_val, timer); } @@ -208,7 +224,9 @@ timer->start_val = 255; e_add_event_timer(timer->name, timer->timeout, - ewl_fx_handle_glow, timer->start_val, + __ewl_fx_handle_glow, timer->start_val, timer); } + + DLEAVE_FUNCTION(DLEVEL_TESTING); } =================================================================== RCS file: /cvsroot/enlightenment/e17/libs/ewl/src/ewl_list.c,v retrieving revision 1.13 retrieving revision 1.14 diff -u -3 -r1.13 -r1.14 --- ewl_list.c 2001/10/08 02:14:27 1.13 +++ ewl_list.c 2001/10/17 22:19:08 1.14 @@ -276,8 +276,7 @@ if (!strcmp(ev->key, "Up")) { __ewl_list_move_up_selection(widget, multiple); - } - else if (!strcmp(ev->key, "Down")) + } else if (!strcmp(ev->key, "Down")) { __ewl_list_move_down_selection(widget, multiple); } =================================================================== RCS file: /cvsroot/enlightenment/e17/libs/ewl/src/ewl_misc.c,v retrieving revision 1.18 retrieving revision 1.19 diff -u -3 -r1.18 -r1.19 --- ewl_misc.c 2001/10/03 07:03:51 1.18 +++ ewl_misc.c 2001/10/17 22:19:08 1.19 @@ -33,16 +33,16 @@ e_ev_signal_init(); e_ev_x_init(); - if ((ewl_config_init()) == -1) + if (!ewl_config_init()) DERROR("Couldn't init config data.. Exiting...."); - if ((ewl_ev_init()) == -1) + if (!ewl_ev_init()) DERROR("Couldn't init event data.. Exiting...."); - if ((ewl_fx_init()) == -1) + if (!ewl_fx_init()) DERROR("Couldn't init fx data.. Exiting...."); - if ((ewl_theme_init()) == -1) + if (!ewl_theme_init()) DERROR("Couldn't init theme data.. Exiting...."); ewl_window_list = ewd_list_new(); =================================================================== RCS file: /cvsroot/enlightenment/e17/libs/ewl/src/ewl_notebook.c,v retrieving revision 1.6 retrieving revision 1.7 diff -u -3 -r1.6 -r1.7 --- ewl_notebook.c 2001/10/09 08:09:35 1.6 +++ ewl_notebook.c 2001/10/17 22:19:08 1.7 @@ -130,101 +130,101 @@ Ewl_NotebookPage * ewl_notebook_remove_first_page(Ewl_Widget * w) { - Ewl_Notebook *n; - Ewl_NotebookPage *np; - Ewl_NotebookPage *nnp; - Ewl_Widget *tab; - Ewl_Widget *page; + Ewl_Notebook *n; + Ewl_NotebookPage *np; + Ewl_NotebookPage *nnp; + Ewl_Widget *tab; + Ewl_Widget *page; - DENTER_FUNCTION(DLEVEL_STABLE); - DCHECK_PARAM_PTR_RET("w", w, NULL); + DENTER_FUNCTION(DLEVEL_STABLE); + DCHECK_PARAM_PTR_RET("w", w, NULL); - n = EWL_NOTEBOOK(w); - np = NULL; + n = EWL_NOTEBOOK(w); + np = NULL; - if (!n->pages || ewd_list_is_empty(n->pages)) - DRETURN_PTR(NULL, DLEVEL_STABLE); + if (!n->pages || ewd_list_is_empty(n->pages)) + DRETURN_PTR(NULL, DLEVEL_STABLE); - np = ewd_list_goto_first(n->pages); + np = ewd_list_goto_first(n->pages); - if (np == n->visible_np) - DRETURN_PTR(ewl_notebook_remove_visible(w), DLEVEL_STABLE); + if (np == n->visible_np) + DRETURN_PTR(ewl_notebook_remove_visible(w), DLEVEL_STABLE); - if (!np) - DRETURN_PTR(NULL, DLEVEL_STABLE); + if (!np) + DRETURN_PTR(NULL, DLEVEL_STABLE); - ewd_list_remove(n->pages); + ewd_list_remove(n->pages); - ewl_container_remove_child(EWL_CONTAINER(n->tab_box), np->tab); - ewl_container_remove_child(EWL_CONTAINER(w), np->page); + ewl_container_remove_child(EWL_CONTAINER(n->tab_box), np->tab); + ewl_container_remove_child(EWL_CONTAINER(w), np->page); - tab = ewd_list_goto_first(EWL_CONTAINER(np->tab)->children); - ewl_container_remove_child(EWL_CONTAINER(np->tab), tab); - ewl_widget_hide(tab); + tab = ewd_list_goto_first(EWL_CONTAINER(np->tab)->children); + ewl_container_remove_child(EWL_CONTAINER(np->tab), tab); + ewl_widget_hide(tab); - page = ewd_list_goto_first(EWL_CONTAINER(np->page)->children); - ewl_container_remove_child(EWL_CONTAINER(np->page), page); - ewl_widget_hide(page); + page = ewd_list_goto_first(EWL_CONTAINER(np->page)->children); + ewl_container_remove_child(EWL_CONTAINER(np->page), page); + ewl_widget_hide(page); - nnp = ewl_notebook_page_new(tab, page); + nnp = ewl_notebook_page_new(tab, page); - ewl_widget_destroy_recursive(np->tab); - ewl_widget_destroy_recursive(np->page); + ewl_widget_destroy_recursive(np->tab); + ewl_widget_destroy_recursive(np->page); - ewl_widget_configure(w); - ewl_widget_configure(w); + ewl_widget_configure(w); + ewl_widget_configure(w); - DRETURN_PTR(nnp, DLEVEL_STABLE); + DRETURN_PTR(nnp, DLEVEL_STABLE); } Ewl_NotebookPage * ewl_notebook_remove_last_page(Ewl_Widget * w) { - Ewl_Notebook *n; - Ewl_NotebookPage *np; - Ewl_NotebookPage *nnp; - Ewl_Widget *tab; - Ewl_Widget *page; - - DENTER_FUNCTION(DLEVEL_STABLE); - DCHECK_PARAM_PTR_RET("w", w, NULL); - - n = EWL_NOTEBOOK(w); - np = NULL; - - if (!n->pages || ewd_list_is_empty(n->pages)) - DRETURN_PTR(NULL, DLEVEL_STABLE); - - np = ewd_list_goto_last(n->pages); - - if (np == n->visible_np) - DRETURN_PTR(ewl_notebook_remove_visible(w), DLEVEL_STABLE); - - if (!np) - DRETURN_PTR(NULL, DLEVEL_STABLE); - - ewd_list_remove(n->pages); - - ewl_container_remove_child(EWL_CONTAINER(n->tab_box), np->tab); - ewl_container_remove_child(EWL_CONTAINER(w), np->page); - - tab = ewd_list_goto_first(EWL_CONTAINER(np->tab)->children); - ewl_container_remove_child(EWL_CONTAINER(np->tab), tab); - ewl_widget_hide(tab); - - page = ewd_list_goto_first(EWL_CONTAINER(np->page)->children); - ewl_container_remove_child(EWL_CONTAINER(np->page), page); - ewl_widget_hide(page); - - nnp = ewl_notebook_page_new(tab, page); - - ewl_widget_destroy_recursive(np->tab); - ewl_widget_destroy_recursive(np->page); - - ewl_widget_configure(w); - ewl_widget_configure(w); + Ewl_Notebook *n; + Ewl_NotebookPage *np; + Ewl_NotebookPage *nnp; + Ewl_Widget *tab; + Ewl_Widget *page; - DRETURN_PTR(nnp, DLEVEL_STABLE); + DENTER_FUNCTION(DLEVEL_STABLE); + DCHECK_PARAM_PTR_RET("w", w, NULL); + + n = EWL_NOTEBOOK(w); + np = NULL; + + if (!n->pages || ewd_list_is_empty(n->pages)) + DRETURN_PTR(NULL, DLEVEL_STABLE); + + np = ewd_list_goto_last(n->pages); + + if (np == n->visible_np) + DRETURN_PTR(ewl_notebook_remove_visible(w), DLEVEL_STABLE); + + if (!np) + DRETURN_PTR(NULL, DLEVEL_STABLE); + + ewd_list_remove(n->pages); + + ewl_container_remove_child(EWL_CONTAINER(n->tab_box), np->tab); + ewl_container_remove_child(EWL_CONTAINER(w), np->page); + + tab = ewd_list_goto_first(EWL_CONTAINER(np->tab)->children); + ewl_container_remove_child(EWL_CONTAINER(np->tab), tab); + ewl_widget_hide(tab); + + page = ewd_list_goto_first(EWL_CONTAINER(np->page)->children); + ewl_container_remove_child(EWL_CONTAINER(np->page), page); + ewl_widget_hide(page); + + nnp = ewl_notebook_page_new(tab, page); + + ewl_widget_destroy_recursive(np->tab); + ewl_widget_destroy_recursive(np->page); + + ewl_widget_configure(w); + ewl_widget_configure(w); + + DRETURN_PTR(nnp, DLEVEL_STABLE); } Ewl_NotebookPage * =================================================================== RCS file: /cvsroot/enlightenment/e17/libs/ewl/src/ewl_object.c,v retrieving revision 1.17 retrieving revision 1.18 diff -u -3 -r1.17 -r1.18 --- ewl_object.c 2001/10/03 13:04:30 1.17 +++ ewl_object.c 2001/10/17 22:19:08 1.18 @@ -1,6 +1,13 @@ #include <Ewl.h> +/** + * ewl_object_init - initialize the fields of an object + * @o: the object to initialize + * + * Returns no value. Sets all of the fields of the object @o to their default + * values. + */ void ewl_object_init(Ewl_Object * o) { @@ -18,6 +25,17 @@ o->align = EWL_ALIGNMENT_LEFT | EWL_ALIGNMENT_TOP; } +/** + * ewl_object_set_current_geometry - set the current size and posiiton of object + * @o: the object to change + * @x: the new x coordinate of the object + * @y: the new y coordinate of the object + * @w: the new width of the object + * @h: the new height of the object + * + * Returns no value. Sets the geometry of @o to the size and position + * specified. + */ void ewl_object_set_current_geometry(Ewl_Object * o, int x, int y, int w, int h) { @@ -39,6 +57,17 @@ CURRENT_H(o) = MAXIMUM_H(o); } +/** + * ewl_object_get_current_geometry - retrieve the size and position of object + * @o: the object to retrieve size and position + * @x: a pointer to the integer to store the x coordinate + * @y: a pointer to the integer to store the y coordinate + * @w: a pointer to the integer to store the width + * @h: a pointer to the integer to store the height + * + * Returns no value. Examines @o and stores it's size and position into the + * integers pointed to by the parameters @x, @y, @w, and @h. + */ void ewl_object_get_current_geometry(Ewl_Object * o, int *x, int *y, int *w, int *h) @@ -55,6 +84,17 @@ *h = o->current.h; } +/** + * ewl_object_set_current_size - set the current size of the object + * @o: the object to change size + * @w: the new width of the object + * @h: the new height of the object + * + * Returns no value. The dimensions of the object @o are set to the values of + * the parameters @w, and @h unless these values are greater than the objects + * maximum value or smaller than the objects minimum value. If they are + * outside these bounds, the size is not altered. + */ void ewl_object_set_current_size(Ewl_Object * o, int w, int h) { @@ -67,6 +107,15 @@ o->current.h = h; } +/** + * ewl_object_get_current_size - retrieve the current size of an object + * @o: the object to retrieve size information + * @w: a pointer to the integer to store the width of the object + * @h: a pointer to the integer to store the height of the object + * + * Returns no value. Stores the width and height of object @o into @w and @h + * respectively. + */ void ewl_object_get_current_size(Ewl_Object * o, int *w, int *h) { @@ -78,6 +127,18 @@ *h = o->current.h; } +/** + * ewl_object_request_geometry - request a new geometry be applied to an object + * @o: the object to request a new size + * @x: the x coordinate to request be applied to the object + * @y: the y coordinate to request be applied to the object + * @w: the width to request be applied to the object + * @h: the height to request be applied to the object + * + * Returns no value. The given geometry is requested to be applied to the + * object @o at a later time. This is the usual method for requesting a new + * geometry for an object. + */ void ewl_object_request_geometry(Ewl_Object * o, int x, int y, int w, int h) { @@ -89,6 +150,17 @@ o->request.h = h; } + +/** + * ewl_object_request_size - request a new size be applied to an object + * @o: the object to request a new size + * @w: the width to request be applied to the object + * @h: the height to request be applied to the object + * + * Returns no value. The given size is requested to be applied to the + * object @o at a later time. This is the usual method for requesting a new + * size for an object. + */ void ewl_object_request_size(Ewl_Object * o, int w, int h) { @@ -98,6 +170,17 @@ o->request.h = h; } + +/** + * ewl_object_request_size - request a new position be applied to an object + * @o: the object to request a new size + * @x: the x coordinate to request be applied to the object + * @y: the y coordinate to request be applied to the object + * + * Returns no value. The given position is requested to be applied to the + * object @o at a later time. This is the usual method for requesting a new + * position for an object. + */ void ewl_object_request_position(Ewl_Object * o, int x, int y) { @@ -107,6 +190,14 @@ o->request.y = y; } +/** + * ewl_object_request_x - request a new x position for an object + * @o: the object to request a new x position + * @x: the new x coordinate to be applied to the object + * + * Returns no value. The given x coordinate is stored to be applied to the + * object @o at a later time. + */ inline void ewl_object_request_x(Ewl_Object * o, int x) { @@ -115,6 +206,15 @@ o->request.x = x; } + +/** + * ewl_object_request_y - request a new y position for an object + * @o: the object to request a new y position + * @y: the new y coordinate to be applied to the object + * + * Returns no value. The given y coordinate is stored to be applied to the + * object @o at a later time. + */ inline void ewl_object_request_y(Ewl_Object * o, int y) { @@ -123,6 +223,15 @@ o->request.y = y; } + +/** + * ewl_object_request_w - request a new width for an object + * @o: the object to request a new width + * @w: the new width to be applied to the object + * + * Returns no value. The given width is stored to be applied to the + * object @o at a later time. + */ inline void ewl_object_request_w(Ewl_Object * o, int w) { @@ -131,6 +240,15 @@ o->request.w = w; } + +/** + * ewl_object_request_w - request a new width for an object + * @o: the object to request a new height + * @h: the new height to be applied to the object + * + * Returns no value. The given height is stored to be applied to the + * object @o at a later time. + */ inline void ewl_object_request_h(Ewl_Object * o, int h) { @@ -139,6 +257,17 @@ o->request.h = h; } +/** + * ewl_object_requested_geometry - retrieve an objects requested geometry + * @o: the object to query for requested geometry + * @x: a pointer to the integer to store the requested x coordinate + * @y: a pointer to the integer to store the requested y coordinate + * @w: a pointer to the integer to store the requested width + * @h: a pointer to the integer to store the requested height + * + * Returns no value. The requested geometry of the object @o is stored in the + * the integers pointed to by @x, @y, @w, and @h. + */ void ewl_object_requested_geometry(Ewl_Object * o, int *x, int *y, int *w, int *h) { @@ -154,31 +283,70 @@ *h = o->request.h; } + +/** + * ewl_object_requested_size - retrieve an objects requested size + * @o: the object to query for requested size + * @w: a pointer to the integer to store the requested width + * @h: a pointer to the integer to store the requested height + * + * Returns no value. The requested size of the object @o is stored in the + * the integers pointed to by @w and @h. + */ void ewl_object_requested_size(Ewl_Object * o, int *w, int *h) { DCHECK_PARAM_PTR("o", o); if (w) - w = o->request.w; + *w = REQUEST_W(o); if (h) - h = o->request.h; + *h = REQUEST_H(o); } +/** + * ewl_object_set_minimum_size - set the minimum size of an object + * @o: the object to change the minimum size + * @w: the new minimum width + * @h: the new minimum height + * + * Returns no value. Sets the minimum size of the object @o to @w x @h. If the + * current size or maximum size are less than the new minimum, they are set to + * the new minimum size. + */ void ewl_object_set_minimum_size(Ewl_Object * o, int w, int h) { DCHECK_PARAM_PTR("o", o); + DENTER_FUNCTION(DLEVEL_STABLE); o->minimum.w = w; if (CURRENT_W(o) < w) CURRENT_W(o) = w; + if (MAXIMUM_W(o) < w) + MAXIMUM_W(o) = w; + o->minimum.h = h; if (CURRENT_H(o) < h) CURRENT_H(o) = h; + + if (MAXIMUM_H(o) < h) + MAXIMUM_H(o) = h; + + DLEAVE_FUNCTION(DLEVEL_STABLE); } + +/** + * ewl_object_set_minimum_width - set the minimum width of an object + * @o: the object to change the minimum width + * @w: the new minimum width + * + * Returns no value. Sets the minimum width of the object @o to @w. If the + * current width or maximum width are less than the new minimum, they are set to + * the new minimum width. + */ inline void ewl_object_set_minimum_width(Ewl_Object * o, int w) { @@ -186,10 +354,25 @@ DCHECK_PARAM_PTR("o", o); o->minimum.w = w; + if (CURRENT_W(o) < w) + CURRENT_W(o) = w; + + if (MAXIMUM_W(o) < w) + MAXIMUM_W(o) = w; DLEAVE_FUNCTION(DLEVEL_STABLE); } + +/** + * ewl_object_set_minimum_height - set the minimum height of an object + * @o: the object to change the minimum height + * @h: the new minimum height + * + * Returns no value. Sets the minimum height of the object @o to @h. If the + * current height or maximum height are less than the new minimum, they are set + * to the new minimum height. + */ inline void ewl_object_set_minimum_height(Ewl_Object * o, int h) { @@ -197,10 +380,24 @@ DCHECK_PARAM_PTR("o", o); o->minimum.h = h; + if (CURRENT_H(o) < h) + CURRENT_H(o) = h; + + if (MAXIMUM_H(o) < h) + MAXIMUM_H(o) = h; DLEAVE_FUNCTION(DLEVEL_STABLE); } +/** + * ewl_object_get_minimum_size - retrieve the minimum dimensions of an object + * @o: the object to retrieve the minimum dimensions + * @w: a pointer to an integer to store the minimum width + * @h: a pointer to an integer to store the minimum height + * + * Returns no value. Stores the minimum height and width of object @o into the + * integers pointed to by @w and @h respectively. + */ void ewl_object_get_minimum_size(Ewl_Object * o, int *w, int *h) { @@ -212,24 +409,50 @@ *h = o->minimum.h; } + +/** + * ewl_object_set_maximum_size - set the maximum size of an object + * @o: the object to change the maximum size + * @w: the new maximum width + * @h: the new maximum height + * + * Returns no value. Sets the maximum size of the object @o to @w x @h. If the + * current size or minimum size are less than the new maximum, they are set to + * the new maximum size. + */ void ewl_object_set_maximum_size(Ewl_Object * o, int w, int h) { DCHECK_PARAM_PTR("o", o); + DENTER_FUNCTION(DLEVEL_STABLE); - if (w >= MINIMUM_W(o)) - o->maximum.w = w; + o->maximum.w = w; + if (w < MINIMUM_W(o)) + o->minimum.w = w; if (CURRENT_W(o) > w) CURRENT_W(o) = w; - if (h >= MINIMUM_H(o)) - o->maximum.h = h; + o->maximum.h = h; + if (h < MINIMUM_H(o)) + o->minimum.h = h; if (CURRENT_H(o) > h) CURRENT_H(o) = h; + + DLEAVE_FUNCTION(DLEVEL_STABLE); } + +/** + * ewl_object_set_maximum_width - set the minimum width of an object + * @o: the object to change the maximum width + * @w: the new maximum width + * + * Returns no value. Sets the maximum width of the object @o to @w. If the + * current width or minimum width are less than the new maximum, they are set to + * the new maximum width. + */ inline void ewl_object_set_maximum_width(Ewl_Object * o, int w) { @@ -241,6 +464,16 @@ DLEAVE_FUNCTION(DLEVEL_STABLE); } + +/** + * ewl_object_set_maximum_height - set the minimum height of an object + * @o: the object to change the maximum height + * @h: the new maximum height + * + * Returns no value. Sets the maximum height of the object @o to @h. If the + * current height or minimum width are less than the new maximum, they are set + * to the new maximum height. + */ inline void ewl_object_set_maximum_height(Ewl_Object * o, int h) { @@ -252,6 +485,16 @@ DLEAVE_FUNCTION(DLEVEL_STABLE); } + +/** + * ewl_object_get_maximum_size - retrieve the minimum dimensions of an object + * @o: the object to retrieve the maximum dimensions + * @w: a pointer to an integer to store the maximum width + * @h: a pointer to an integer to store the maximum height + * + * Returns no value. Stores the maximum height and width of object @o into the + * integers pointed to by @w and @h respectively. + */ void ewl_object_get_maximum_size(Ewl_Object * o, int *w, int *h) { @@ -263,6 +506,17 @@ *h = o->maximum.h; } +/** + * ewl_object_set_padding - set the padding around an objects edges + * @o: the object to change the padding + * @l: the new padding along the left side of the object + * @r: the new padding along the right side of the object + * @t: the new padding along the top side of the object + * @b: the new padding along the bottom side of the object + * + * Returns no value. Stores the values of @l, @r, @t and @b into the object to + * be used for distancing it's edges from other widgets when laying out. + */ void ewl_object_set_padding(Ewl_Object * o, int l, int r, int t, int b) { @@ -277,6 +531,17 @@ DLEAVE_FUNCTION(DLEVEL_STABLE); } +/** + * ewl_object_get_padding - retrieve the edge padding of an object + * @o: the object to retrieve padding + * @l: a pointer to an integer that will receive the padding of the left side + * @r: a pointer to an integer that will receive the padding of the right side + * @t: a pointer to an integer that will receive the padding of the top side + * @b: a pointer to an integer that will receive the padding of the bottom side + * + * Returns no value. Stores the edge padding of the object @o into the integer + * pointer parameters passed in. + */ void ewl_object_get_padding(Ewl_Object * o, int *l, int *r, int *t, int *b) { @@ -295,6 +560,14 @@ DLEAVE_FUNCTION(DLEVEL_STABLE); } +/** + * ewl_object_set_alignment - change the alignment of the specified object + * @o: the object to change alignment + * @align: the new alignment for the object + * + * Returns no value. Stores the new alignment value into the object for use + * when laying out the object. + */ inline void ewl_object_set_alignment(Ewl_Object * o, Ewl_Alignment align) { @@ -303,6 +576,15 @@ o->align = align; } + +/** + * ewl_object_set_fill_policy - change the fill policy of the specified object + * @o: the object to change fill policy + * @fill: the new fill policy for the object + * + * Returns no value. Stores the new fill policy value into the object for use + * when laying out the object. + */ inline void ewl_object_set_fill_policy(Ewl_Object * o, Ewl_Fill_Policy fill) { @@ -311,6 +593,12 @@ o->fill = fill; } +/** + * ewl_object_get_alignment - retrieve the value of the objects alignment + * @o: the object to retrieve the alignment value + * + * Returns the value stored in the objects alignment attribute. + */ inline Ewl_Alignment ewl_object_get_alignment(Ewl_Object * o) { @@ -320,6 +608,13 @@ } + +/** + * ewl_object_get_fill_policy - retrieve the value of the objects fill policy + * @o: the object to retrieve the fill policy value + * + * Returns the value stored in the objects fill policy attribute. + */ inline Ewl_Fill_Policy ewl_object_get_fill_policy(Ewl_Object * o) { =================================================================== RCS file: /cvsroot/enlightenment/e17/libs/ewl/src/ewl_radiobutton.c,v retrieving revision 1.15 retrieving revision 1.16 diff -u -3 -r1.15 -r1.16 --- ewl_radiobutton.c 2001/10/03 07:03:51 1.15 +++ ewl_radiobutton.c 2001/10/17 22:19:08 1.16 @@ -20,6 +20,13 @@ void ewl_checkbutton_init(Ewl_CheckButton * b, char *l); + +/** + * ewl_radiobutton_new - allocate and initialize a new radio button + * @label: the label to associate with the radio button + * + * Returns a pointer to the new radio button on success, NULL on failure. + */ Ewl_Widget * ewl_radiobutton_new(char *label) { @@ -37,6 +44,14 @@ DRETURN_PTR(EWL_WIDGET(b), DLEVEL_STABLE); } +/** + * ewl_radiobutton_set_c... [truncated message content] |
From: <enl...@li...> - 2001-10-17 22:19:09
|
Enlightenment CVS committal Author : rbdpngn Project : e17 Module : libs/ewl Dir : e17/libs/ewl/doc Modified Files: manual.raw Log Message: A good start at documenting the ewl api. About 1/2 the widgets now have documentation generated by make html-docs. Some of these could probably use some better explanations, but I've had enough of writing documentation for today. =================================================================== RCS file: /cvsroot/enlightenment/e17/libs/ewl/doc/manual.raw,v retrieving revision 1.2 retrieving revision 1.3 diff -u -3 -r1.2 -r1.3 --- manual.raw 2001/10/13 00:19:42 1.2 +++ manual.raw 2001/10/17 22:19:08 1.3 @@ -3,28 +3,47 @@ ]> -<book id="efsd-documentation-howto"> +<book id="ewl-api-documentation"> <bookinfo> - <title>Enlightenment Documentation Howto</title> + <title>Enlightenment Widget Library API</title> <authorgroup> + + <author> + <firstname>Nathan</firstname> + <othername>"RbdPngn"</othername> + <surname>Ingersoll</surname> + <affiliation> + <address> + <email>ningerso@d.umn.edu</email> + </address> + </affiliation> + </author> + <author> - <firstname>FIRSTNAME</firstname> - <othername>OTHER</othername> - <surname>LASTNAME</surname> + <firstname>Christopher</firstname> + <othername>"smugg"</othername> + <surname>Rosendahl</surname> <affiliation> <address> - <email>EMAIL</email> + <email>cro...@no...</email> </address> </affiliation> </author> + </authorgroup> - + + <releaseinfo> + The EWL API is currently under heavy development. If this document + does not match your copy of EWL, please check for updates. + </releaseinfo> + <copyright> <year>2001</year> - <holder>Christian Kreibich</holder> + <holder>Nathan Ingersoll</holder> + <holder>Christopher Rosendahl</holder> </copyright> - + <legalnotice> <para> Permission is hereby granted, free of charge, to any person obtaining a copy @@ -50,10 +69,6 @@ </para> </legalnotice> - <releaseinfo> - This is document is nowhere near being finished. Be patient. - </releaseinfo> - </bookinfo> <toc></toc> @@ -61,219 +76,97 @@ <chapter id="introduction"> <title>Introduction</title> <para> - This is some sample documentation for you project. You'll need to be - familiar with <ulink url="http://docbook.org">DocBook</ulink> - to make best use of Enlightenment's documentation scheme. + EWL is a widget library based on the <ulink url="http://docbook.org"> + Enlightenment</ulink> subsystem libraries. </para> - <para> - See <link linkend="files" endterm="files.title"></link> - for an explanation of the documentation setup in you project. - </para> - <para> - <link linkend="comments" endterm="comments.title"></link> explains - the way you have to structure your comments so that they can be - extracted. - </para> - <para> - <link linkend="samples" endterm="samples.title"></link> contains a few - layout and markup examples to get you up to speed quickly. - </para> </chapter> - <chapter id="files"> - <title id="files.title">Documentation File Structure</title> - <para> - The entire documentation setup lives in the <filename>doc</filename> - directory. The file you need to edit is called <filename>manual.raw</filename>. - When you enter <command>make docs</command> in the toplevel directory, - it gets translated into a standard SGML file using a Perl script. - The script scans the file for any lines starting directly with the - string <command>!I<filename></command>. Here, - <filename>filename</filename> is the name of a code - file in which you have put extractable comments. The Perl script will - then analyze the file and generate SGML DocBook statements for those - comments right into the output file. - </para> - <para> - The resulting file of that step is called <filename>$PACKAGE-manual-$VERSION.sgml</filename> - where PACKAGE and VERSION are automatically set during the build process. - This sgml file can be postprocessed with any SGML processor to generate - for example HTML, TeX or PDF output. - </para> - <para> - Suppport for HTML generation is included already through the - <command>make html-docs</command> target. In order to be able to use - that, you'll need to have <command>jade</command> installed, and appropriate - DocBook stylesheets. If the <command>configure</command> script doesn't automatically find - you stylesheets (on a Debian system it should), you can specify them when - calling <command>configure</command> or <command>autogen.sh</command> using - the <command>--with-dbsheets=DIR</command> option. - </para> - <para> - If everything worked out fine, you'll get a tarball of the HTML version - of your documentation and the extracted version in the docs directory, - named similarly to the SGML file. - </para> - - </chapter> + <chapter id="basic"> + <title id="basic.title">Basic Classes and Utility Functions</title> - <chapter id="comments"> - <title id="comments.title">Writing Extractable Comments</title> - <para> - I'll simply give an example of a commented function here: + <section><title>Object Class</title> +!Isrc/ewl_object.c + </section> - <programlisting> + <section><title>Widget Class</title> +!Isrc/ewl_widget.c + </section> -/** - * efsd_wait_event - blocking wait for next Efsd event. - * @ec: The Efsd connection - * @ev: Pointer to an allocated EfsdEvent. - * - * Blocks until an efsd event arrives, then returns it by filling - * in the @ev structure. Returns -1 when there was an error, - * >= 0 otherwise. - */ -int efsd_wait_event(EfsdConnection *ec, EfsdEvent *ev); - </programlisting> - As you can see, it's not hard -- just use two asterisks - to signal the start of an extractable comment. In the first - line, begin with the function name and a one-liner description. - Then, put each parameter in the following lines. Add an empty - line, and then a more verbose description. That's basically - it, you can also markup items differently as follows: - - <itemizedlist mark="opencircle"> - <listitem> - <para><command>funcname()</command> for function names</para> - </listitem> - <listitem> - <para><command>$ENVVAR</command> for environment variables</para> - </listitem> - <listitem> - <para><command>&struct_name</command> for structures</para> - </listitem> - <listitem> - <para><command>%CONST</command> for constants/para> - </listitem> - </itemizedlist> - </para> + <section><title>Container Class</title> +!Isrc/ewl_container.c + </section> + + <section><title>Callback Functions</title> +!Isrc/ewl_callback.c + </section> + + <section><title>Event Functions</title> +!Isrc/ewl_events.c + </section> + + <section><title>Configuration Functions</title> +!Isrc/ewl_config.c + </section> + + <section><title>Theme Functions</title> +!Isrc/ewl_theme.c + </section> + + <section><title>Special FX</title> +!Isrc/ewl_fx.c + </section> + </chapter> - <chapter id="samples"> - <title id="samples.title">DocBook Examples</title> - <section> - <title>Lists</title> - <para> - <itemizedlist mark="opencircle"> - <listitem> - <para>This</para> - </listitem> - <listitem> - <para>is</para> - </listitem> - <listitem> - <para>a</para> - </listitem> - <listitem> - <para>list</para> - </listitem> - </itemizedlist> - </para> + <chapter id="containers"> + <title id="containers.title">Container Widgets</title> + <para> + The following classes inherit from the container class. Containers hold + other widgets and are responsible for laying out child widget size and + position. + </para> + + <section><title>BoxWidget</title> +!Isrc/ewl_box.c </section> - <section> - <title>Code</title> - <para> - <programlisting> -EfsdConnection *ec; + <section><title>Table Widget</title> +!Isrc/ewl_table.c + </section> -if ( (ec = efsd_open()) == NULL) - { - /* Oops. Couldn't establish connection. - * Is Efsd really running ? - */ - } - -/* ... various efsd commands ... */ - -if (efsd_close(ec) < 0) - { - /* Ouch. Error when closing connection. */ - } - </programlisting> - </para> + <section><title>Window Widget</title> +!Isrc/ewl_window.c </section> - <section> - <title>Images</title> - <para> - <mediaobject> - <imageobject> - <imagedata fileref="figures/sampleimage.eps" format="eps"> - </imageobject> - <imageobject> - <imagedata fileref="figures/sampleimage.gif" format="gif"> - </imageobject> - <textobject> - <phrase>Sample image</phrase> - </textobject> - <caption> - <para>This is how you display images.</para> - </caption> - </mediaobject> + </chapter> - </para> + <chapter id="buttons"> + <title id="buttons.title">Button Widgets</title> + + <section><title>Button</title> +!Isrc/ewl_button.c </section> - <section> - <title>Warnings, Notes</title> - <para> - <note> - <title>This is an example of a note.</title> - <para> - It's really simple to use. - </para> - </note - </para> - <para> - <caution> - <title>This is a warning.</title> - <para> - It's used just like a note. - </para> - </caution> - </para> + + <section><title>Check Button</title> +!Isrc/ewl_checkbutton.c + </section> + + <section><title>Radio Button</title> +!Isrc/ewl_radiobutton.c </section> + </chapter> - + <bibliography> - <biblioentry id="bib-unp"> + <biblioentry id="bib-efsd"> <bookbiblio> <author> - <firstname>W. R.</firstname> - <surname>Stevens</surname> - </author> - <title>UNIX Network Programming</title> - <edition>Second Edition</edition> - <volumenum>Volume 1</volumenum> - <publisher> - <publishername>Prentice-Hall</publishername> - </publisher> - <date>1998</date> - </bookbiblio> - </biblioentry> - - <biblioentry id="bib-apue"> - <bookbiblio> - <author> - <firstname>W. R.</firstname> - <surname>Stevens</surname> + <firstname>Christian</firstname> + <surname>Kreibich</surname> </author> - <title>Advanced Programming in the UNIX Environment</title> - <publisher> - <publishername>Addison-Wesley</publishername> - </publisher> - <date>1992</date> + <title>The EFSD Programming Manual</title> + <date>2001</date> </bookbiblio> </biblioentry> |
From: <enl...@li...> - 2001-10-18 18:39:35
|
Enlightenment CVS committal Author : rbdpngn Project : e17 Module : libs/ewl Dir : e17/libs/ewl/src Modified Files: ewl_entry.c ewl_events.c ewl_fx.c ewl_image.c ewl_list.c ewl_misc.c ewl_seeker.c ewl_spinner.c ewl_window.c Log Message: Updated to the new ecore api. =================================================================== RCS file: /cvsroot/enlightenment/e17/libs/ewl/src/ewl_entry.c,v retrieving revision 1.30 retrieving revision 1.31 diff -u -3 -r1.30 -r1.31 --- ewl_entry.c 2001/10/17 22:19:08 1.30 +++ ewl_entry.c 2001/10/18 18:39:34 1.31 @@ -271,7 +271,7 @@ void __ewl_entry_key_down(Ewl_Widget * w, void *ev_data, void *user_data) { - Ev_Key_Down *ev; + Ecore_Event_Key_Down *ev; DENTER_FUNCTION(DLEVEL_STABLE); DCHECK_PARAM_PTR("w", w); @@ -308,7 +308,7 @@ void __ewl_entry_mouse_down(Ewl_Widget * w, void *ev_data, void *user_data) { - Ev_Mouse_Down *ev; + Ecore_Event_Mouse_Down *ev; Ewl_Entry *e; int index = 0, len = 0; @@ -366,7 +366,7 @@ void __ewl_entry_mouse_move(Ewl_Widget * w, void *ev_data, void *user_data) { - Ev_Mouse_Move *ev; + Ecore_Event_Mouse_Move *ev; Ewl_Entry *e; DENTER_FUNCTION(DLEVEL_STABLE); =================================================================== RCS file: /cvsroot/enlightenment/e17/libs/ewl/src/ewl_events.c,v retrieving revision 1.18 retrieving revision 1.19 diff -u -3 -r1.18 -r1.19 --- ewl_events.c 2001/10/17 22:19:08 1.18 +++ ewl_events.c 2001/10/18 18:39:34 1.19 @@ -6,16 +6,16 @@ Ewl_Widget *last_focused = NULL; Ewl_Widget *dnd_widget = NULL; -static void ewl_ev_window_expose(Eevent * _ev); -static void ewl_ev_window_configure(Eevent * _ev); -static void ewl_ev_window_delete(Eevent * _ev); - -/*static void ewl_ev_window_reparent(Eevent * _ev);*/ -static void ewl_ev_key_down(Eevent * _ev); -static void ewl_ev_key_up(Eevent * _ev); -static void ewl_ev_mouse_down(Eevent * _ev); -static void ewl_ev_mouse_up(Eevent * _ev); -static void ewl_ev_mouse_move(Eevent * _ev); +static void ewl_ev_window_expose(Ecore_Event * _ev); +static void ewl_ev_window_configure(Ecore_Event * _ev); +static void ewl_ev_window_delete(Ecore_Event * _ev); + +/*static void ewl_ev_window_reparent(Ecore_Event * _ev);*/ +static void ewl_ev_key_down(Ecore_Event * _ev); +static void ewl_ev_key_up(Ecore_Event * _ev); +static void ewl_ev_mouse_down(Ecore_Event * _ev); +static void ewl_ev_mouse_up(Ecore_Event * _ev); +static void ewl_ev_mouse_move(Ecore_Event * _ev); /** * ewl_ev_init - initialize the event handlers for dispatching to proper widgets @@ -27,17 +27,21 @@ { DENTER_FUNCTION(DLEVEL_STABLE); - e_event_filter_handler_add(EV_WINDOW_EXPOSE, ewl_ev_window_expose); - e_event_filter_handler_add(EV_WINDOW_CONFIGURE, - ewl_ev_window_configure); - e_event_filter_handler_add(EV_WINDOW_DELETE, ewl_ev_window_delete); - -/* e_event_filter_handler_add(EV_WINDOW_REPARENT, ewl_ev_window_reparent);*/ - e_event_filter_handler_add(EV_KEY_DOWN, ewl_ev_key_down); - e_event_filter_handler_add(EV_KEY_UP, ewl_ev_key_up); - e_event_filter_handler_add(EV_MOUSE_DOWN, ewl_ev_mouse_down); - e_event_filter_handler_add(EV_MOUSE_UP, ewl_ev_mouse_up); - e_event_filter_handler_add(EV_MOUSE_MOVE, ewl_ev_mouse_move); + ecore_event_filter_handler_add(ECORE_EVENT_WINDOW_EXPOSE, + ewl_ev_window_expose); + ecore_event_filter_handler_add(ECORE_EVENT_WINDOW_CONFIGURE, + ewl_ev_window_configure); + ecore_event_filter_handler_add(ECORE_EVENT_WINDOW_DELETE, + ewl_ev_window_delete); + +/* ecore_event_filter_handler_add(ECORE_EVENT_WINDOW_REPARENT, ewl_ev_window_reparent);*/ + ecore_event_filter_handler_add(ECORE_EVENT_KEY_DOWN, ewl_ev_key_down); + ecore_event_filter_handler_add(ECORE_EVENT_KEY_UP, ewl_ev_key_up); + ecore_event_filter_handler_add(ECORE_EVENT_MOUSE_DOWN, + ewl_ev_mouse_down); + ecore_event_filter_handler_add(ECORE_EVENT_MOUSE_UP, ewl_ev_mouse_up); + ecore_event_filter_handler_add(ECORE_EVENT_MOUSE_MOVE, + ewl_ev_mouse_move); DRETURN_INT(1, DLEVEL_STABLE); } @@ -50,13 +54,13 @@ * handling. */ static void -ewl_ev_window_expose(Eevent * _ev) +ewl_ev_window_expose(Ecore_Event * _ev) { /* * Widgets don't need to know about this usually, but we still need to * let them know in case a widget is using a non-evas based draw method */ - Ev_Window_Expose *ev; + Ecore_Event_Window_Expose *ev; Ewl_Window *window; DENTER_FUNCTION(DLEVEL_STABLE); @@ -82,13 +86,13 @@ * window. */ static void -ewl_ev_window_configure(Eevent * _ev) +ewl_ev_window_configure(Ecore_Event * _ev) { /* * When a configure event occurs, we must update the windows geometry - * based on the coordinates and dimensions given in the Eevent. + * based on the coordinates and dimensions given in the Ecore_Event. */ - Ev_Window_Configure *ev; + Ecore_Event_Window_Configure *ev; Ewl_Window *window; DENTER_FUNCTION(DLEVEL_STABLE); @@ -109,9 +113,9 @@ * FIXME: We probably need to do some work here. * static void -ewl_ev_window_reparent(Eevent * _ev) +ewl_ev_window_reparent(Ecore_Event * _ev) { - Ev_Window_Reparent *ev = _ev->event; + Ecore_Event_Window_Reparent *ev = _ev->event; Ewl_Window *window; window = ewl_window_find_window(ev->win); @@ -130,13 +134,13 @@ * window. */ static void -ewl_ev_window_delete(Eevent * _ev) +ewl_ev_window_delete(Ecore_Event * _ev) { /* * Retrieve the appropriate ewl_window using the x window id that is * held in the eevent, and call it's handlers for a window delete event. */ - Ev_Window_Delete *ev; + Ecore_Event_Window_Delete *ev; Ewl_Window *window; DENTER_FUNCTION(DLEVEL_STABLE); @@ -161,14 +165,14 @@ * window. */ static void -ewl_ev_key_down(Eevent * _ev) +ewl_ev_key_down(Ecore_Event * _ev) { /* * Dispatcher of key down events, these get sent to the last widget * selected. */ Ewl_Window *window; - Ev_Key_Down *ev; + Ecore_Event_Key_Down *ev; DENTER_FUNCTION(DLEVEL_STABLE); @@ -199,13 +203,13 @@ * window. */ static void -ewl_ev_key_up(Eevent * _ev) +ewl_ev_key_up(Ecore_Event * _ev) { /* * Dispatch key up events to the appropriate widget */ Ewl_Window *window; - Ev_Key_Up *ev; + Ecore_Event_Key_Up *ev; DENTER_FUNCTION(DLEVEL_STABLE); @@ -235,11 +239,11 @@ * window. Also determines the widgets clicked state. */ static void -ewl_ev_mouse_down(Eevent * _ev) +ewl_ev_mouse_down(Ecore_Event * _ev) { Ewl_Widget *widget; Ewl_Window *window; - Ev_Mouse_Down *ev; + Ecore_Event_Mouse_Down *ev; DENTER_FUNCTION(DLEVEL_STABLE); @@ -302,10 +306,10 @@ * window. Also determines the widgets clicked state. */ static void -ewl_ev_mouse_up(Eevent * _ev) +ewl_ev_mouse_up(Ecore_Event * _ev) { Ewl_Window *window; - Ev_Mouse_Up *ev; + Ecore_Event_Mouse_Up *ev; DENTER_FUNCTION(DLEVEL_STABLE); @@ -335,11 +339,11 @@ * window. */ static void -ewl_ev_mouse_move(Eevent * _ev) +ewl_ev_mouse_move(Ecore_Event * _ev) { Ewl_Widget *widget; Ewl_Window *window; - Ev_Mouse_Move *ev; + Ecore_Event_Mouse_Move *ev; DENTER_FUNCTION(DLEVEL_STABLE); =================================================================== RCS file: /cvsroot/enlightenment/e17/libs/ewl/src/ewl_fx.c,v retrieving revision 1.12 retrieving revision 1.13 diff -u -3 -r1.12 -r1.13 --- ewl_fx.c 2001/10/17 22:19:08 1.12 +++ ewl_fx.c 2001/10/18 18:39:34 1.13 @@ -79,20 +79,20 @@ if (timer->type == EWL_FX_TYPE_FADE_IN) - e_add_event_timer(timer->name, - timer->timeout, - __ewl_fx_handle_fade_in, timer->start_val, - timer); + ecore_add_event_timer(timer->name, + timer->timeout, + __ewl_fx_handle_fade_in, + timer->start_val, timer); else if (timer->type == EWL_FX_TYPE_FADE_OUT) - e_add_event_timer(timer->name, - timer->timeout, - __ewl_fx_handle_fade_out, timer->start_val, - timer); + ecore_add_event_timer(timer->name, + timer->timeout, + __ewl_fx_handle_fade_out, + timer->start_val, timer); else if (timer->type == EWL_FX_TYPE_GLOW) - e_add_event_timer(timer->name, - timer->timeout, - __ewl_fx_handle_glow, timer->start_val, - timer); + ecore_add_event_timer(timer->name, + timer->timeout, + __ewl_fx_handle_glow, timer->start_val, + timer); DLEAVE_FUNCTION(DLEVEL_TESTING); } @@ -111,23 +111,23 @@ evas_set_color(widget->evas, widget->fx_clip_box, 255, 255, 255, val); - e_del_event_timer(timer->name); + ecore_del_event_timer(timer->name); if (val < 255) { - e_add_event_timer(timer->name, - timer->timeout, - __ewl_fx_handle_fade_in, - val + timer->increase, timer); + ecore_add_event_timer(timer->name, + timer->timeout, + __ewl_fx_handle_fade_in, + val + timer->increase, timer); } else { timer->repeat--; if (timer->repeat > 0) { - e_add_event_timer(timer->name, - timer->timeout, - __ewl_fx_handle_fade_in, - timer->start_val, timer); + ecore_add_event_timer(timer->name, + timer->timeout, + __ewl_fx_handle_fade_in, + timer->start_val, timer); } else { if (timer->func) @@ -153,23 +153,23 @@ evas_set_color(widget->evas, widget->fx_clip_box, 255, 255, 255, val); - e_del_event_timer(timer->name); + ecore_del_event_timer(timer->name); if (val > 0) { - e_add_event_timer(timer->name, - timer->timeout, - __ewl_fx_handle_fade_out, - val - timer->increase, timer); + ecore_add_event_timer(timer->name, + timer->timeout, + __ewl_fx_handle_fade_out, + val - timer->increase, timer); } else { timer->repeat--; if (timer->repeat > 0) { - e_add_event_timer(timer->name, - timer->timeout, - __ewl_fx_handle_fade_out, - timer->start_val, timer); + ecore_add_event_timer(timer->name, + timer->timeout, + __ewl_fx_handle_fade_out, + timer->start_val, timer); } else { if (timer->func) @@ -195,37 +195,37 @@ evas_set_color(widget->evas, widget->fx_clip_box, 255, 255, 255, val); - e_del_event_timer(timer->name); + ecore_del_event_timer(timer->name); if (timer->start_val == 5 && val < 255) { - e_add_event_timer(timer->name, - timer->timeout, __ewl_fx_handle_glow, - val + 5, timer); + ecore_add_event_timer(timer->name, + timer->timeout, __ewl_fx_handle_glow, + val + 5, timer); } else if (timer->start_val == 255 && val > 5) { - e_add_event_timer(timer->name, - timer->timeout, __ewl_fx_handle_glow, - val - 5, timer); + ecore_add_event_timer(timer->name, + timer->timeout, __ewl_fx_handle_glow, + val - 5, timer); } if (timer->start_val == 255 && val == 5) { timer->start_val = 5; - e_add_event_timer(timer->name, - timer->timeout, - __ewl_fx_handle_glow, timer->start_val, - timer); + ecore_add_event_timer(timer->name, + timer->timeout, + __ewl_fx_handle_glow, + timer->start_val, timer); } if (timer->start_val == 5 && val == 255) { timer->start_val = 255; - e_add_event_timer(timer->name, - timer->timeout, - __ewl_fx_handle_glow, timer->start_val, - timer); + ecore_add_event_timer(timer->name, + timer->timeout, + __ewl_fx_handle_glow, + timer->start_val, timer); } DLEAVE_FUNCTION(DLEVEL_TESTING); =================================================================== RCS file: /cvsroot/enlightenment/e17/libs/ewl/src/ewl_image.c,v retrieving revision 1.9 retrieving revision 1.10 diff -u -3 -r1.9 -r1.10 --- ewl_image.c 2001/10/03 07:03:51 1.9 +++ ewl_image.c 2001/10/18 18:39:34 1.10 @@ -226,7 +226,7 @@ __ewl_image_mouse_down(Ewl_Widget * w, void *ev_data, void *user_data) { Ewl_Image *i; - Ev_Mouse_Down *ev; + Ecore_Event_Mouse_Down *ev; DENTER_FUNCTION(DLEVEL_STABLE); DCHECK_PARAM_PTR("w", w); @@ -252,7 +252,7 @@ __ewl_image_mouse_up(Ewl_Widget * w, void *ev_data, void *user_data) { Ewl_Image *i; - Ev_Mouse_Up *ev; + Ecore_Event_Mouse_Up *ev; DENTER_FUNCTION(DLEVEL_STABLE); DCHECK_PARAM_PTR("w", w); @@ -278,7 +278,7 @@ __ewl_image_mouse_move(Ewl_Widget * w, void *ev_data, void *user_data) { Ewl_Image *i; - Ev_Mouse_Move *ev; + Ecore_Event_Mouse_Move *ev; DENTER_FUNCTION(DLEVEL_STABLE); DCHECK_PARAM_PTR("w", w); =================================================================== RCS file: /cvsroot/enlightenment/e17/libs/ewl/src/ewl_list.c,v retrieving revision 1.14 retrieving revision 1.15 diff -u -3 -r1.14 -r1.15 --- ewl_list.c 2001/10/17 22:19:08 1.14 +++ ewl_list.c 2001/10/18 18:39:34 1.15 @@ -263,14 +263,14 @@ static void __ewl_list_key_down(Ewl_Widget * widget, void *event_data, void *user_data) { - Ev_Key_Down *ev; + Ecore_Event_Key_Down *ev; int multiple = 0; CHECK_PARAM_POINTER("widget", widget); - ev = (Ev_Key_Down *) event_data; + ev = (Ecore_Event_Key_Down *) event_data; - if (ev->mods & EV_KEY_MODIFIER_SHIFT) + if (ev->mods & ECORE_EVENT_KEY_MODIFIER_SHIFT) multiple = TRUE; if (!strcmp(ev->key, "Up")) =================================================================== RCS file: /cvsroot/enlightenment/e17/libs/ewl/src/ewl_misc.c,v retrieving revision 1.19 retrieving revision 1.20 diff -u -3 -r1.19 -r1.20 --- ewl_misc.c 2001/10/17 22:19:08 1.19 +++ ewl_misc.c 2001/10/18 18:39:34 1.20 @@ -23,15 +23,15 @@ ewl_init_parse_options(argc, argv); - if (!e_display_init(xdisplay)) + if (!ecore_display_init(xdisplay)) { fprintf(stderr, "ERRR: Cannot connect to X display!\n"); exit(-1); } - e_event_filter_init(); - e_ev_signal_init(); - e_ev_x_init(); + ecore_event_filter_init(); + ecore_event_signal_init(); + ecore_event_x_init(); if (!ewl_config_init()) DERROR("Couldn't init config data.. Exiting...."); @@ -46,7 +46,7 @@ DERROR("Couldn't init theme data.. Exiting...."); ewl_window_list = ewd_list_new(); - e_event_filter_idle_handler_add(ewl_idle_render, NULL); + ecore_event_filter_idle_handler_add(ewl_idle_render, NULL); DLEAVE_FUNCTION(DLEVEL_STABLE); } @@ -59,7 +59,7 @@ ewl_reread_config(0, NULL); ewl_idle_render(NULL); - e_event_loop(); + ecore_event_loop(); DLEAVE_FUNCTION(DLEVEL_STABLE); } @@ -108,7 +108,7 @@ { DENTER_FUNCTION(DLEVEL_STABLE); - e_event_loop_quit(); + ecore_event_loop_quit(); DLEAVE_FUNCTION(DLEVEL_STABLE); } @@ -160,6 +160,6 @@ { ewl_config_reread_and_apply(); - e_add_event_timer("reread_config_timer", 0.5, - ewl_reread_config, 0, NULL); + ecore_add_event_timer("reread_config_timer", 0.5, + ewl_reread_config, 0, NULL); } =================================================================== RCS file: /cvsroot/enlightenment/e17/libs/ewl/src/ewl_seeker.c,v retrieving revision 1.17 retrieving revision 1.18 diff -u -3 -r1.17 -r1.18 --- ewl_seeker.c 2001/10/17 22:19:08 1.17 +++ ewl_seeker.c 2001/10/18 18:39:34 1.18 @@ -311,7 +311,7 @@ __ewl_seeker_drag_button_mouse_down(Ewl_Widget * w, void *event_data, void *user_data) { - Ev_Mouse_Down *ev; + Ecore_Event_Mouse_Down *ev; Ewl_Seeker *s; int tmp; int x, y, width, height; @@ -356,7 +356,7 @@ __ewl_seeker_drag_button_mouse_move(Ewl_Widget * w, void *event_data, void *user_data) { - Ev_Mouse_Move *ev; + Ecore_Event_Mouse_Move *ev; DENTER_FUNCTION(DLEVEL_STABLE); @@ -573,7 +573,7 @@ __ewl_seeker_mouse_down(Ewl_Widget * w, void *event_data, void *user_data) { Ewl_Seeker *s; - Ev_Mouse_Move *ev; + Ecore_Event_Mouse_Move *ev; int x, y, width, height; DENTER_FUNCTION(DLEVEL_STABLE); =================================================================== RCS file: /cvsroot/enlightenment/e17/libs/ewl/src/ewl_spinner.c,v retrieving revision 1.20 retrieving revision 1.21 diff -u -3 -r1.20 -r1.21 --- ewl_spinner.c 2001/10/17 22:19:08 1.20 +++ ewl_spinner.c 2001/10/18 18:39:34 1.21 @@ -228,14 +228,14 @@ __ewl_spinner_key_down(Ewl_Widget * w, void *ev_data, void *user_data) { Ewl_Spinner *s; - Ev_Key_Down *ev; + Ecore_Event_Key_Down *ev; DENTER_FUNCTION(DLEVEL_STABLE); DCHECK_PARAM_PTR("w", w); s = EWL_SPINNER(w->parent); - ev = (Ev_Key_Down *) ev_data; + ev = (Ecore_Event_Key_Down *) ev_data; if (!strcmp(ev->key, "Up")) __ewl_spinner_increase_value(w, NULL, NULL); =================================================================== RCS file: /cvsroot/enlightenment/e17/libs/ewl/src/ewl_window.c,v retrieving revision 1.27 retrieving revision 1.28 diff -u -3 -r1.27 -r1.28 --- ewl_window.c 2001/10/17 22:19:08 1.27 +++ ewl_window.c 2001/10/18 18:39:34 1.28 @@ -83,18 +83,19 @@ window = EWL_WINDOW(w); - window->window = e_window_new(0, 0, 0, CURRENT_W(w), CURRENT_H(w)); - e_window_set_events(window->window, XEV_CONFIGURE); - e_window_set_name_class(window->window, "EWL", "EWL!"); - e_window_set_min_size(window->window, MINIMUM_W(w), MINIMUM_H(w)); - e_window_set_max_size(window->window, MAXIMUM_W(w), MAXIMUM_H(w)); - e_window_set_title(window->window, window->title); + window->window = + ecore_window_new(0, 0, 0, CURRENT_W(w), CURRENT_H(w)); + ecore_window_set_events(window->window, XEV_CONFIGURE); + ecore_window_set_name_class(window->window, "EWL", "EWL!"); + ecore_window_set_min_size(window->window, MINIMUM_W(w), MINIMUM_H(w)); + ecore_window_set_max_size(window->window, MAXIMUM_W(w), MAXIMUM_H(w)); + ecore_window_set_title(window->window, window->title); - e_window_set_delete_inform(window->window); + ecore_window_set_delete_inform(window->window); font_path = ewl_theme_font_path(); - w->evas = evas_new_all(e_display_get(), + w->evas = evas_new_all(ecore_display_get(), window->window, 0, 0, CURRENT_W(w), CURRENT_H(w), @@ -104,20 +105,20 @@ FREE(font_path); w->evas_window = evas_get_window(w->evas); - e_window_set_events(w->evas_window, XEV_KEY | XEV_BUTTON | - XEV_IN_OUT | XEV_EXPOSE | XEV_VISIBILITY | - XEV_MOUSE_MOVE); + ecore_window_set_events(w->evas_window, XEV_KEY | XEV_BUTTON | + XEV_IN_OUT | XEV_EXPOSE | XEV_VISIBILITY | + XEV_MOUSE_MOVE); window->bg_rect = evas_add_rectangle(w->evas); evas_set_color(w->evas, window->bg_rect, 0, 0, 0, 255); evas_set_layer(w->evas, window->bg_rect, LAYER(w) - 1000); evas_show(w->evas, window->bg_rect); - e_window_show(EWL_WINDOW(w)->window); - e_window_show(w->evas_window); + ecore_window_show(EWL_WINDOW(w)->window); + ecore_window_show(w->evas_window); if (EWL_WINDOW(w)->borderless) - e_window_hint_set_borderless(EWL_WINDOW(w)->window); + ecore_window_hint_set_borderless(EWL_WINDOW(w)->window); DLEAVE_FUNCTION(DLEVEL_STABLE); } @@ -131,11 +132,11 @@ if (!EWL_WINDOW(w)->window) DRETURN(DLEVEL_STABLE); - e_window_show(EWL_WINDOW(w)->window); - e_window_show(w->evas_window); + ecore_window_show(EWL_WINDOW(w)->window); + ecore_window_show(w->evas_window); if (EWL_WINDOW(w)->borderless) - e_window_hint_set_borderless(EWL_WINDOW(w)->window); + ecore_window_hint_set_borderless(EWL_WINDOW(w)->window); DLEAVE_FUNCTION(DLEVEL_STABLE); } @@ -146,8 +147,8 @@ DENTER_FUNCTION(DLEVEL_STABLE); DCHECK_PARAM_PTR("widget", widget); - e_window_hide(widget->evas_window); - e_window_hide(EWL_WINDOW(widget)->window); + ecore_window_hide(widget->evas_window); + ecore_window_hide(EWL_WINDOW(widget)->window); DLEAVE_FUNCTION(DLEVEL_STABLE); } @@ -164,11 +165,11 @@ IF_FREE(win->title); - e_window_hide(w->evas_window); - e_window_hide(win->window); + ecore_window_hide(w->evas_window); + ecore_window_hide(win->window); - e_window_destroy(w->evas_window); - e_window_destroy(win->window); + ecore_window_destroy(w->evas_window); + ecore_window_destroy(win->window); IF_FREE(win->title); @@ -220,7 +221,7 @@ CURRENT_H(w)); } - e_window_resize(w->evas_window, CURRENT_W(w), CURRENT_H(w)); + ecore_window_resize(w->evas_window, CURRENT_W(w), CURRENT_H(w)); evas_set_output_size(w->evas, CURRENT_W(w), CURRENT_H(w)); evas_set_output_viewport(w->evas, 0, 0, CURRENT_W(w), CURRENT_H(w)); @@ -353,7 +354,7 @@ if (!win->window) DRETURN(DLEVEL_STABLE); - e_window_resize(win->window, w, h); + ecore_window_resize(win->window, w, h); DLEAVE_FUNCTION(DLEVEL_STABLE); } @@ -378,7 +379,7 @@ if (!REALIZED(widget)) return; - e_window_set_min_size(EWL_WINDOW(widget)->window, w, h); + ecore_window_set_min_size(EWL_WINDOW(widget)->window, w, h); DLEAVE_FUNCTION(DLEVEL_STABLE); } @@ -404,7 +405,7 @@ if (!REALIZED(widget)) return; - e_window_set_max_size(EWL_WINDOW(widget)->window, w, h); + ecore_window_set_max_size(EWL_WINDOW(widget)->window, w, h); DLEAVE_FUNCTION(DLEVEL_STABLE); } @@ -432,7 +433,7 @@ if (!REALIZED(w)) return; - e_window_set_title(EWL_WINDOW(w)->window, title); + ecore_window_set_title(EWL_WINDOW(w)->window, title); DLEAVE_FUNCTION(DLEVEL_STABLE); } @@ -469,7 +470,7 @@ EWL_WINDOW(w)->borderless = 1; if (REALIZED(w)) - e_window_hint_set_borderless(EWL_WINDOW(w)->window); + ecore_window_hint_set_borderless(EWL_WINDOW(w)->window); DLEAVE_FUNCTION(DLEVEL_STABLE); } @@ -489,7 +490,7 @@ DENTER_FUNCTION(DLEVEL_STABLE); DCHECK_PARAM_PTR("w", w); - e_window_move(EWL_WINDOW(w)->window, x, y); + ecore_window_move(EWL_WINDOW(w)->window, x, y); DLEAVE_FUNCTION(DLEVEL_STABLE); } |
From: <enl...@li...> - 2001-10-18 19:22:11
|
Enlightenment CVS committal Author : rbdpngn Project : e17 Module : libs/ewl Dir : e17/libs/ewl/tools/ewl_config Modified Files: ewl_config.c Log Message: Forgot to change the configuration calls to match the changes in ewl. =================================================================== RCS file: /cvsroot/enlightenment/e17/libs/ewl/tools/ewl_config/ewl_config.c,v retrieving revision 1.9 retrieving revision 1.10 diff -u -3 -r1.9 -r1.10 --- ewl_config.c 2001/10/03 22:55:58 1.9 +++ ewl_config.c 2001/10/18 19:22:08 1.10 @@ -358,37 +358,42 @@ /* Evas stuff */ conf->evas.render_method = ewl_config_get_str("/evas/render_method"); - if (!conf->evas.render_method) conf->evas.render_method = strdup("software"); - if (!ewl_config_get_int("/evas/font_cache", &conf->evas.font_cache)) + conf->evas.font_cache = ewl_config_get_int("/evas/font_cache"); + if (!conf->evas.font_cache) conf->evas.font_cache = 1024 * 1024 * 2; - if (!ewl_config_get_int("/evas/image_cache", &conf->evas.image_cache)) + conf->evas.image_cache = ewl_config_get_int("/evas/image_cache"); + if (!conf->evas.image_cache) conf->evas.image_cache = 1024 * 1024 * 8; /* Debug stuff */ - if (!ewl_config_get_int("/debug/enable", &conf->debug.enable)) + conf->debug.enable = ewl_config_get_int("/debug/enable"); + if (!conf->debug.enable) conf->debug.enable = 0; - if (!ewl_config_get_int("/debug/level", &conf->debug.level)) + conf->debug.level = ewl_config_get_int("/debug/level"); + if (!conf->debug.level) conf->debug.level = 0; /* FX stuff */ - if (!ewl_config_get_float("/fx/max_fps", &conf->fx.max_fps)) + conf->fx.max_fps = ewl_config_get_float("/fx/max_fps"); + if (!conf->fx.max_fps) conf->fx.max_fps = 25.0; - if (!ewl_config_get_float("/fx/timeout", &conf->fx.timeout)) + conf->fx.timeout = ewl_config_get_float("/fx/timeout"); + if (!conf->fx.timeout) conf->fx.timeout = 2.0; /* Theme stuff */ conf->theme.name = ewl_config_get_str("/theme/name"); - if (!conf->theme.name) conf->theme.name = strdup("default"); - if (!ewl_config_get_int("/theme/cache", &conf->theme.cache)) + conf->theme.cache = ewl_config_get_int("/theme/cache"); + if (!conf->theme.cache) conf->theme.cache = 1; return 1; |
From: <enl...@li...> - 2001-11-14 00:30:46
|
Enlightenment CVS committal Author : rbdpngn Project : e17 Module : libs/ewl Dir : e17/libs/ewl/plugins/fx/fade_in Modified Files: fade_in.c Log Message: * Changed the fx API slightly to simplify the job of calculating intervals between frames, and reduce the number of steps for the calculation. * Setup a config option for the user to put a bound on the frames per second for fx. This should be useful for slower machines when running apps with lots of widgets displayed. * Added more documenting comments, but haven't added sections to the manual.raw yet. * Added window geometry functions since the standard object geometries don't work well with windows. * Fixed the spinner test to use the new window geometry functions. =================================================================== RCS file: /cvsroot/enlightenment/e17/libs/ewl/plugins/fx/fade_in/fade_in.c,v retrieving revision 1.3 retrieving revision 1.4 diff -u -3 -r1.3 -r1.4 --- fade_in.c 2001/11/10 20:32:26 1.3 +++ fade_in.c 2001/11/14 00:30:15 1.4 @@ -74,11 +74,12 @@ else start_val = (double) (a); - interval = ewl_fx_calculate_interval(fps, timeout); - step = ewl_fx_calculate_step(start_val, end_val, fps, timeout); - hits = (end_val - start_val) / (int) (ceil(step)); + hits = timeout * fps; + step = (end_val - start_val) / (int)(hits + 0.5); + interval = 1 / fps; - ewl_fx_timer_add(w, fade_in.name, interval, step, hits, NULL); + ewl_fx_timer_add(w, fade_in.name, timeout, fps, end_val - start_val, + NULL); start_val = 0.0; } |
From: <enl...@li...> - 2001-11-14 00:30:46
|
Enlightenment CVS committal Author : rbdpngn Project : e17 Module : libs/ewl Dir : e17/libs/ewl/plugins/fx/glow Modified Files: glow.c Log Message: * Changed the fx API slightly to simplify the job of calculating intervals between frames, and reduce the number of steps for the calculation. * Setup a config option for the user to put a bound on the frames per second for fx. This should be useful for slower machines when running apps with lots of widgets displayed. * Added more documenting comments, but haven't added sections to the manual.raw yet. * Added window geometry functions since the standard object geometries don't work well with windows. * Fixed the spinner test to use the new window geometry functions. =================================================================== RCS file: /cvsroot/enlightenment/e17/libs/ewl/plugins/fx/glow/glow.c,v retrieving revision 1.2 retrieving revision 1.3 diff -u -3 -r1.2 -r1.3 --- glow.c 2001/11/10 20:32:26 1.2 +++ glow.c 2001/11/14 00:30:15 1.3 @@ -61,13 +61,7 @@ void fx_start(Ewl_Widget * w) { - double interval; - double step; - - interval = ewl_fx_calculate_interval(fps, timeout); - step = ewl_fx_calculate_step(start_val, end_val, fps, timeout); - - ewl_fx_timer_add(w, glow.name, interval, step, 0, NULL); + ewl_fx_timer_add(w, glow.name, timeout, fps, end_val - start_val, NULL); } @@ -78,10 +72,10 @@ ewl_fx_clip_box_get_color(t->widget, &r, &g, &b, &a); - if (!t->data) - a += (int) (ceil(t->step)); - else + if (t->data) a -= (int) (ceil(t->step)); + else + a += (int) (ceil(t->step)); if (a <= start_val) { @@ -94,6 +88,8 @@ a = 255; t->data = (void *) 1; } + + t->count--; ewl_fx_clip_box_set_color(t->widget, r, g, b, a); } |
From: <enl...@li...> - 2001-11-14 00:30:46
|
Enlightenment CVS committal Author : rbdpngn Project : e17 Module : libs/ewl Dir : e17/libs/ewl/plugins/fx/fade_out Modified Files: fade_out.c Log Message: * Changed the fx API slightly to simplify the job of calculating intervals between frames, and reduce the number of steps for the calculation. * Setup a config option for the user to put a bound on the frames per second for fx. This should be useful for slower machines when running apps with lots of widgets displayed. * Added more documenting comments, but haven't added sections to the manual.raw yet. * Added window geometry functions since the standard object geometries don't work well with windows. * Fixed the spinner test to use the new window geometry functions. =================================================================== RCS file: /cvsroot/enlightenment/e17/libs/ewl/plugins/fx/fade_out/fade_out.c,v retrieving revision 1.3 retrieving revision 1.4 diff -u -3 -r1.3 -r1.4 --- fade_out.c 2001/11/10 20:32:26 1.3 +++ fade_out.c 2001/11/14 00:30:15 1.4 @@ -62,10 +62,7 @@ void fx_start(Ewl_Widget * w) { - double interval; - double step; int r, g, b, a; - int hits; ewl_fx_clip_box_get_color(w, &r, &g, &b, &a); @@ -74,11 +71,8 @@ else start_val = (double) (a); - interval = ewl_fx_calculate_interval(fps, timeout); - step = ewl_fx_calculate_step(start_val, end_val, fps, timeout); - hits = start_val - end_val / (int) (ceil(step)); - - ewl_fx_timer_add(w, fade_out.name, interval, step, hits, NULL); + ewl_fx_timer_add(w, fade_out.name, timeout, fps, start_val - end_val, + NULL); } |
From: <enl...@li...> - 2001-11-14 00:30:46
|
Enlightenment CVS committal Author : rbdpngn Project : e17 Module : libs/ewl Dir : e17/libs/ewl/test Modified Files: ewl_spinner_test.c ewl_textarea_test.c Log Message: * Changed the fx API slightly to simplify the job of calculating intervals between frames, and reduce the number of steps for the calculation. * Setup a config option for the user to put a bound on the frames per second for fx. This should be useful for slower machines when running apps with lots of widgets displayed. * Added more documenting comments, but haven't added sections to the manual.raw yet. * Added window geometry functions since the standard object geometries don't work well with windows. * Fixed the spinner test to use the new window geometry functions. =================================================================== RCS file: /cvsroot/enlightenment/e17/libs/ewl/test/ewl_spinner_test.c,v retrieving revision 1.5 retrieving revision 1.6 diff -u -3 -r1.5 -r1.6 --- ewl_spinner_test.c 2001/10/22 22:17:22 1.5 +++ ewl_spinner_test.c 2001/11/14 00:30:16 1.6 @@ -57,7 +57,7 @@ { int xx, yy, ww, hh; - ewl_object_get_current_geometry(EWL_OBJECT(tmp_win), &xx, &yy, &ww, + ewl_window_get_geometry(EWL_OBJECT(tmp_win), &xx, &yy, &ww, &hh); ewl_callback_del(spinner[0], EWL_CALLBACK_VALUE_CHANGED, =================================================================== RCS file: /cvsroot/enlightenment/e17/libs/ewl/test/ewl_textarea_test.c,v retrieving revision 1.1 retrieving revision 1.2 diff -u -3 -r1.1 -r1.2 --- ewl_textarea_test.c 2001/11/12 19:41:00 1.1 +++ ewl_textarea_test.c 2001/11/14 00:30:16 1.2 @@ -1,5 +1,15 @@ #include <Ewl.h> +static char *long_text = "This is a long string to test\n" + "the effectiveness of\n" + "the new text area.\n" + "It's possible that it contains\n" + "unprintable characters such\n" + "as or extremely long\n" + "lines. Beware, it may\n" + "trigger bugs in etox or\n" + "ewl\nso\ntrace\ncarefully."; + static Ewl_Widget *textarea_button; void __create_textarea_test_window(Ewl_Widget * w, void *ev_data, @@ -37,7 +47,7 @@ ewl_widget_show(textarea_win); textarea = ewl_textarea_new(); - ewl_textarea_set_text(EWL_TEXTAREA(textarea), "Test! =)"); + ewl_textarea_set_text(EWL_TEXTAREA(textarea), long_text); ewl_object_set_padding(EWL_OBJECT(textarea), 10, 10, 10, 10); ewl_container_append_child(EWL_CONTAINER(textarea_win), textarea); ewl_widget_show(textarea); |