Enlightenment CVS committal Author : codewarrior Project : e17 Module : proto
Dir : e17/proto/etk/src/lib Modified Files: etk_progress_bar.c etk_progress_bar.h Log Message: - add pulse_step_set/get for changing the pulse step in activity mode. =================================================================== RCS file: /cvsroot/enlightenment/e17/proto/etk/src/lib/etk_progress_bar.c,v retrieving revision 1.1 retrieving revision 1.2 diff -u -3 -r1.1 -r1.2 --- etk_progress_bar.c 19 Jan 2006 13:56:10 -0000 1.1 +++ etk_progress_bar.c 19 Jan 2006 14:22:39 -0000 1.2 @@ -142,7 +142,6 @@ /** * @brief Causes the progress bar to enter pulse mode, subsequent calls simple move the bar around * @param progress_bar a progess bar - * @param fraction the fraction (percentage) to set */ void etk_progress_bar_pulse(Etk_Progress_Bar *progress_bar) { @@ -161,14 +160,14 @@ if(progress_bar->activity_dir == ETK_PROGRESS_BAR_ACTIVITY_DIR_LEFT) { - new_drag_value += 0.1; /* TODO: make this changable */ + new_drag_value += progress_bar->pulse_step; if(new_drag_value > 1.0) { progress_bar->activity_dir = ETK_PROGRESS_BAR_ACTIVITY_DIR_RIGHT; } } else { - new_drag_value -= 0.1; /* TODO: make this changable */ + new_drag_value -= progress_bar->pulse_step; if(new_drag_value < 0.0) { progress_bar->activity_dir = ETK_PROGRESS_BAR_ACTIVITY_DIR_LEFT; @@ -178,6 +177,39 @@ edje_object_part_drag_value_set(widget->theme_object, "filler", new_drag_value, 0.0); } +/** + * @brief Set the step size for the activity mode. + * @param progress_bar a progess bar + * @param pulse_step the step size + */ +void etk_progress_bar_pulse_step_set(Etk_Progress_Bar *progress_bar, double pulse_step) +{ + Etk_Widget *widget; + + if (!(widget = ETK_WIDGET(progress_bar))) + return; + + if(pulse_step > 0.5 || pulse_step < 0.1) + return; + + progress_bar->pulse_step = pulse_step; +} + +/** + * @brief Get the step size for the activity mode. + * @param progress_bar a progess bar + * @return Returns the step size + */ +double etk_progress_bar_pulse_step_get(Etk_Progress_Bar *progress_bar) +{ + Etk_Widget *widget; + + if (!(widget = ETK_WIDGET(progress_bar))) + return; + + return progress_bar->pulse_step; +} + /************************** * * Etk specific functions @@ -191,6 +223,7 @@ return; progress_bar->activity_dir = ETK_PROGRESS_BAR_ACTIVITY_DIR_LEFT; + progress_bar->pulse_step = 0.1; progress_bar->label = etk_label_new(NULL); etk_widget_visibility_locked_set(progress_bar->label, ETK_TRUE); =================================================================== RCS file: /cvsroot/enlightenment/e17/proto/etk/src/lib/etk_progress_bar.h,v retrieving revision 1.1 retrieving revision 1.2 diff -u -3 -r1.1 -r1.2 --- etk_progress_bar.h 19 Jan 2006 13:56:10 -0000 1.1 +++ etk_progress_bar.h 19 Jan 2006 14:22:39 -0000 1.2 @@ -26,7 +26,8 @@ Etk_Widget *label; - unsigned char activity_dir : 1; + unsigned char activity_dir : 1; + int pulse_step; }; Etk_Type *etk_progress_bar_type_get(); @@ -35,10 +36,14 @@ void etk_progress_bar_text_set(Etk_Progress_Bar *progress_bar, const char *label); const char *etk_progress_bar_text_get(Etk_Progress_Bar *progress_bar); + void etk_progress_bar_fraction_set(Etk_Progress_Bar *progress_bar, double fraction); double etk_progress_bar_fraction_get(Etk_Progress_Bar *progress_bar); -void etk_progress_bar_pulse(Etk_Progress_Bar *progress_bar); +void etk_progress_bar_pulse(Etk_Progress_Bar *progress_bar); +void etk_progress_bar_pulse_step_set(Etk_Progress_Bar *progress_bar, double pulse_step); +double etk_progress_bar_pulse_step_get(Etk_Progress_Bar *progress_bar); + /** @} */ #endif ------------------------------------------------------- This SF.net email is sponsored by: Splunk Inc. Do you grep through log files for problems? Stop! Download the new AJAX search engine that makes searching your log files as easy as surfing the web. DOWNLOAD SPLUNK! http://sel.as-us.falkag.net/sel?cmd=lnk&kid=103432&bid=230486&dat=121642 _______________________________________________ enlightenment-cvs mailing list enlightenment-cvs@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-cvs