Enlightenment CVS committal Author : moom Project : e17 Module : libs/etk
Dir : e17/libs/etk/src/bin Modified Files: etk_slider_test.c Log Message: * [Slider] The maximum bound of the vertical slider now corresponds to its top end (doesn't seem to be the case with E/Gtk though...). Uses more logical key bindings too (using the down arrow to increase the value of a hslider is a non-sense imho), same for mouse-wheel. Sliders can now be inverted with etk_slider_inverted_set() * [Colorpicker] The colorpicker now uses the label of the sliders instead of its own labels =================================================================== RCS file: /cvs/e/e17/libs/etk/src/bin/etk_slider_test.c,v retrieving revision 1.9 retrieving revision 1.10 diff -u -3 -r1.9 -r1.10 --- etk_slider_test.c 20 Feb 2007 20:50:19 -0000 1.9 +++ etk_slider_test.c 21 Feb 2007 05:19:17 -0000 1.10 @@ -1,13 +1,18 @@ #include "etk_test.h" +static void _inverted_toggled_cb(Etk_Object *object, void *data); + /* Creates the window for the slider test */ void etk_test_slider_window_create(void *data) { static Etk_Widget *win = NULL; Etk_Widget *table; - Etk_Widget *slider; - Etk_Widget *spinner; + Etk_Widget *hslider; + Etk_Widget *vslider; Etk_Widget *separator; + Etk_Widget *frame; + Etk_Widget *vbox; + Etk_Widget *check; if (win) { @@ -24,23 +29,61 @@ etk_container_add(ETK_CONTAINER(win), table); /* Create the horizontal slider */ - slider = etk_hslider_new(0.0, 255.0, 128.0, 1.0, 10.0); - etk_slider_label_set(ETK_SLIDER(slider), "%.0f"); - etk_widget_size_request_set(slider, 130, 130); - etk_table_attach_default(ETK_TABLE(table), slider, 0, 0, 0, 0); + hslider = etk_hslider_new(0.0, 255.0, 128.0, 1.0, 10.0); + etk_slider_label_set(ETK_SLIDER(hslider), "%.0f"); + etk_widget_size_request_set(hslider, 130, 130); + etk_table_attach_default(ETK_TABLE(table), hslider, 0, 0, 0, 0); /* Create the vertical slider */ - slider = etk_vslider_new(0.0, 255.0, 128.0, 1.0, 10.0); - etk_slider_label_set(ETK_SLIDER(slider), "%.0f"); - etk_widget_size_request_set(slider, 130, 130); - etk_table_attach_default(ETK_TABLE(table), slider, 1, 1, 0, 0); + vslider = etk_vslider_new(0.0, 255.0, 128.0, 1.0, 10.0); + etk_slider_label_set(ETK_SLIDER(vslider), "%.0f"); + etk_widget_size_request_set(vslider, 130, 130); + etk_table_attach_default(ETK_TABLE(table), vslider, 1, 1, 0, 0); separator = etk_hseparator_new(); - etk_table_attach_default(ETK_TABLE(table), separator, 0, 1, 1, 1); + etk_table_attach(ETK_TABLE(table), separator, 0, 1, 1, 1, 0, 0, ETK_TABLE_HFILL); + + + /* Create the settings frame for the horizontal slider */ + frame = etk_frame_new("Horizontal"); + etk_table_attach(ETK_TABLE(table), frame, 0, 0, 2, 2, 0, 0, ETK_TABLE_HEXPAND | ETK_TABLE_FILL); + vbox = etk_vbox_new(ETK_TRUE, 0); + etk_container_add(ETK_CONTAINER(frame), vbox); + + check = etk_check_button_new_with_label("Inverted"); + etk_box_append(ETK_BOX(vbox), check, ETK_BOX_START, ETK_BOX_EXPAND, 0); + etk_signal_connect("toggled", ETK_OBJECT(check), ETK_CALLBACK(_inverted_toggled_cb), hslider); + + check = etk_check_button_new_with_label("Continuous Update"); + etk_toggle_button_active_set(ETK_TOGGLE_BUTTON(check), ETK_TRUE); + etk_box_append(ETK_BOX(vbox), check, ETK_BOX_START, ETK_BOX_EXPAND, 0); + + + /* Create the settings frame for the vertical slider */ + frame = etk_frame_new("Vertical"); + etk_table_attach(ETK_TABLE(table), frame, 1, 1, 2, 2, 0, 0, ETK_TABLE_HEXPAND | ETK_TABLE_FILL); + vbox = etk_vbox_new(ETK_TRUE, 0); + etk_container_add(ETK_CONTAINER(frame), vbox); + + check = etk_check_button_new_with_label("Inverted"); + etk_box_append(ETK_BOX(vbox), check, ETK_BOX_START, ETK_BOX_EXPAND, 0); + etk_signal_connect("toggled", ETK_OBJECT(check), ETK_CALLBACK(_inverted_toggled_cb), vslider); + + check = etk_check_button_new_with_label("Continuous Update"); + etk_toggle_button_active_set(ETK_TOGGLE_BUTTON(check), ETK_TRUE); + etk_box_append(ETK_BOX(vbox), check, ETK_BOX_START, ETK_BOX_EXPAND, 0); - /* Create the spinner */ - spinner = etk_spinner_new(0.0, 255.0, 128.00, 1.0, 10.0); - etk_table_attach(ETK_TABLE(table), spinner, 0, 1, 2, 2, 0, 0, ETK_TABLE_NONE); etk_widget_show_all(win); +} + +/* Called when one of the "Inverted" check buttons is toggled */ +static void _inverted_toggled_cb(Etk_Object *object, void *data) +{ + Etk_Toggle_Button *toggle; + Etk_Slider *slider; + + if (!(toggle = ETK_TOGGLE_BUTTON(object)) || !(slider = ETK_SLIDER(data))) + return; + etk_slider_inverted_set(slider, etk_toggle_button_active_get(toggle)); } ------------------------------------------------------------------------- Take Surveys. Earn Cash. Influence the Future of IT Join SourceForge.net's Techsay panel and you'll get the chance to share your opinions on IT & business topics through brief surveys-and earn cash http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV _______________________________________________ enlightenment-cvs mailing list enlightenment-cvs@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-cvs