Enlightenment CVS committal Author : codewarrior Project : e17 Module : proto
Dir : e17/proto/etk/src/lib Modified Files: etk_notebook.c etk_progress_bar.c etk_progress_bar.h Log Message: - provide more control over the progress bar's filler to the theme =================================================================== RCS file: /cvsroot/enlightenment/e17/proto/etk/src/lib/etk_notebook.c,v retrieving revision 1.15 retrieving revision 1.16 diff -u -3 -r1.15 -r1.16 --- etk_notebook.c 9 Mar 2006 11:02:12 -0000 1.15 +++ etk_notebook.c 9 Mar 2006 14:00:58 -0000 1.16 @@ -244,7 +244,7 @@ int i = 0; if (!notebook) - return -1; + return 0; for(l = notebook->pages; l; l = l->next) { =================================================================== RCS file: /cvsroot/enlightenment/e17/proto/etk/src/lib/etk_progress_bar.c,v retrieving revision 1.8 retrieving revision 1.9 diff -u -3 -r1.8 -r1.9 --- etk_progress_bar.c 13 Feb 2006 15:20:32 -0000 1.8 +++ etk_progress_bar.c 9 Mar 2006 14:00:58 -0000 1.9 @@ -3,6 +3,7 @@ #include <stdlib.h> #include <string.h> #include <Edje.h> +#include "etk_widget.h" #include "etk_signal.h" #include "etk_signal_callback.h" #include "etk_utils.h" @@ -23,6 +24,7 @@ static void _etk_progress_bar_property_set(Etk_Object *object, int property_id, Etk_Property_Value *value); static void _etk_progress_bar_property_get(Etk_Object *object, int property_id, Etk_Property_Value *value); static void _etk_progress_bar_update(Etk_Progress_Bar *progress_bar); +static void _etk_progress_bar_realize_cb(Etk_Object *object, void *data); /************************** * @@ -59,7 +61,14 @@ */ Etk_Widget *etk_progress_bar_new() { - return etk_widget_new(ETK_PROGRESS_BAR_TYPE, "theme_group", "progress_bar", NULL); + Etk_Widget *progress_bar; + + progress_bar = etk_widget_new(ETK_PROGRESS_BAR_TYPE, "theme_group", "progress_bar", NULL); + if(!progress_bar) + return NULL; + + etk_signal_connect("realize", ETK_OBJECT(progress_bar), ETK_CALLBACK(_etk_progress_bar_realize_cb), NULL); + return progress_bar; } /** @@ -68,7 +77,14 @@ */ Etk_Widget *etk_progress_bar_new_with_text(const char *text) { - return etk_widget_new(ETK_PROGRESS_BAR_TYPE, "theme_group", "progress_bar", "text", text, NULL); + Etk_Widget *progress_bar; + + progress_bar = etk_widget_new(ETK_PROGRESS_BAR_TYPE, "theme_group", "progress_bar", "text", text, NULL); + if(!progress_bar) + return NULL; + + etk_signal_connect("realize", ETK_OBJECT(progress_bar), ETK_CALLBACK(_etk_progress_bar_realize_cb), NULL); + return progress_bar; } /** @@ -301,11 +317,19 @@ else { edje_object_part_drag_value_set(widget->theme_object, "filler", progress_bar->pulse_pos, 0.0); - /* TODO: the size of the filler should be themable */ - edje_object_part_drag_size_set(widget->theme_object, "filler", 0.3, 0.0); + edje_object_part_drag_size_set(widget->theme_object, "filler", progress_bar->filler_pulse_w, 0.0); } etk_widget_theme_object_part_text_set(widget, "text", progress_bar->text ? progress_bar->text : ""); } +static void _etk_progress_bar_realize_cb(Etk_Object *object, void *data) +{ + Etk_Progress_Bar *progress_bar; + + progress_bar = ETK_PROGRESS_BAR(object); + if (etk_widget_theme_object_data_get(ETK_WIDGET(object), "filler_pulse_width", "%lg", &progress_bar->filler_pulse_w) != 1) + progress_bar->filler_pulse_w = 0.3; +} + /** @} */ =================================================================== RCS file: /cvsroot/enlightenment/e17/proto/etk/src/lib/etk_progress_bar.h,v retrieving revision 1.5 retrieving revision 1.6 diff -u -3 -r1.5 -r1.6 --- etk_progress_bar.h 13 Feb 2006 01:10:20 -0000 1.5 +++ etk_progress_bar.h 9 Mar 2006 14:00:58 -0000 1.6 @@ -42,6 +42,7 @@ double fraction; double pulse_pos; double pulse_step; + double filler_pulse_w; Etk_Progress_Bar_Orientation pulse_dir; Etk_Progress_Bar_Orientation orientation; Etk_Bool is_pulsing; ------------------------------------------------------- This SF.Net email is sponsored by xPML, a groundbreaking scripting language that extends applications into web and mobile media. Attend the live webcast and join the prime developer group breaking into this new coding territory! http://sel.as-us.falkag.net/sel?cmd=lnk&kid=110944&bid=241720&dat=121642 _______________________________________________ enlightenment-cvs mailing list enlightenment-cvs@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-cvs