Enlightenment CVS committal Author : werkt Project : misc Module : ewler
Dir : misc/ewler/src Modified Files: Makefile.am form.c form_file.c inspector.c selected.c Log Message: Added ewl_uic to the tree. =================================================================== RCS file: /cvsroot/enlightenment/misc/ewler/src/Makefile.am,v retrieving revision 1.2 retrieving revision 1.3 diff -u -3 -r1.2 -r1.3 --- Makefile.am 9 Jun 2004 18:45:12 -0000 1.2 +++ Makefile.am 6 Jul 2004 03:38:12 -0000 1.3 @@ -1,5 +1,7 @@ ## Process this file with automake to produce Makefile.in +SUBDIRS = ewl_uic + INCLUDES = @ewl_cflags@ @xml2_cflags@ bin_PROGRAMS = ewler =================================================================== RCS file: /cvsroot/enlightenment/misc/ewler/src/form.c,v retrieving revision 1.6 retrieving revision 1.7 diff -u -3 -r1.6 -r1.7 --- form.c 5 Jul 2004 02:40:45 -0000 1.6 +++ form.c 6 Jul 2004 03:38:12 -0000 1.7 @@ -23,7 +23,7 @@ static struct { int active; - int x, y; + int ox, oy; } dragging; static void @@ -82,12 +82,14 @@ widget_container = w; } else if( !widget_selected ) { /* check for shift down */ - form_selected_clear( form ); + if( ev->modifiers != EWL_KEY_MODIFIER_SHIFT && + ev->modifiers != EWL_KEY_MODIFIER_CTRL ) + form_selected_clear( form ); form_selected_append( form, w ); - dragging.x = ev->x - CURRENT_X(w); - dragging.y = ev->y - CURRENT_Y(w); + dragging.ox = ev->x; + dragging.oy = ev->y; dragging.active = 1; widget_selected = 1; @@ -104,21 +106,23 @@ Ewler_Form *form = EWLER_FORM(user_data); Ewl_Event_Mouse_Move *ev = ev_data; Ewl_Widget *c_s; + int dx, dy; + + dx = ev->x - dragging.ox; + dy = ev->y - dragging.oy; if( dragging.active ) { ecore_list_goto_first( form->selected ); while( (c_s = ecore_list_next(form->selected)) ) { -#if 0 - ewl_object_request_position(EWL_OBJECT(c_s), - ev->x - dragging.x - 8, - ev->y - dragging.y - 8); -#endif ewl_object_request_position(EWL_OBJECT(c_s), - ev->x - dragging.x, - ev->y - dragging.y); + CURRENT_X(c_s) + dx, + CURRENT_Y(c_s) + dy); } } + + dragging.ox = ev->x; + dragging.oy = ev->y; } static void @@ -127,22 +131,20 @@ Ewler_Form *form = user_data; Ewl_Event_Mouse_Up *ev = ev_data; Ewl_Widget *c_s; + int dx, dy; + + dx = ev->x - dragging.ox; + dy = ev->y - dragging.oy; if( dragging.active ) { ecore_list_goto_first( form->selected ); while( (c_s = ecore_list_next( form->selected )) ) { -#if 0 - ewl_object_request_position(EWL_OBJECT(c_s), - ev->x - dragging.x - 8, - ev->y - dragging.y - 8); -#endif ewl_object_request_position(EWL_OBJECT(c_s), - ev->x - dragging.x, - ev->y - dragging.y); + CURRENT_X(c_s) - dx, + CURRENT_Y(c_s) - dy); widget_changed(ewler_selected_get(EWLER_SELECTED(c_s))); } - dragging.x = dragging.y = 0; dragging.active = 0; } } @@ -257,10 +259,14 @@ } void +form_clear_widget_selected( void ) +{ + widget_selected = 0; +} + +void form_set_widget_dragging( Ewl_Widget *w, Ewl_Event_Mouse_Down *ev ) { - dragging.x = ev->x - CURRENT_X(w); - dragging.y = ev->y - CURRENT_Y(w); dragging.active = 1; widget_selected = 1; =================================================================== RCS file: /cvsroot/enlightenment/misc/ewler/src/form_file.c,v retrieving revision 1.1 retrieving revision 1.2 diff -u -3 -r1.1 -r1.2 --- form_file.c 8 Jun 2004 18:30:05 -0000 1.1 +++ form_file.c 6 Jul 2004 03:38:12 -0000 1.2 @@ -85,7 +85,8 @@ xmlTextWriterStartElement( writer, "widget" ); xmlTextWriterWriteAttribute( writer, "type", widget_get_type( w ) ); - ecore_list_for_each( info, __write_element ); + if( info ) + ecore_list_for_each( info, __write_element ); if( widget_is_type( w, "Ewl_Container" ) ) ecore_list_for_each( EWL_CONTAINER(w)->children, write_widget ); =================================================================== RCS file: /cvsroot/enlightenment/misc/ewler/src/inspector.c,v retrieving revision 1.3 retrieving revision 1.4 diff -u -3 -r1.3 -r1.4 --- inspector.c 9 Jun 2004 20:19:11 -0000 1.3 +++ inspector.c 6 Jul 2004 03:38:12 -0000 1.4 @@ -191,7 +191,6 @@ row = ewl_tree_add_row( EWL_TREE(inspector_tree), EWL_ROW(prow), row_elems ); ewl_callback_del_type( row->parent, EWL_CALLBACK_CLICKED ); - ewl_tree_set_row_expand( EWL_ROW(row), EWL_TREE_NODE_EXPANDED ); ewl_widget_show( row ); switch( data->type->w.w_type ) { =================================================================== RCS file: /cvsroot/enlightenment/misc/ewler/src/selected.c,v retrieving revision 1.7 retrieving revision 1.8 diff -u -3 -r1.7 -r1.8 --- selected.c 5 Jul 2004 02:40:46 -0000 1.7 +++ selected.c 6 Jul 2004 03:38:12 -0000 1.8 @@ -11,6 +11,8 @@ #define SELECTED_MIN_WIDTH 15 #define SELECTED_MIN_HEIGHT 15 +static int part_selected; + /** * @param w: the child widget to be selected * @return Returns NULL on failure, or a newly allocated selected on success. @@ -64,20 +66,12 @@ ewl_theme_data_set_str(sw, "/selected/file", PACKAGE_DATA_DIR"/themes/ewler.eet"); ewl_theme_data_set_str(sw, "/selected/group", "selected"); -#if 0 - ewl_object_set_insets(EWL_OBJECT(s), 4, 4, 4, 4); - ewl_container_append_child(parent, sw); - ewl_object_request_geometry(EWL_OBJECT(s), - CURRENT_X(w) - 8, CURRENT_Y(w) - 8, - CURRENT_W(w) + 8, CURRENT_H(w) + 8); -#endif ewl_container_insert_child(parent, sw, s->index); ewl_object_request_geometry(EWL_OBJECT(s), CURRENT_X(w), CURRENT_Y(w), CURRENT_W(w), CURRENT_H(w)); ewl_object_set_fill_policy(EWL_OBJECT(s), EWL_FLAG_FILL_NONE); - ewl_widget_set_layer(sw, 10000); ewl_callback_append(sw, EWL_CALLBACK_CONFIGURE, ewler_selected_configure_cb, NULL); @@ -133,19 +127,11 @@ /* the width comes in from the selected, the position is set by the parent */ ewl_object_get_preferred_size(EWL_OBJECT(s->selected), &width, &height); -#if 0 - x = CURRENT_X(s) + 4; - y = CURRENT_Y(s) + 4; -#endif x = CURRENT_X(s); y = CURRENT_Y(s); if( x != CURRENT_X(s->selected) || y != CURRENT_Y(s->selected) ) ewl_object_request_position(EWL_OBJECT(s->selected), x, y); -#if 0 - if( width != (CURRENT_W(s)-8) || height != (CURRENT_H(s)-8) ) - ewl_object_set_preferred_size(EWL_OBJECT(s), width + 8, height + 8); -#endif if( width != CURRENT_W(s) || height != CURRENT_H(s) ) ewl_object_set_preferred_size(EWL_OBJECT(s), width, height); @@ -162,6 +148,7 @@ s = EWLER_SELECTED(w); + evas_object_layer_set(w->theme_object, 10000); ewl_container_append_child(EWL_CONTAINER(s), s->selected); if( ewl_widget_get_data( s->selected, "unsizable" ) ) @@ -227,17 +214,10 @@ DENTER_FUNCTION(DLEVEL_STABLE); -#if 0 - s = EWLER_SELECTED(w->parent); -#endif s = EWLER_SELECTED(user_data); ewl_object_get_preferred_size(EWL_OBJECT(s->selected), &width, &height); -#if 0 - ewl_object_request_size(EWL_OBJECT(s), width + 8, height + 8); - ewl_object_set_preferred_size(EWL_OBJECT(s), width + 8, height + 8); -#endif ewl_object_request_size(EWL_OBJECT(s), width, height); ewl_object_set_preferred_size(EWL_OBJECT(s), width, height); @@ -256,10 +236,6 @@ ewl_object_get_current_geometry(EWL_OBJECT(s), &x, &y, &width, &height); ewl_container_insert_child(EWL_CONTAINER(w->parent), s->selected, s->index); -#if 0 - ewl_object_request_geometry(EWL_OBJECT(s->selected), - x + 8, y + 8, width - 8, height - 8); -#endif ewl_object_request_geometry(EWL_OBJECT(s->selected), x, y, width, height); @@ -285,6 +261,8 @@ s->corners.u = CURRENT_X(sw) + CURRENT_W(sw); s->corners.v = CURRENT_Y(sw) + CURRENT_H(sw); + part_selected = 1; + form_clear_widget_dragging(); } @@ -358,20 +336,25 @@ form_set_widget_dragging( s->selected, ev ); embed = ewl_embed_find_by_widget(w); + part_selected = 0; + evas_event_feed_mouse_down(embed->evas, ev->button); -#if 0 - ewl_container_nointercept_callback(EWL_CONTAINER(s), + + if( !part_selected ) { + ewl_container_nointercept_callback(EWL_CONTAINER(s), + EWL_CALLBACK_MOUSE_DOWN); + form_clear_widget_selected(); + + second_time = 1; + ewl_embed_feed_mouse_down(embed, ev->button, ev->clicks, + ev->x, ev->y, ev->modifiers); + second_time = 0; + + ewl_container_intercept_callback(EWL_CONTAINER(s), EWL_CALLBACK_MOUSE_DOWN); - form_set_widget_selected(); - second_time = 1; - ewl_embed_feed_mouse_down(embed, ev->button, ev->clicks, - ev->x, ev->y, ev->modifiers); - second_time = 0; - - ewl_container_intercept_callback(EWL_CONTAINER(s), - EWL_CALLBACK_MOUSE_DOWN); -#endif + form_set_widget_selected(); + } } void ------------------------------------------------------- This SF.Net email sponsored by Black Hat Briefings & Training. Attend Black Hat Briefings & Training, Las Vegas July 24-29 - digital self defense, top technical experts, no vendor pitches, unmatched networking opportunities. Visit www.blackhat.com _______________________________________________ enlightenment-cvs mailing list [EMAIL PROTECTED] https://lists.sourceforge.net/lists/listinfo/enlightenment-cvs