Enlightenment CVS committal Author : pfritz Project : e17 Module : libs/ewl
Dir : e17/libs/ewl/src/lib Modified Files: ewl_check.c ewl_entry.c ewl_enums.h ewl_filelist.c ewl_notebook.c ewl_paned.c ewl_tree.c ewl_widget.c ewl_widget.h Log Message: add to ewl_widget_state_set() an argument showing if the state is persistent or transient =================================================================== RCS file: /cvs/e/e17/libs/ewl/src/lib/ewl_check.c,v retrieving revision 1.8 retrieving revision 1.9 diff -u -3 -r1.8 -r1.9 --- ewl_check.c 10 Mar 2006 04:06:43 -0000 1.8 +++ ewl_check.c 25 May 2006 18:27:18 -0000 1.9 @@ -128,9 +128,9 @@ cb = EWL_CHECK(w); if (cb->checked) - ewl_widget_state_set(w, "checked"); + ewl_widget_state_set(w, "checked", EWL_STATE_PERSISTENT); else - ewl_widget_state_set(w, "default"); + ewl_widget_state_set(w, "default", EWL_STATE_PERSISTENT); DLEAVE_FUNCTION(DLEVEL_STABLE); } =================================================================== RCS file: /cvs/e/e17/libs/ewl/src/lib/ewl_entry.c,v retrieving revision 1.53 retrieving revision 1.54 diff -u -3 -r1.53 -r1.54 --- ewl_entry.c 11 May 2006 04:01:20 -0000 1.53 +++ ewl_entry.c 25 May 2006 18:27:18 -0000 1.54 @@ -159,7 +159,8 @@ if (ewl_object_state_has(EWL_OBJECT(e), EWL_FLAG_STATE_FOCUSED)) ewl_widget_show(e->cursor); - ewl_widget_state_set(EWL_WIDGET(e), "editable"); + ewl_widget_state_set(EWL_WIDGET(e), "editable", + EWL_STATE_PERSISTENT); } else { @@ -169,7 +170,8 @@ if (ewl_object_state_has(EWL_OBJECT(e), EWL_FLAG_STATE_FOCUSED)) ewl_widget_hide(e->cursor); - ewl_widget_state_set(EWL_WIDGET(e), "noteditable"); + ewl_widget_state_set(EWL_WIDGET(e), "noteditable", + EWL_STATE_PERSISTENT); } DLEAVE_FUNCTION(DLEVEL_STABLE); @@ -314,7 +316,8 @@ e = EWL_ENTRY(w); /* reset the cursor blink */ - ewl_widget_state_set(EWL_WIDGET(e->cursor), "noblink"); + ewl_widget_state_set(EWL_WIDGET(e->cursor), "noblink", + EWL_STATE_PERSISTENT); if (!strcmp(event->keyname, "Left")) ewl_entry_cursor_move_left(e); =================================================================== RCS file: /cvs/e/e17/libs/ewl/src/lib/ewl_enums.h,v retrieving revision 1.44 retrieving revision 1.45 diff -u -3 -r1.44 -r1.45 --- ewl_enums.h 12 May 2006 01:24:39 -0000 1.44 +++ ewl_enums.h 25 May 2006 18:27:18 -0000 1.45 @@ -358,6 +358,20 @@ typedef enum Ewl_Key_Modifiers Ewl_Key_Modifiers; /** + * @enum Ewl_State_Type + * The state type + */ +enum Ewl_State_Type { + EWL_STATE_TRANSIENT, + EWL_STATE_PERSISTENT +}; + +/** + * The Ewl_State_Type type + */ +typedef enum Ewl_State_Type Ewl_State_Type; + +/** * @enum Ewl_Stock_Type * The different stock types */ =================================================================== RCS file: /cvs/e/e17/libs/ewl/src/lib/ewl_filelist.c,v retrieving revision 1.15 retrieving revision 1.16 diff -u -3 -r1.15 -r1.16 --- ewl_filelist.c 24 May 2006 02:55:15 -0000 1.15 +++ ewl_filelist.c 25 May 2006 18:27:18 -0000 1.16 @@ -532,7 +532,7 @@ ecore_list_goto_first(fl->selected); while ((item = ecore_list_next(fl->selected))) - ewl_widget_state_set(item, signal); + ewl_widget_state_set(item, signal, EWL_STATE_PERSISTENT); DLEAVE_FUNCTION(DLEVEL_STABLE); } @@ -777,7 +777,8 @@ ecore_list_clear(fl->selected); if (select_state) - ewl_widget_state_set(w, select_state); + ewl_widget_state_set(w, select_state, + EWL_STATE_PERSISTENT); ecore_list_append(fl->selected, w); ewl_filelist_selected_files_change_notify(fl); @@ -809,7 +810,9 @@ fl->select.last = w; } - if (select_state) ewl_widget_state_set(w, select_state); + if (select_state) + ewl_widget_state_set(w, select_state, + EWL_STATE_PERSISTENT); ecore_list_append(fl->selected, w); ewl_filelist_selected_files_change_notify(fl); @@ -825,13 +828,15 @@ if (item) { if (unselect_state) - ewl_widget_state_set(w, unselect_state); + ewl_widget_state_set(w, unselect_state, + EWL_STATE_PERSISTENT); ecore_list_remove(fl->selected); } else { if (select_state) - ewl_widget_state_set(w, select_state); + ewl_widget_state_set(w, select_state, + EWL_STATE_PERSISTENT); ecore_list_append(fl->selected, w); } } @@ -904,7 +909,8 @@ fl->select.last, cur_idx, clicked); /* make sure the last selected is removed */ - ewl_widget_state_set(fl->select.last, unselect_signal); + ewl_widget_state_set(fl->select.last, unselect_signal, + EWL_STATE_PERSISTENT); ecore_list_goto(fl->selected, fl->select.last); ecore_list_remove(fl->selected); @@ -965,7 +971,7 @@ if (add) { - ewl_widget_state_set(cur, signal); + ewl_widget_state_set(cur, signal, EWL_STATE_PERSISTENT); ecore_list_append(fl->selected, cur); } else @@ -975,7 +981,8 @@ { ecore_list_goto(fl->selected, cur); ecore_list_remove(fl->selected); - ewl_widget_state_set(cur, signal); + ewl_widget_state_set(cur, signal, + EWL_STATE_PERSISTENT); } } } =================================================================== RCS file: /cvs/e/e17/libs/ewl/src/lib/ewl_notebook.c,v retrieving revision 1.14 retrieving revision 1.15 diff -u -3 -r1.14 -r1.15 --- ewl_notebook.c 3 Mar 2006 06:19:00 -0000 1.14 +++ ewl_notebook.c 25 May 2006 18:27:18 -0000 1.15 @@ -259,7 +259,7 @@ Ewl_Widget *w; t = ewl_attach_notebook_data_get(n->cur_page); - if (t) ewl_widget_state_set(t, "default"); + if (t) ewl_widget_state_set(t, "default", EWL_STATE_PERSISTENT); /* make sure we set n->cur_page null first or the hide * callback won't let us hide */ @@ -272,7 +272,7 @@ ewl_widget_show(n->cur_page); t = ewl_attach_notebook_data_get(n->cur_page); - if (t) ewl_widget_state_set(t, "selected"); + if (t) ewl_widget_state_set(t, "selected", EWL_STATE_PERSISTENT); DLEAVE_FUNCTION(DLEVEL_STABLE); } @@ -391,7 +391,7 @@ /* if this is the current page set it's tab to selected */ if (n->cur_page == page) - ewl_widget_state_set(t, "selected"); + ewl_widget_state_set(t, "selected", EWL_STATE_PERSISTENT); ewl_container_child_append(EWL_CONTAINER(t), tab); =================================================================== RCS file: /cvs/e/e17/libs/ewl/src/lib/ewl_paned.c,v retrieving revision 1.30 retrieving revision 1.31 diff -u -3 -r1.30 -r1.31 --- ewl_paned.c 24 May 2006 02:55:15 -0000 1.30 +++ ewl_paned.c 25 May 2006 18:27:18 -0000 1.31 @@ -700,7 +700,7 @@ ewl_callback_append(w, EWL_CALLBACK_MOUSE_MOVE, ewl_paned_grabber_cb_mouse_move, NULL); - ewl_widget_state_set(w, "selected"); + ewl_widget_state_set(w, "selected", EWL_STATE_PERSISTENT); DLEAVE_FUNCTION(DLEVEL_STABLE); } @@ -715,7 +715,7 @@ ewl_callback_del(w, EWL_CALLBACK_MOUSE_MOVE, ewl_paned_grabber_cb_mouse_move); - ewl_widget_state_set(w, "default"); + ewl_widget_state_set(w, "default", EWL_STATE_PERSISTENT); DLEAVE_FUNCTION(DLEVEL_STABLE); } =================================================================== RCS file: /cvs/e/e17/libs/ewl/src/lib/ewl_tree.c,v retrieving revision 1.35 retrieving revision 1.36 diff -u -3 -r1.35 -r1.36 --- ewl_tree.c 11 May 2006 04:01:20 -0000 1.35 +++ ewl_tree.c 25 May 2006 18:27:18 -0000 1.36 @@ -609,7 +609,7 @@ DCHECK_TYPE("tree", tree, EWL_TREE_TYPE); while ((w = ecore_list_remove_first(tree->selected))) - ewl_widget_state_set(w, "tree-deselect"); + ewl_widget_state_set(w, "tree-deselect", EWL_STATE_PERSISTENT); DLEAVE_FUNCTION(DLEVEL_STABLE); } @@ -673,10 +673,10 @@ DCHECK_TYPE("row", row, EWL_WIDGET_TYPE); if (ewl_tree_row_pos & 1) { - ewl_widget_state_set(row, "odd"); + ewl_widget_state_set(row, "odd", EWL_STATE_PERSISTENT); } else { - ewl_widget_state_set(row, "even"); + ewl_widget_state_set(row, "even", EWL_STATE_PERSISTENT); } ewl_tree_row_pos++; @@ -966,7 +966,8 @@ node->expanded = EWL_TREE_NODE_COLLAPSED; - ewl_widget_state_set(EWL_WIDGET(node), "collapsed"); + ewl_widget_state_set(EWL_WIDGET(node), "collapsed", + EWL_STATE_PERSISTENT); DLEAVE_FUNCTION(DLEVEL_STABLE); } @@ -1016,7 +1017,8 @@ ecore_list_destroy(tmp); - ewl_widget_state_set(EWL_WIDGET(node), "expanded"); + ewl_widget_state_set(EWL_WIDGET(node), "expanded", + EWL_STATE_PERSISTENT); DLEAVE_FUNCTION(DLEVEL_STABLE); } @@ -1257,7 +1259,7 @@ if (tree->mode != EWL_TREE_MODE_NONE) { if (ecore_list_goto(tree->selected, w) == NULL) ecore_list_append(tree->selected, w); - ewl_widget_state_set(w, "tree-selected"); + ewl_widget_state_set(w, "tree-selected", EWL_STATE_PERSISTENT); } DLEAVE_FUNCTION(DLEVEL_STABLE); @@ -1279,7 +1281,8 @@ if (ecore_list_goto(tree->selected, w)) { ecore_list_remove(tree->selected); - ewl_widget_state_set(w, "tree-deselected"); + ewl_widget_state_set(w, "tree-deselected", + EWL_STATE_PERSISTENT); } DLEAVE_FUNCTION(DLEVEL_STABLE); =================================================================== RCS file: /cvs/e/e17/libs/ewl/src/lib/ewl_widget.c,v retrieving revision 1.80 retrieving revision 1.81 diff -u -3 -r1.80 -r1.81 --- ewl_widget.c 25 May 2006 17:56:08 -0000 1.80 +++ ewl_widget.c 25 May 2006 18:27:18 -0000 1.81 @@ -699,6 +699,7 @@ /** * @param w: the widget to update the appearance * @param state: the new state of the widget + * @param flag: the flag for the state e.g. EWL_STATE_TRANSIENT * @return Returns no value. * @brief Update the appearance of the widget to a state * @@ -706,7 +707,7 @@ * the state parameter. */ void -ewl_widget_state_set(Ewl_Widget *w, const char *state) +ewl_widget_state_set(Ewl_Widget *w, const char *state, Ewl_State_Type flag) { DENTER_FUNCTION(DLEVEL_STABLE); DCHECK_PARAM_PTR("w", w); @@ -717,7 +718,8 @@ * Intentionally lose a reference to the ecore string to keep a * reference cached for later re-use. */ - w->bit_state = ecore_string_instance((char *)state); + if (flag == EWL_STATE_PERSISTENT) + w->bit_state = ecore_string_instance((char *)state); if (w->theme_object) { if (ewl_config.theme.print_signals) @@ -2219,12 +2221,15 @@ /* * Set the state of the theme object */ - if (w->bit_state) - ewl_widget_state_set(w, (char *)w->bit_state); + if (w->bit_state) { + ewl_widget_state_set(w, (char *)w->bit_state, + EWL_STATE_PERSISTENT); + } if (ewl_object_state_has(EWL_OBJECT(w), EWL_FLAG_STATE_DISABLED)) - ewl_widget_state_set(w, "disabled"); + ewl_widget_state_set(w, "disabled", + EWL_STATE_PERSISTENT); /* * Apply any text overrides @@ -2616,7 +2621,7 @@ DCHECK_PARAM_PTR("w", w); DCHECK_TYPE("w", w, EWL_WIDGET_TYPE); - ewl_widget_state_set(w, "default"); + ewl_widget_state_set(w, "default", EWL_STATE_PERSISTENT); DLEAVE_FUNCTION(DLEVEL_STABLE); } @@ -2629,7 +2634,7 @@ DCHECK_PARAM_PTR("w", w); DCHECK_TYPE("w", w, EWL_WIDGET_TYPE); - ewl_widget_state_set(w, "disabled"); + ewl_widget_state_set(w, "disabled", EWL_STATE_PERSISTENT); DLEAVE_FUNCTION(DLEVEL_STABLE); } @@ -2645,7 +2650,7 @@ if (ewl_object_state_has(EWL_OBJECT(w), EWL_FLAG_STATE_DISABLED)) DRETURN(DLEVEL_STABLE); - ewl_widget_state_set(w, "focus,in"); + ewl_widget_state_set(w, "focus,in", EWL_STATE_TRANSIENT); DLEAVE_FUNCTION(DLEVEL_STABLE); } @@ -2661,7 +2666,7 @@ if (ewl_object_state_has(EWL_OBJECT(w), EWL_FLAG_STATE_DISABLED)) DRETURN(DLEVEL_STABLE); - ewl_widget_state_set(w, "focus,out"); + ewl_widget_state_set(w, "focus,out", EWL_STATE_TRANSIENT); DLEAVE_FUNCTION(DLEVEL_STABLE); } @@ -2677,7 +2682,7 @@ if (ewl_object_state_has(EWL_OBJECT(w), EWL_FLAG_STATE_DISABLED)) DRETURN(DLEVEL_STABLE); - ewl_widget_state_set(w, "mouse,in"); + ewl_widget_state_set(w, "mouse,in", EWL_STATE_TRANSIENT); DLEAVE_FUNCTION(DLEVEL_STABLE); } @@ -2693,7 +2698,7 @@ if (ewl_object_state_has(EWL_OBJECT(w), EWL_FLAG_STATE_DISABLED)) DRETURN(DLEVEL_STABLE); - ewl_widget_state_set(w, "mouse,out"); + ewl_widget_state_set(w, "mouse,out", EWL_STATE_TRANSIENT); DLEAVE_FUNCTION(DLEVEL_STABLE); } @@ -2713,7 +2718,7 @@ DRETURN(DLEVEL_STABLE); snprintf(state, 14, "mouse,down,%i", e->button); - ewl_widget_state_set(w, state); + ewl_widget_state_set(w, state, EWL_STATE_TRANSIENT); DLEAVE_FUNCTION(DLEVEL_STABLE); } @@ -2733,12 +2738,12 @@ DRETURN(DLEVEL_STABLE); snprintf(state, 14, "mouse,up,%i", e->button); - ewl_widget_state_set(w, state); + ewl_widget_state_set(w, state, EWL_STATE_TRANSIENT); if (ewl_object_state_has(EWL_OBJECT(w), EWL_FLAG_STATE_MOUSE_IN)) { int x, y; - ewl_widget_state_set(w, "mouse,in"); + ewl_widget_state_set(w, "mouse,in", EWL_STATE_TRANSIENT); x = e->x - (CURRENT_X(w) - INSET_LEFT(w)); y = e->y - (CURRENT_Y(w) - INSET_TOP(w)); if ((x > 0) && (x < CURRENT_W(w) + INSET_HORIZONTAL(w)) && @@ -2751,7 +2756,7 @@ e->x, e->y, e->modifiers); } } else - ewl_widget_state_set(w, "mouse,out"); + ewl_widget_state_set(w, "mouse,out", EWL_STATE_TRANSIENT); DLEAVE_FUNCTION(DLEVEL_STABLE); } @@ -2764,7 +2769,7 @@ DCHECK_PARAM_PTR("w", w); DCHECK_TYPE("w", w, EWL_WIDGET_TYPE); - ewl_widget_state_set(w, "mouse,move"); + ewl_widget_state_set(w, "mouse,move", EWL_STATE_TRANSIENT); DLEAVE_FUNCTION(DLEVEL_STABLE); } =================================================================== RCS file: /cvs/e/e17/libs/ewl/src/lib/ewl_widget.h,v retrieving revision 1.42 retrieving revision 1.43 diff -u -3 -r1.42 -r1.43 --- ewl_widget.h 21 May 2006 03:51:41 -0000 1.42 +++ ewl_widget.h 25 May 2006 18:27:18 -0000 1.43 @@ -170,7 +170,8 @@ void *ewl_widget_data_del(Ewl_Widget * w, void *k); void *ewl_widget_data_get(Ewl_Widget * w, void *k); -void ewl_widget_state_set(Ewl_Widget * w, const char *state); +void ewl_widget_state_set(Ewl_Widget * w, const char *state, + Ewl_State_Type flag); void ewl_widget_appearance_set(Ewl_Widget * w, char *appearance); char *ewl_widget_appearance_get(Ewl_Widget * w); ------------------------------------------------------- All the advantages of Linux Managed Hosting--Without the Cost and Risk! Fully trained technicians. The highest number of Red Hat certifications in the hosting industry. Fanatical Support. Click to learn more http://sel.as-us.falkag.net/sel?cmd=lnk&kid=107521&bid=248729&dat=121642 _______________________________________________ enlightenment-cvs mailing list enlightenment-cvs@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-cvs