E CVS: libs/ewl dj2
Enlightenment CVS committal Author : dj2 Project : e17 Module : libs/ewl Dir : e17/libs/ewl/src/lib Modified Files: ewl_text.c Log Message: - cleanup === RCS file: /cvs/e/e17/libs/ewl/src/lib/ewl_text.c,v retrieving revision 1.122 retrieving revision 1.123 diff -u -3 -r1.122 -r1.123 --- ewl_text.c 9 Sep 2006 04:59:42 - 1.122 +++ ewl_text.c 9 Sep 2006 06:09:20 - 1.123 @@ -42,6 +42,7 @@ static void ewl_text_tree_shrink(Ewl_Text_Tree *tree); static char *ewl_text_format_get(Ewl_Text_Context *ctx); +static char *ewl_text_color_string_get(int r, int g, int b, int a); static Evas_Textblock_Cursor *ewl_text_textblock_cursor_position(Ewl_Text *t, unsigned int char_idx); static unsigned int ewl_text_textblock_cursor_to_index(Evas_Textblock_Cursor *cursor); @@ -2469,55 +2470,68 @@ static char * ewl_text_format_get(Ewl_Text_Context *ctx) { - char *fmt; - char *ptr; - char style[512]; - char align[128]; - char wrap[128]; + char *format, *t; + int pos = 0, i; + struct + { + char *key; + char *val; + int free; + } fmt[128]; DENTER_FUNCTION(DLEVEL_STABLE); DCHECK_PARAM_PTR_RET("ctx", ctx, NULL); - fmt = NEW(char, 2048); - - style[0] = '\0'; - align[0] = '\0'; - /* create the style string */ - ptr = style; if (ctx->styles != EWL_TEXT_STYLE_NONE) { if ((ctx->styles & EWL_TEXT_STYLE_UNDERLINE) || (ctx->styles & EWL_TEXT_STYLE_DOUBLE_UNDERLINE)) { - snprintf(ptr, sizeof(style) - strlen(style), - "underline=%s underline_color=#%02x%02x%02x%02x " - "underline2_color=#%02x%02x%02x%02x ", - ((ctx->styles & EWL_TEXT_STYLE_UNDERLINE) ? -"on" : "double"), + t = ((ctx->styles & EWL_TEXT_STYLE_UNDERLINE) ? "single" : "double"); + + fmt[pos].key = "underline_color"; + fmt[pos].val = ewl_text_color_string_get( ctx->style_colors.underline.r, ctx->style_colors.underline.g, ctx->style_colors.underline.b, - ctx->style_colors.underline.a, - ctx->style_colors.double_underline.r, - ctx->style_colors.double_underline.g, - ctx->style_colors.double_underline.b, - ctx->style_colors.double_underline.a); + ctx->style_colors.underline.a); + fmt[pos++].free = TRUE; + + if (ctx->styles & EWL_TEXT_STYLE_DOUBLE_UNDERLINE) + { + fmt[pos].key = "underline2_color"; + fmt[pos].val = ewl_text_color_string_get( + ctx->style_colors.double_underline.r, + ctx->style_colors.double_underline.g, + ctx->style_colors.double_underline.b, + ctx->style_colors.double_underline.a); + fmt[pos++].free = TRUE; + } } - else - snprintf(ptr, sizeof(style) - strlen(style), "underline=off "); - ptr = style + strlen(style); + else t = "off"; + + fmt[pos].key = "underline"; + fmt[pos].val = t; + fmt[pos++].free = FALSE; if (ctx->styles & EWL_TEXT_STYLE_STRIKETHROUGH) - snprintf(ptr, sizeof(style) - strlen(style), - "strikethrough=on strikethrough_color=#%02x%02x%02x%02x ", + { + t = "on"; + + fmt[pos].key = "strikethrough_color"; + fmt[pos].val = ewl_text_color_string_get( ctx->style_colors.strikethrough.r, ctx->style_colors.strikethrough.g, ctx->style_colors.strikethrough.b, ctx->style_colors.strikethrough.a); - else - snprintf(ptr, sizeof(style) - strlen(style), "strkethrough=off "); - ptr = style + strlen(style); + fmt[pos++].fr
E CVS: libs/ewl ningerso
Enlightenment CVS committal Author : ningerso Project : e17 Module : libs/ewl Dir : e17/libs/ewl/src/lib Modified Files: ewl_embed.c Log Message: Find the deepest nested DND aware widget at a coordinate. === RCS file: /cvs/e/e17/libs/ewl/src/lib/ewl_embed.c,v retrieving revision 1.80 retrieving revision 1.81 diff -u -3 -r1.80 -r1.81 --- ewl_embed.c 9 Sep 2006 04:07:51 - 1.80 +++ ewl_embed.c 9 Sep 2006 05:04:42 - 1.81 @@ -707,6 +707,17 @@ ewl_embed_active_set(embed, TRUE); widget = ewl_container_child_at_recursive_get(EWL_CONTAINER(embed), x, y); + /* +* Find the lowest DND aware widget +*/ + while (widget) { + if (ewl_object_flags_has(EWL_OBJECT(widget), + EWL_FLAG_PROPERTY_DND_AWARE, + EWL_FLAGS_PROPERTY_MASK)) + break; + widget = widget->parent; + } + if (widget) { int i; Ewl_Widget *parent; @@ -744,7 +755,6 @@ ev.data = NULL; } - embed->last.drag_widget = widget; parent = widget; while (parent) { @@ -788,6 +798,17 @@ ewl_embed_active_set(embed, TRUE); widget = ewl_container_child_at_recursive_get(EWL_CONTAINER(embed), x, y); + /* +* Find the lowest DND aware widget +*/ + while (widget) { + if (ewl_object_flags_has(EWL_OBJECT(widget), + EWL_FLAG_PROPERTY_DND_AWARE, + EWL_FLAGS_PROPERTY_MASK)) + break; + widget = widget->parent; + } + if (widget) { int i; Ewl_Widget *parent; @@ -813,7 +834,7 @@ parent = parent->parent; } } - + /* * Pass the position event up the chain */ - Using Tomcat but need to do more? Need to support web services, security? Get stuff done quickly with pre-integrated technology to make your job easier Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642 ___ enlightenment-cvs mailing list enlightenment-cvs@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-cvs
E CVS: libs/ewl dj2
Enlightenment CVS committal Author : dj2 Project : e17 Module : libs/ewl Dir : e17/libs/ewl/src/lib Modified Files: ewl_text.c Log Message: - fix line up and line down === RCS file: /cvs/e/e17/libs/ewl/src/lib/ewl_text.c,v retrieving revision 1.121 retrieving revision 1.122 diff -u -3 -r1.121 -r1.122 --- ewl_text.c 9 Sep 2006 04:52:03 - 1.121 +++ ewl_text.c 9 Sep 2006 04:59:42 - 1.122 @@ -761,7 +761,7 @@ ewl_text_cursor_position_line_up_get(Ewl_Text *t) { Evas_Textblock_Cursor *cursor; - unsigned int cur_char_idx; + unsigned int cur_char_idx, byte_idx = 0; Evas_Coord cx, cw; Evas_Coord lx, ly, lw, lh; int line; @@ -771,7 +771,9 @@ DCHECK_TYPE_RET("t", t, EWL_TEXT_TYPE, t->cursor_position); cur_char_idx = ewl_text_cursor_position_get(t); - cursor = ewl_text_textblock_cursor_position(t, cur_char_idx); + ewl_text_char_to_byte(t, cur_char_idx, 0, &byte_idx, NULL); + + cursor = ewl_text_textblock_cursor_position(t, byte_idx); line = evas_textblock_cursor_char_geometry_get(cursor, &cx, NULL, &cw, NULL); line --; @@ -791,7 +793,9 @@ } } - cur_char_idx = ewl_text_textblock_cursor_to_index(cursor); + byte_idx = ewl_text_textblock_cursor_to_index(cursor); + cur_char_idx = 0; + ewl_text_byte_to_char(t, byte_idx, 0, &cur_char_idx, NULL); DRETURN_INT(cur_char_idx, DLEVEL_STABLE); } @@ -805,7 +809,7 @@ ewl_text_cursor_position_line_down_get(Ewl_Text *t) { Evas_Textblock_Cursor *cursor; - unsigned int cur_char_idx; + unsigned int cur_char_idx, byte_idx = 0; Evas_Coord cx, cw; Evas_Coord lx, ly, lw, lh; int line; @@ -815,7 +819,9 @@ DCHECK_TYPE_RET("t", t, EWL_TEXT_TYPE, t->cursor_position); cur_char_idx = ewl_text_cursor_position_get(t); - cursor = ewl_text_textblock_cursor_position(t, cur_char_idx); + ewl_text_char_to_byte(t, cur_char_idx, 0, &byte_idx, NULL); + + cursor = ewl_text_textblock_cursor_position(t, byte_idx); line = evas_textblock_cursor_char_geometry_get(cursor, &cx, NULL, &cw, NULL); line ++; @@ -835,7 +841,9 @@ } } - cur_char_idx = ewl_text_textblock_cursor_to_index(cursor); + byte_idx = ewl_text_textblock_cursor_to_index(cursor); + cur_char_idx = 0; + ewl_text_byte_to_char(t, byte_idx, 0, &cur_char_idx, NULL); DRETURN_INT(cur_char_idx, DLEVEL_STABLE); } - Using Tomcat but need to do more? Need to support web services, security? Get stuff done quickly with pre-integrated technology to make your job easier Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642 ___ enlightenment-cvs mailing list enlightenment-cvs@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-cvs
E CVS: libs/ewl dj2
Enlightenment CVS committal Author : dj2 Project : e17 Module : libs/ewl Dir : e17/libs/ewl/src/lib Modified Files: ewl_text.c Log Message: - selections work with utf8 chars now === RCS file: /cvs/e/e17/libs/ewl/src/lib/ewl_text.c,v retrieving revision 1.120 retrieving revision 1.121 diff -u -3 -r1.120 -r1.121 --- ewl_text.c 9 Sep 2006 04:45:48 - 1.120 +++ ewl_text.c 9 Sep 2006 04:52:03 - 1.121 @@ -3493,6 +3493,7 @@ { Evas_Textblock_Cursor *cur1, *cur2; Evas_List *rects; + unsigned int byte_idx = 0, byte_len = 0; DENTER_FUNCTION(DLEVEL_STABLE); DCHECK_PARAM_PTR("t", t); @@ -3514,8 +3515,11 @@ else trig->areas = ecore_list_new(); - cur1 = ewl_text_textblock_cursor_position(t, trig->char_pos); - cur2 = ewl_text_textblock_cursor_position(t, trig->char_pos + trig->char_len - 1); + ewl_text_char_to_byte(t, trig->char_pos, trig->char_len - 1, + &byte_idx, &byte_len); + + cur1 = ewl_text_textblock_cursor_position(t, byte_idx); + cur2 = ewl_text_textblock_cursor_position(t, byte_idx + byte_len); /* get all the rectangles and create areas with them */ rects = evas_textblock_cursor_range_geometry_get(cur1, cur2); - Using Tomcat but need to do more? Need to support web services, security? Get stuff done quickly with pre-integrated technology to make your job easier Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642 ___ enlightenment-cvs mailing list enlightenment-cvs@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-cvs
E CVS: libs/ewl dj2
Enlightenment CVS committal Author : dj2 Project : e17 Module : libs/ewl Dir : e17/libs/ewl/src/lib Modified Files: ewl_text.c ewl_text.h Log Message: - mouse clicking and typing into utf8 chars works correctly. - selections are still broken. === RCS file: /cvs/e/e17/libs/ewl/src/lib/ewl_text.c,v retrieving revision 1.119 retrieving revision 1.120 diff -u -3 -r1.119 -r1.120 --- ewl_text.c 9 Sep 2006 00:15:21 - 1.119 +++ ewl_text.c 9 Sep 2006 04:45:48 - 1.120 @@ -63,6 +63,10 @@ unsigned int char_len, unsigned int *byte_idx, unsigned int *byte_len); +static void ewl_text_byte_to_char(Ewl_Text *t, unsigned int byte_idx, + unsigned int byte_len, + unsigned int *char_idx, + unsigned int *char_len); static unsigned int ewl_text_char_length_get(const char *text); static char *ewl_text_text_next_char(const char *text, unsigned int *idx); @@ -217,6 +221,7 @@ Evas_Coord tx = 0, ty = 0, tw = 0, th = 0; Evas_Textblock_Cursor *cursor; int shifting = 0; + unsigned int byte_idx; DENTER_FUNCTION(DLEVEL_STABLE); DCHECK_PARAM_PTR("t", t); @@ -242,7 +247,8 @@ shifting = 1; } - cursor = ewl_text_textblock_cursor_position(t, char_idx); + ewl_text_char_to_byte(t, char_idx, 0, &byte_idx, NULL); + cursor = ewl_text_textblock_cursor_position(t, byte_idx); evas_textblock_cursor_char_geometry_get(cursor, &tx, &ty, &tw, &th); evas_textblock_cursor_free(cursor); @@ -269,7 +275,7 @@ ewl_text_coord_index_map(Ewl_Text *t, int x, int y) { Evas_Textblock_Cursor *cursor; - unsigned int char_idx = 0; + unsigned int byte_idx = 0, char_idx = 0, ctmp = 0; Evas_Coord tx, ty, cx = 0, cy, cw, ch; DENTER_FUNCTION(DLEVEL_STABLE); @@ -330,9 +336,12 @@ char_idx ++; } - char_idx += ewl_text_textblock_cursor_to_index(cursor); + byte_idx = ewl_text_textblock_cursor_to_index(cursor); + ewl_text_byte_to_char(t, byte_idx, 0, &ctmp, NULL); evas_textblock_cursor_free(cursor); + char_idx += ctmp; + DRETURN_INT(char_idx, DLEVEL_STABLE); } @@ -2166,7 +2175,7 @@ * char_pos + char_len */ static void ewl_text_char_to_byte(Ewl_Text *t, unsigned int char_idx, unsigned int char_len, - unsigned int *byte_idx, unsigned int *byte_len) + unsigned int *byte_idx, unsigned int *byte_len) { unsigned int char_count = 0, bidx = 0; Ewl_Text_Tree *child, *parent; @@ -2234,6 +2243,78 @@ DLEAVE_FUNCTION(DLEVEL_STABLE); } +/* This will determine the number of chars to get to byte_idx in the text + * and, if needed will get the number of chars between byte_idx and + * byte_idx + byte_len */ +static void +ewl_text_byte_to_char(Ewl_Text *t, unsigned int byte_idx, unsigned int byte_len, + unsigned int *char_idx, unsigned int *char_len) +{ + unsigned int byte_count = 0, cidx = 0; + Ewl_Text_Tree *child, *parent; + + DENTER_FUNCTION(DLEVEL_STABLE); + DCHECK_PARAM_PTR("t", t); + DCHECK_TYPE("t", t, EWL_TEXT_TYPE); + + child = ewl_text_tree_node_in_bytes_get(t->formatting.tree, + byte_idx, TRUE); /* XXX TRUE or FALSE? */ + parent = child->parent; + while (parent) + { + Ewl_Text_Tree *sibling; + + /* count up the siblings before us */ + ecore_list_goto_first(parent->children); + while ((sibling = ecore_list_next(parent->children)) != child) + { + cidx += sibling->length.chars; + byte_count += sibling->length.bytes; + } + + child = parent; + parent = child->parent; + } + + /* we still need to count within this node */ + while (byte_count < byte_idx) + { + unsigned int bytes; + + ewl_text_text_next_char(t->text + byte_count, &bytes); + byte_count += bytes; + cidx ++; + } + + if (char_len) + { + if (byte_len == 0) + *char_len = 0; + + else + { + char *txt; + + txt = t->text + byte_idx; + byte_count = 0; + while (byte_count < byte_len) + { + unsigned int bytes; + + txt = ewl_t
E CVS: proto titan
Enlightenment CVS committal Author : titan Project : e17 Module : proto Dir : e17/proto/ephoto/src Modified Files: ephoto_slideshow.c Log Message: Slideshow work. === RCS file: /cvs/e/e17/proto/ephoto/src/ephoto_slideshow.c,v retrieving revision 1.6 retrieving revision 1.7 diff -u -3 -r1.6 -r1.7 --- ephoto_slideshow.c 8 Sep 2006 21:48:02 - 1.6 +++ ephoto_slideshow.c 9 Sep 2006 04:29:22 - 1.7 @@ -70,6 +70,7 @@ Ewl_Widget *image; char *image_path; Slide_Config *sc; + int ew, eh; sc = parse_slideshow_config(); image_path = ecore_dlist_goto_first(current_thumbs); @@ -83,8 +84,10 @@ ewl_window_fullscreen_set(EWL_WINDOW(window), 1); if (sc->custom_size) ewl_object_maximum_size_set(EWL_OBJECT(window), sc->w_size, sc->h_size); + ewl_object_minimum_size_set(EWL_OBJECT(window), sc->w_size, sc->h_size); ewl_callback_append(window, EWL_CALLBACK_DELETE_WINDOW, destroy_slideshow, NULL); ewl_callback_append(window, EWL_CALLBACK_CLICKED, destroy_slideshow, NULL); + ewl_window_dialog_set(EWL_WINDOW(window), 1); ewl_widget_show(window); cell = ewl_cell_new(); @@ -92,6 +95,8 @@ ewl_container_child_append(EWL_CONTAINER(window), cell); ewl_widget_show(cell); + ewl_object_current_size_get(EWL_OBJECT(window), &ew, &eh); + image = ewl_image_new(); ewl_image_file_set(EWL_IMAGE(image), image_path, NULL); if (sc->zoom) @@ -100,10 +105,12 @@ ewl_object_fill_policy_set(EWL_OBJECT(image), EWL_FLAG_FILL_SHRINK); if (sc->keep_aspect) ewl_image_proportional_set(EWL_IMAGE(image), TRUE); + ewl_image_size_set(EWL_IMAGE(image), ew, eh); + ewl_object_alignment_set(EWL_OBJECT(image), EWL_FLAG_ALIGN_CENTER); ewl_container_child_append(EWL_CONTAINER(cell), image); ewl_widget_show(image); - timer = ecore_timer_add(sc->length, change_picture, image); + timer = ecore_timer_add(4, change_picture, image); } Slide_Config *parse_slideshow_config() - Using Tomcat but need to do more? Need to support web services, security? Get stuff done quickly with pre-integrated technology to make your job easier Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642 ___ enlightenment-cvs mailing list enlightenment-cvs@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-cvs
E CVS: libs/ewl ningerso
Enlightenment CVS committal Author : ningerso Project : e17 Module : libs/ewl Dir : e17/libs/ewl/src/lib Modified Files: ewl_embed.c ewl_embed.h Log Message: Send correct status messages on DND position events, and ignore events on windows that EWL doesn't know about. === RCS file: /cvs/e/e17/libs/ewl/src/lib/ewl_embed.c,v retrieving revision 1.79 retrieving revision 1.80 diff -u -3 -r1.79 -r1.80 --- ewl_embed.c 8 Sep 2006 07:12:43 - 1.79 +++ ewl_embed.c 9 Sep 2006 04:07:51 - 1.80 @@ -771,15 +771,16 @@ * @return Returns no value. * @brief Sends the event for a DND position into an embed. */ -void +const char * ewl_embed_dnd_position_feed(Ewl_Embed *embed, int x, int y, int* px, int* py, int* pw, int* ph) { + const char *result = NULL; Ewl_Widget *widget = NULL; Ewl_Event_Dnd_Position ev; DENTER_FUNCTION(DLEVEL_STABLE); - DCHECK_PARAM_PTR("embed", embed); - DCHECK_TYPE("embed", embed, EWL_EMBED_TYPE); + DCHECK_PARAM_PTR_RET("embed", embed, NULL); + DCHECK_TYPE_RET("embed", embed, EWL_EMBED_TYPE, NULL); ev.x = x; ev.y = y; @@ -788,11 +789,13 @@ widget = ewl_container_child_at_recursive_get(EWL_CONTAINER(embed), x, y); if (widget) { + int i; Ewl_Widget *parent; /* If the last position event was over a different widget, * feed the leaving widget a 'null' */ if (embed->dnd_last_position != widget) { + if (embed->dnd_last_position) { parent = embed->dnd_last_position; @@ -826,6 +829,14 @@ ewl_dnd_position_windows_set(EWL_WIDGET(embed)); embed->dnd_last_position = widget; + /* Request a DND data request */ + for (i = 0; i < embed->dnd_types.num_types; i++) { + if (ewl_dnd_accepted_types_contains(widget, embed->dnd_types.types[i])) { + result = embed->dnd_types.types[i]; + break; + } + } + *px = CURRENT_X(widget); *py = CURRENT_Y(widget); *pw = CURRENT_W(widget); @@ -834,7 +845,7 @@ DWARNING("Could not find widget for dnd position event"); } - DLEAVE_FUNCTION(DLEVEL_STABLE); + DRETURN_PTR(result, DLEVEL_STABLE); } /** === RCS file: /cvs/e/e17/libs/ewl/src/lib/ewl_embed.h,v retrieving revision 1.25 retrieving revision 1.26 diff -u -3 -r1.25 -r1.26 --- ewl_embed.h 8 Sep 2006 07:12:43 - 1.25 +++ ewl_embed.h 9 Sep 2006 04:07:51 - 1.26 @@ -104,7 +104,7 @@ voidewl_embed_mouse_move_feed(Ewl_Embed *embed, int x, int y, unsigned int modifiers); -void ewl_embed_dnd_position_feed(Ewl_Embed *embed, int x, int y,int*,int*,int*,int*); +const char *embed_dnd_position_feed(Ewl_Embed *embed, int x, int y,int*,int*,int*,int*); const char *ewl_embed_dnd_drop_feed(Ewl_Embed* embed, int x, int y, int internal); void ewl_embed_dnd_data_feed(Ewl_Embed* embed, void *data, unsigned int len); voidewl_embed_selection_data_feed(Ewl_Embed *embed, char *type, void *data, unsigned int len); - Using Tomcat but need to do more? Need to support web services, security? Get stuff done quickly with pre-integrated technology to make your job easier Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642 ___ enlightenment-cvs mailing list enlightenment-cvs@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-cvs
E CVS: libs/ewl ningerso
Enlightenment CVS committal Author : ningerso Project : e17 Module : libs/ewl Dir : e17/libs/ewl/src/engines/x11 Modified Files: ewl_engine_x11.c Log Message: Send correct status messages on DND position events, and ignore events on windows that EWL doesn't know about. === RCS file: /cvs/e/e17/libs/ewl/src/engines/x11/ewl_engine_x11.c,v retrieving revision 1.13 retrieving revision 1.14 diff -u -3 -r1.13 -r1.14 --- ewl_engine_x11.c8 Sep 2006 07:12:43 - 1.13 +++ ewl_engine_x11.c9 Sep 2006 04:07:51 - 1.14 @@ -1081,6 +1081,7 @@ int x, y, wx, wy; int px, py, pw, ph; Ecore_X_Rectangle rect; + int will_accept = 0; DENTER_FUNCTION(DLEVEL_STABLE); DCHECK_PARAM_PTR_RET("e", e, FALSE); @@ -1102,25 +1103,25 @@ if (embed) { /* First see if we need to send an 'enter' * to the widget */ - ewl_embed_dnd_position_feed(embed, x, y, &px, - &py, &pw, &ph); + if (ewl_embed_dnd_position_feed(embed, x, y, &px, + &py, &pw, &ph)) + will_accept = 1; + + if (embed->last.drop_widget) { + rect.x = px; + rect.y = py; + rect.width = pw; + rect.height = ph; + } else { + rect.x = 0; + rect.y = 0; + rect.width = 0; + rect.height = 0; + } - /*rect.x = px; - rect.y = py; - rect.width = pw; - rect.height = ph;*/ - - rect.x = 0; - rect.y = 0; - rect.width = 0; - rect.height = 0; - } else { - rect.x = 0; - rect.y = 0; - rect.width = 0; - rect.height = 0; + /* Don't send status for windows we don't own */ + ecore_x_dnd_send_status(will_accept, 0, rect, ECORE_X_DND_ACTION_PRIVATE); } - ecore_x_dnd_send_status(1, 0, rect, ECORE_X_DND_ACTION_PRIVATE); } DRETURN_INT(TRUE, DLEVEL_STABLE); - Using Tomcat but need to do more? Need to support web services, security? Get stuff done quickly with pre-integrated technology to make your job easier Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642 ___ enlightenment-cvs mailing list enlightenment-cvs@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-cvs
E CVS: proto titan
Enlightenment CVS committal Author : titan Project : e17 Module : proto Dir : e17/proto/ephoto Modified Files: AUTHORS ChangeLog NEWS README TODO Log Message: Mainly Autofoo stuff === RCS file: /cvs/e/e17/proto/ephoto/AUTHORS,v retrieving revision 1.1 retrieving revision 1.2 diff -u -3 -r1.1 -r1.2 --- AUTHORS 20 Feb 2006 19:41:30 - 1.1 +++ AUTHORS 9 Sep 2006 03:57:00 - 1.2 @@ -1,4 +1,4 @@ -Stephen "titansoccer15, LinuxTitan" Houston <[EMAIL PROTECTED]> +Stephen "LinuxTitan" Houston <[EMAIL PROTECTED]> Special thanks to these guys for their support: RbdPngn === RCS file: /cvs/e/e17/proto/ephoto/ChangeLog,v retrieving revision 1.2 retrieving revision 1.3 diff -u -3 -r1.2 -r1.3 --- ChangeLog 5 Apr 2006 17:37:47 - 1.2 +++ ChangeLog 9 Sep 2006 03:57:00 - 1.3 @@ -1,2 +1,2 @@ -Everything should work except for the fit to audio, which is shaky. +Initial Rewrite. See TODO for future options. === RCS file: /cvs/e/e17/proto/ephoto/NEWS,v retrieving revision 1.1 retrieving revision 1.2 diff -u -3 -r1.1 -r1.2 --- NEWS20 Feb 2006 19:41:30 - 1.1 +++ NEWS9 Sep 2006 03:57:00 - 1.2 @@ -1 +1 @@ -First Release! +Initial Rewrite! === RCS file: /cvs/e/e17/proto/ephoto/README,v retrieving revision 1.1 retrieving revision 1.2 diff -u -3 -r1.1 -r1.2 --- README 20 Feb 2006 19:41:30 - 1.1 +++ README 9 Sep 2006 03:57:00 - 1.2 @@ -1,5 +1 @@ -Ephoto. -This is a professional slideshow creator. -Audio only works for slideshow, not presentation. -When in FullScreen mode, click image to exit. - +Ephoto Image Viewer/Manipulator/Slideshow creator. === RCS file: /cvs/e/e17/proto/ephoto/TODO,v retrieving revision 1.7 retrieving revision 1.8 diff -u -3 -r1.7 -r1.8 --- TODO24 May 2006 18:49:23 - 1.7 +++ TODO9 Sep 2006 03:57:00 - 1.8 @@ -1,8 +1,9 @@ TODO- -Add support for recording slideshow into a movie file. -Add fade out/ins and possibly other features for transitioning images. -Maybe add ken burns effect? -Make the image viewer better. -Detatchable window controls? -Better audio code. -Better way to browse audio(combobox possibly). +Add image manipulation. +Fixup better slideshow config dialog. +Slideshow Fixup(proportional/scaling/integration with conifg) +Add audio. +Add transitions(fade). +Add sql databasing. +Add custom edje widgets for thumb browser and possibly for images to create ken burns effect? +Album work. - Using Tomcat but need to do more? Need to support web services, security? Get stuff done quickly with pre-integrated technology to make your job easier Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642 ___ enlightenment-cvs mailing list enlightenment-cvs@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-cvs
E CVS: proto lok
Enlightenment CVS committal Author : lok Project : e17 Module : proto Dir : e17/proto/enhance/src/lib Modified Files: enhance_widget.c Log Message: Little clean-up of the previous code. === RCS file: /cvs/e/e17/proto/enhance/src/lib/enhance_widget.c,v retrieving revision 1.23 retrieving revision 1.24 diff -u -3 -r1.23 -r1.24 --- enhance_widget.c8 Sep 2006 23:06:35 - 1.23 +++ enhance_widget.c8 Sep 2006 23:22:26 - 1.24 @@ -1061,14 +1061,12 @@ if(child->packing->x_options) { /* Glade 2 compatibility */ - if(child->packing->x_options -&& strstr(child->packing->x_options, "fill")) + if(strstr(child->packing->x_options, "fill")) { fill_policy = ETK_TABLE_HFILL; flags_set = 1; } - else if(child->packing->x_options - && strstr(child->packing->x_options, "expand")) + else if(strstr(child->packing->x_options, "expand")) { if(flags_set) fill_policy |= ETK_TABLE_HEXPAND; @@ -1076,57 +1074,54 @@ fill_policy = ETK_TABLE_HEXPAND; flags_set = 1; } - else if(child->packing->y_options - && strstr(child->packing->y_options, "fill")) + /* Glade 3 compatibility */ + else if(strstr(child->packing->x_options, "GTK_EXPAND")) { - if(flags_set) -fill_policy |= ETK_TABLE_VFILL; - else -fill_policy = ETK_TABLE_VFILL; + fill_policy = (fill_policy ^ ETK_TABLE_HFILL) & fill_policy; flags_set = 1; } - else if(child->packing->y_options - && strstr(child->packing->y_options, "expand")) + else if(strstr(child->packing->x_options, "GTK_FILL")) { - if(flags_set) -fill_policy |= ETK_TABLE_VEXPAND; - else -fill_policy = ETK_TABLE_VEXPAND; + fill_policy = (fill_policy ^ ETK_TABLE_HEXPAND) & fill_policy; flags_set = 1; } - /* Glade 3 compatibility */ - else if(child->packing->x_options - && strstr(child->packing->x_options, "GTK_EXPAND")) + else if(strstr(child->packing->x_options, "")) { - fill_policy = (fill_policy ^ ETK_TABLE_HFILL) & fill_policy; + fill_policy = (fill_policy ^ (ETK_TABLE_HEXPAND | ETK_TABLE_HFILL)) & fill_policy; flags_set = 1; } - else if(child->packing->x_options - && strstr(child->packing->x_options, "GTK_FILL")) + } +if(child->packing->y_options) + { + /* Glade 2 compatibility */ + if(strstr(child->packing->y_options, "fill")) { - fill_policy = (fill_policy ^ ETK_TABLE_HEXPAND) & fill_policy; + if(flags_set) +fill_policy |= ETK_TABLE_VFILL; + else +fill_policy = ETK_TABLE_VFILL; flags_set = 1; } - else if(child->packing->x_options - && strstr(child->packing->x_options, "")) + else if(strstr(child->packing->y_options, "expand")) { - fill_policy = (fill_policy ^ (ETK_TABLE_HEXPAND | ETK_TABLE_HFILL)) & fill_policy; + if(flags_set) +fill_policy |= ETK_TABLE_VEXPAND; + else +fill_policy = ETK_TABLE_VEXPAND; flags_set = 1; } - else if(child->packing->y_options - && strstr(child->packing->y_options, "GTK_EXPAND")) + /* Glade 3 compatibility */ + else if(strstr(child->packing->y_options, "GTK_EXPAND")) { fill_policy = (fill_policy ^ ETK_TABLE_VFILL) & fill_policy; flags_set = 1; } - else if(child->packing->y_options - && strstr(child->packing->y_options, "GTK_FILL")) + else if(strstr(child->packing->y_options, "GTK_FILL")) { fill_policy = (fill
E CVS: libs/ewl pfritz
Enlightenment CVS committal Author : pfritz Project : e17 Module : libs/ewl Dir : e17/libs/ewl/src/lib Modified Files: ewl_text.c Log Message: some work on utf8 support === RCS file: /cvs/e/e17/libs/ewl/src/lib/ewl_text.c,v retrieving revision 1.118 retrieving revision 1.119 diff -u -3 -r1.118 -r1.119 --- ewl_text.c 8 Sep 2006 21:49:44 - 1.118 +++ ewl_text.c 9 Sep 2006 00:15:21 - 1.119 @@ -2566,8 +2566,14 @@ /* will this push us past the end? */ if ((cur_char_idx + 1) > char_idx) { + unsigned int byte_idx; + + ewl_text_char_to_byte(t, + char_idx - cur_char_idx, + 0, &byte_idx, + NULL); evas_textblock_cursor_pos_set(cursor, - char_idx - cur_char_idx); + byte_idx); break; } else @@ -2588,8 +2594,11 @@ * current index and set that */ if ((cur_char_idx + pos) > char_idx) { - evas_textblock_cursor_pos_set(cursor, - char_idx - cur_char_idx); + unsigned int byte_idx; + + ewl_text_char_to_byte(t, char_idx - cur_char_idx, + 0, &byte_idx, NULL); + evas_textblock_cursor_pos_set(cursor, byte_idx); break; } cur_char_idx += pos; - Using Tomcat but need to do more? Need to support web services, security? Get stuff done quickly with pre-integrated technology to make your job easier Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642 ___ enlightenment-cvs mailing list enlightenment-cvs@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-cvs
E CVS: e kwo
Enlightenment CVS committal Author : kwo Project : e16 Module : e Dir : e16/e/src Modified Files: desktops.c ecompmgr.c eobj.c eobj.h x.c xwin.h Log Message: Eliminate redundant geometry caching in top-level objects. === RCS file: /cvs/e/e16/e/src/desktops.c,v retrieving revision 1.250 retrieving revision 1.251 diff -u -3 -r1.250 -r1.251 --- desktops.c 2 Sep 2006 14:33:29 - 1.250 +++ desktops.c 8 Sep 2006 23:13:57 - 1.251 @@ -714,11 +714,7 @@ dsk = _DeskGet(desk); - if (dsk->num == 0) - { - EoSync(dsk); - } - else + if (dsk->num != 0) { x = (dsk->viewable) ? EoGetX(dsk) : VRoot.w; EoMoveResize(dsk, x, 0, w, h); === RCS file: /cvs/e/e16/e/src/ecompmgr.c,v retrieving revision 1.125 retrieving revision 1.126 diff -u -3 -r1.125 -r1.126 --- ecompmgr.c 2 Sep 2006 15:23:04 - 1.125 +++ ecompmgr.c 8 Sep 2006 23:13:57 - 1.126 @@ -88,7 +88,6 @@ EObj *prev; /* Paint order */ Pixmap pixmap; int rcx, rcy, rcw, rch; - int bw; int mode; unsigneddamaged:1; unsignedfading:1; @@ -932,7 +931,7 @@ unsigned intbw; /* FIXME - Get this right */ - bw = cw->bw; + bw = EobjGetBW(eo); if (Mode_compmgr.use_pixmap) { cw->rcx = EobjGetX(eo); @@ -1051,7 +1050,6 @@ static XserverRegion win_shape(EObj * eo) { - ECmWinInfo *cw = eo->cmhook; XserverRegion border; int x, y; @@ -1068,8 +1066,8 @@ } /* translate this */ - x = EobjGetX(eo) + cw->bw; - y = EobjGetY(eo) + cw->bw; + x = EobjGetX(eo) + EobjGetBW(eo); + y = EobjGetY(eo) + EobjGetBW(eo); ERegionTranslate(border, x, y); D2printf("shape %#lx: %d %d\n", EobjGetXwin(eo), x, y); @@ -1444,8 +1442,6 @@ eo->cmhook = cw; - cw->bw = WinGetBorderWidth(eo->win); - if (eo->type == EOBJ_TYPE_EXT && Conf_compmgr.override_redirect.mode == ECM_OR_UNREDIRECTED) { @@ -1549,7 +1545,6 @@ static void ECompMgrWinConfigure(EObj * eo, XEvent * ev) { - ECmWinInfo *cw = eo->cmhook; int x, y, w, h, bw; int change_xy, change_wh, change_bw; @@ -1561,13 +1556,9 @@ change_xy = EobjGetX(eo) != x || EobjGetY(eo) != y; change_wh = EobjGetW(eo) != w || EobjGetH(eo) != h; - change_bw = cw->bw != bw; + change_bw = EobjGetBW(eo) != bw; - eo->x = x; - eo->y = y; - eo->w = w; - eo->h = h; - cw->bw = bw; + EWindowSetGeometry(eo->win, x, y, w, h, bw); ECompMgrWinMoveResize(eo, change_xy, change_wh, change_bw); } @@ -1697,7 +1688,8 @@ { parts = ERegionCreate(); XDamageSubtract(dpy, cw->damage, None, parts); - ERegionTranslate(parts, EobjGetX(eo) + cw->bw, EobjGetY(eo) + cw->bw); + ERegionTranslate(parts, EobjGetX(eo) + EobjGetBW(eo), +EobjGetY(eo) + EobjGetBW(eo)); #if 0 /* ENABLE_SHADOWS - FIXME - This is not right, remove? */ if (Mode_compmgr.shadow_mode == ECM_SHADOWS_SHARP) { === RCS file: /cvs/e/e16/e/src/eobj.c,v retrieving revision 1.82 retrieving revision 1.83 diff -u -3 -r1.82 -r1.83 --- eobj.c 13 Aug 2006 09:17:03 - 1.82 +++ eobj.c 8 Sep 2006 23:13:57 - 1.83 @@ -179,10 +179,6 @@ } eo->type = type; eo->win = win; - eo->x = x; - eo->y = y; - eo->w = w; - eo->h = h; eo->shaped = -1; if (type == EOBJ_TYPE_EXT) @@ -250,18 +246,6 @@ Efree(eo); } -void -EobjSync(EObj * eo) -{ - int x, y, w, h; - - EGetGeometry(eo->win, NULL, &x, &y, &w, &h, NULL, NULL); - eo->x = x; - eo->y = y; - eo->w = w; - eo->h = h; -} - EObj * EobjWindowCreate(int type, int x, int y, int w, int h, int su, const char *name) { @@ -387,10 +371,6 @@ move = x != EobjGetX(eo) || y != EobjGetY(eo); resize = w != EobjGetW(eo) || h != EobjGetH(eo); - eo->x = x; - eo->y = y; - eo->w = w; - eo->h = h; #if USE_COMPOSITE if (eo->type == EOBJ_TYPE_EWIN) { @@ -436,8 +416,6 @@ int move; move = x != EobjGetX(eo) || y != EobjGetY(eo); - eo->x = x; - eo->y = y; EReparentWindow(eo->win, dst->win, x, y); if (dst->type == EOBJ_TYPE_DESK) === RCS file: /cvs/e/e16/e/src/eobj.h,v retrieving revision 1.32 retrieving revision 1.33 diff -u -3 -r1.32 -r1.33 --- eobj.h 28 Aug 2006 22:46:22 - 1.32 +++ eobj.h 8 Sep 2006 23:13:57 - 1.33 @@ -35,8 +35,6 @@ short ilayer; /* Internal stacking layer */ short layer;
E CVS: proto lok
Enlightenment CVS committal Author : lok Project : e17 Module : proto Dir : e17/proto/enhance/src/lib Modified Files: enhance.c enhance_widget.c Log Message: [Etk_Table] Added glade-3 compatibility for x/y_options === RCS file: /cvs/e/e17/proto/enhance/src/lib/enhance.c,v retrieving revision 1.29 retrieving revision 1.30 diff -u -3 -r1.29 -r1.30 --- enhance.c 20 Aug 2006 19:46:28 - 1.29 +++ enhance.c 8 Sep 2006 23:06:35 - 1.30 @@ -948,6 +948,13 @@ else if(!strcmp("shrink", str)) IF_TRUE_FALSE_ASSIGN(node->value, packing->shrink); } +if(str != NULL && !node->value) + { +if (!strcmp("x_options", str)) + packing->x_options = strdup(""); +if (!strcmp("y_options", str)) + packing->x_options = strdup(""); + } } while((tag = exml_next_nomove(xml)) != NULL); === RCS file: /cvs/e/e17/proto/enhance/src/lib/enhance_widget.c,v retrieving revision 1.22 retrieving revision 1.23 diff -u -3 -r1.22 -r1.23 --- enhance_widget.c20 Aug 2006 19:46:28 - 1.22 +++ enhance_widget.c8 Sep 2006 23:06:35 - 1.23 @@ -1060,13 +1060,14 @@ y_padding = child->packing->y_padding; if(child->packing->x_options) { + /* Glade 2 compatibility */ if(child->packing->x_options && strstr(child->packing->x_options, "fill")) { fill_policy = ETK_TABLE_HFILL; flags_set = 1; } - else if(child->packing->y_options + else if(child->packing->x_options && strstr(child->packing->x_options, "expand")) { if(flags_set) @@ -1091,6 +1092,43 @@ fill_policy |= ETK_TABLE_VEXPAND; else fill_policy = ETK_TABLE_VEXPAND; + flags_set = 1; + } + /* Glade 3 compatibility */ + else if(child->packing->x_options + && strstr(child->packing->x_options, "GTK_EXPAND")) + { + fill_policy = (fill_policy ^ ETK_TABLE_HFILL) & fill_policy; + flags_set = 1; + } + else if(child->packing->x_options + && strstr(child->packing->x_options, "GTK_FILL")) + { + fill_policy = (fill_policy ^ ETK_TABLE_HEXPAND) & fill_policy; + flags_set = 1; + } + else if(child->packing->x_options + && strstr(child->packing->x_options, "")) + { + fill_policy = (fill_policy ^ (ETK_TABLE_HEXPAND | ETK_TABLE_HFILL)) & fill_policy; + flags_set = 1; + } + else if(child->packing->y_options + && strstr(child->packing->y_options, "GTK_EXPAND")) + { + fill_policy = (fill_policy ^ ETK_TABLE_VFILL) & fill_policy; + flags_set = 1; + } + else if(child->packing->y_options + && strstr(child->packing->y_options, "GTK_FILL")) + { + fill_policy = (fill_policy ^ ETK_TABLE_VEXPAND) & fill_policy; + flags_set = 1; + } + else if(child->packing->y_options + && strstr(child->packing->y_options, "")) + { + fill_policy = (fill_policy ^ (ETK_TABLE_VEXPAND | ETK_TABLE_VFILL)) & fill_policy; flags_set = 1; } } - Using Tomcat but need to do more? Need to support web services, security? Get stuff done quickly with pre-integrated technology to make your job easier Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642 ___ enlightenment-cvs mailing list enlightenment-cvs@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-cvs
E CVS: libs/ewl pfritz
Enlightenment CVS committal Author : pfritz Project : e17 Module : libs/ewl Dir : e17/libs/ewl/src/lib Modified Files: ewl_text.c Log Message: make it compile again === RCS file: /cvs/e/e17/libs/ewl/src/lib/ewl_text.c,v retrieving revision 1.117 retrieving revision 1.118 diff -u -3 -r1.117 -r1.118 --- ewl_text.c 8 Sep 2006 18:56:40 - 1.117 +++ ewl_text.c 8 Sep 2006 21:49:44 - 1.118 @@ -64,7 +64,7 @@ unsigned int *byte_idx, unsigned int *byte_len); static unsigned int ewl_text_char_length_get(const char *text); -static char *ewl_text_text_next_char(const char *text, unsigned int *idx;); +static char *ewl_text_text_next_char(const char *text, unsigned int *idx); /** @@ -2256,7 +2256,7 @@ /* This is stolen from evas_common_font_utf8_get_next() */ static char * -ewl_text_text_next_char(const char *text, int *idx) +ewl_text_text_next_char(const char *text, unsigned int *idx) { unsigned char d, d2, d3, d4; @@ -2330,7 +2330,7 @@ { Evas_Textblock_Cursor *cursor; char *tmp; - int idx; + unsigned int idx; DENTER_FUNCTION(DLEVEL_STABLE); DCHECK_PARAM_PTR("tb", tb); - Using Tomcat but need to do more? Need to support web services, security? Get stuff done quickly with pre-integrated technology to make your job easier Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642 ___ enlightenment-cvs mailing list enlightenment-cvs@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-cvs
E CVS: proto titan
Enlightenment CVS committal Author : titan Project : e17 Module : proto Dir : e17/proto/ephoto/src Modified Files: ephoto_slideshow.c Log Message: Get some parsing going. === RCS file: /cvs/e/e17/proto/ephoto/src/ephoto_slideshow.c,v retrieving revision 1.5 retrieving revision 1.6 diff -u -3 -r1.5 -r1.6 --- ephoto_slideshow.c 8 Sep 2006 17:41:42 - 1.5 +++ ephoto_slideshow.c 8 Sep 2006 21:48:02 - 1.6 @@ -2,6 +2,7 @@ Ecore_Timer *timer; typedef struct _Slide_Config Slide_Config; +Slide_Config *parse_slideshow_config(void); struct _Slide_Config { @@ -30,7 +31,7 @@ int length; int name_show; int zoom; - int keep_apsect; + int keep_aspect; int random_order; int loop_slide; int w_size; @@ -68,13 +69,20 @@ Ewl_Widget *cell; Ewl_Widget *image; char *image_path; + Slide_Config *sc; + sc = parse_slideshow_config(); image_path = ecore_dlist_goto_first(current_thumbs); if (!image_path) return; window = ewl_window_new(); - ewl_window_fullscreen_set(EWL_WINDOW(window), 1); + ewl_window_title_set(EWL_WINDOW(window), "Ephoto Slideshow"); + ewl_window_name_set(EWL_WINDOW(window), "Ephoto Slideshow"); + if (sc->full_size) + ewl_window_fullscreen_set(EWL_WINDOW(window), 1); + if (sc->custom_size) + ewl_object_maximum_size_set(EWL_OBJECT(window), sc->w_size, sc->h_size); ewl_callback_append(window, EWL_CALLBACK_DELETE_WINDOW, destroy_slideshow, NULL); ewl_callback_append(window, EWL_CALLBACK_CLICKED, destroy_slideshow, NULL); ewl_widget_show(window); @@ -86,13 +94,93 @@ image = ewl_image_new(); ewl_image_file_set(EWL_IMAGE(image), image_path, NULL); - ewl_object_fill_policy_set(EWL_OBJECT(image), EWL_FLAG_FILL_ALL); + if (sc->zoom) + ewl_object_fill_policy_set(EWL_OBJECT(image), EWL_FLAG_FILL_ALL); + else + ewl_object_fill_policy_set(EWL_OBJECT(image), EWL_FLAG_FILL_SHRINK); + if (sc->keep_aspect) + ewl_image_proportional_set(EWL_IMAGE(image), TRUE); ewl_container_child_append(EWL_CONTAINER(cell), image); ewl_widget_show(image); - timer = ecore_timer_add(3, change_picture, image); + timer = ecore_timer_add(sc->length, change_picture, image); } +Slide_Config *parse_slideshow_config() +{ + char path[PATH_MAX]; + FILE *file; + char text[PATH_MAX]; + char *temp; + Slide_Config *sc; + + sc = calloc(1, sizeof(Slide_Config)); + snprintf(path, PATH_MAX, "%s/.ephoto/slideshow_config", getenv("HOME")); + + if (!ecore_file_exists(path)) return; + + file = fopen(path, "r"); + + if (file != NULL) + { + while(fgets(text,PATH_MAX,file)!=NULL) + { + if(!strncmp(text, "Fullscreen", 10)) + { +temp = strrchr(text, '=')+1; +sc->full_size = atoi(temp); + } + if(!strncmp(text, "Custom", 6)) + { +temp = strrchr(text, '=')+1; +sc->custom_size = atoi(temp); + } + if(!strncmp(text, "Width", 5)) + { +temp = strrchr(text, '=')+1; +sc->w_size = atoi(temp); + } + if(!strncmp(text, "Height", 6)) + { +temp = strrchr(text, '=')+1; +sc->h_size = atoi(temp); + } + if(!strncmp(text, "Random", 6)) + { +temp = strrchr(text, '=')+1; +sc->random_order = atoi(temp); + } + if(!strncmp(text, "Loop", 4)) + { +temp = strrchr(text, '=')+1; +sc->loop_slide = atoi(temp); + } + if(!strncmp(text, "Zoom", 4)) + { +temp = strrchr(text, '=')+1; +sc->zoom = atoi(temp); + } + if(!strncmp(text, "Aspect", 6)) + { +temp = strrchr(text, '=')+1; +sc->keep_aspect = atoi(temp); + } + if(!strncmp(text, "Length", 6)) + { +temp = strrchr(text, '=')+1; +sc->length = atoi(temp); + } + if(!strncmp(text, "FileName", 8)) + { +temp = strrchr(text, '=')+1; +sc->name_show = atoi(temp); + } + } + fclose(file); + } + return(sc); +} + void config_cancel(Ewl_Widget *w, void *event, void *data) { Ewl_Widget *win; - Using Tomcat but need to do more? Need to support web services, security? Get stuff done quickly with pre-integrated technology to make your job easier Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642 ___ enlightenment-cvs mailing list enlightenment-cvs@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-cvs
E CVS: libs/ewl ningerso
Enlightenment CVS committal Author : ningerso Project : e17 Module : libs/ewl Dir : e17/libs/ewl/src/lib Modified Files: ewl_entry.c Log Message: Don't accept drops on disabled or non-editable entries. === RCS file: /cvs/e/e17/libs/ewl/src/lib/ewl_entry.c,v retrieving revision 1.66 retrieving revision 1.67 diff -u -3 -r1.66 -r1.67 --- ewl_entry.c 8 Sep 2006 18:56:40 - 1.66 +++ ewl_entry.c 8 Sep 2006 20:45:48 - 1.67 @@ -35,7 +35,7 @@ int ewl_entry_init(Ewl_Entry *e) { - const char *text_types[] = { "UTF8_STRING", "text/plain", NULL }; + const char *text_types[] = { "text/plain", NULL }; Ewl_Widget *w; DENTER_FUNCTION(DLEVEL_STABLE); @@ -542,9 +542,12 @@ event = ev; txt = EWL_TEXT(w); - ewl_widget_focus_send(w); - ewl_text_cursor_position_set(txt, - ewl_text_coord_index_map(txt, event->x, event->y)); + if (EWL_ENTRY(w)->editable && !DISABLED(w)) { + ewl_widget_focus_send(w); + ewl_text_cursor_position_set(txt, + ewl_text_coord_index_map(txt, event->x, + event->y)); + } DLEAVE_FUNCTION(DLEVEL_STABLE); } @@ -570,8 +573,11 @@ event = ev; txt = EWL_TEXT(w); - ewl_text_text_insert(txt, event->data, - ewl_text_cursor_position_get(txt)); + + if (EWL_ENTRY(w)->editable && !DISABLED(w)) { + ewl_text_text_insert(txt, event->data, + ewl_text_cursor_position_get(txt)); + } DLEAVE_FUNCTION(DLEVEL_STABLE); } - Using Tomcat but need to do more? Need to support web services, security? Get stuff done quickly with pre-integrated technology to make your job easier Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642 ___ enlightenment-cvs mailing list enlightenment-cvs@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-cvs
E CVS: debian kaethorn
Enlightenment CVS committal Author : kaethorn Project : e_modules Module : debian Dir : e_modules/debian Modified Files: control copyright emodule0-eveil.install emodule0-flame.install emodule0-language.install emodule0-mail.install emodule0-mem.install emodule0-moon.install emodule0-net.install emodule0-rain.install emodule0-screenshot.install emodule0-slideshow.install emodule0-snow.install emodule0-taskbar.install emodule0-tclock.install emodule0-uptime.install emodule0-weather.install emodule0-wlan.install Added Files: emodule0-mixer.install Log Message: Debian packaging update: * add mixer module * add translations === RCS file: /cvs/e/e_modules/debian/control,v retrieving revision 1.16 retrieving revision 1.17 diff -u -3 -r1.16 -r1.17 --- control 21 Aug 2006 13:18:21 - 1.16 +++ control 8 Sep 2006 20:32:13 - 1.17 @@ -117,6 +117,13 @@ - ignore/Count buffers - ignore/Count cached. +Package: emodule0-mixer +Architecture: any +Depends: ${shlibs:Depends}, enlightenment +Provides: emodule-mixer +Description: An E17 sound mixer module + An E17 module for adjusting the sound mixer settings. + Package: emodule0-moon Architecture: any Depends: ${shlibs:Depends}, enlightenment @@ -244,7 +251,7 @@ Package: emodules0-all Architecture: any -Depends: enlightenment, emodule0-bling, emodule0-calendar, emodule0-cpu, emodule0-deskshow, emodule0-devian, emodule0-emu, emodule0-eveil, emodule0-evolume, emodule0-flame, emodule0-language, emodule0-mail, emodule0-mbar, emodule0-mem, emodule0-moon, emodule0-net, emodule0-photo, emodule0-rain, emodule0-screenshot, emodule0-slideshow, emodule0-snow, emodule0-taskbar, emodule0-tclock, emodule0-uptime, emodule0-weather, emodule0-winselector, emodule0-wlan +Depends: enlightenment, emodule0-bling, emodule0-calendar, emodule0-cpu, emodule0-deskshow, emodule0-devian, emodule0-emu, emodule0-eveil, emodule0-evolume, emodule0-flame, emodule0-language, emodule0-mail, emodule0-mbar, emodule0-mem, emodule0-mixer, emodule0-moon, emodule0-net, emodule0-photo, emodule0-rain, emodule0-screenshot, emodule0-slideshow, emodule0-snow, emodule0-taskbar, emodule0-tclock, emodule0-uptime, emodule0-weather, emodule0-winselector, emodule0-wlan Conflicts: emodules-extra, evolume Provides: emodules-all, e17-modules Description: A dummy package for installing all modules for E17 @@ -263,7 +270,8 @@ Mail: A mail module supporting pop3, imap, mailbox and mdir. Mbar: A bar for mounting and unmounting devices. Mem : Monitors memory usage. - Moon: Moon Clock module for Enlightenment + Mixer : Sound mixer module. + Moon: Moon Clock module for Enlightenment. Net : Network activity monitoring module. Photo : Display, view or set pictures as backgrounds. Rain: Displays rain on the desktop. === RCS file: /cvs/e/e_modules/debian/copyright,v retrieving revision 1.9 retrieving revision 1.10 diff -u -3 -r1.9 -r1.10 --- copyright 25 Jun 2006 23:47:33 - 1.9 +++ copyright 8 Sep 2006 20:32:13 - 1.10 @@ -9,7 +9,7 @@ Upstream Authors: Nathan Smith <[EMAIL PROTECTED]> (calendar) Matthew Mullins (cpu, mem, net, uptime, weather, wlan) -Christopher Michael <[EMAIL PROTECTED]> (cpu, deskshow, mail, mbar, mem, net, screenshot, slideshow, uptime, weather, wlan) +Christopher Michael <[EMAIL PROTECTED]> (cpu, deskshow, mail, mbar, mem, mixer, net, screenshot, slideshow, uptime, weather, wlan) David Seikel <[EMAIL PROTECTED]> (emu) Boldin Pavel <[EMAIL PROTECTED]> (evolume) Vincent Torri (flame, tclock) @@ -21,7 +21,7 @@ iamsthitha (taskbar) Ibukun Olumuyiwa (bling) -Copyright (bling, calendar, cpu, deskshow, emu, evolume, flame, language, mbar, mem, moon, net, rain, screenshot, slideshow, snow, tclock, uptime, wlan, weather): +Copyright (bling, calendar, cpu, deskshow, emu, evolume, flame, language, mbar, mem, mixer, moon, net, rain, screenshot, slideshow, snow, tclock, uptime, wlan, weather): Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to === RCS file: /cvs/e/e_modules/debian/emodule0-eveil.install,v retrieving revision 1.3 retrieving revision 1.4 diff -u -3 -r1.3 -r1.4 --- emodule0-eveil.install 23 Jul 2006 02:11:01 - 1.3 +++ emodule0-eveil.install 8 Sep 2006 20:32:13 - 1.4 @@ -3,3 +3,4 @@ debian/tmp/usr/lib/enlightenment/modules/eveil/*.eap debian/tmp/usr/lib/enlightenment/modules/eveil/*.ttf debian/tmp/usr/lib/enlightenment/modules/eveil/*/*.so +debian/tmp/usr/share/locale/*/LC_MESSAGES/eveil.*
E CVS: libs/ewl dj2
Enlightenment CVS committal Author : dj2 Project : e17 Module : libs/ewl Dir : e17/libs/ewl/src/bin/tests Modified Files: ewl_text.c Log Message: - start of fixup of ewl_text for utf8 characters - NOTE utf8 dosen't quite work yet, ascii should still work as expected. === RCS file: /cvs/e/e17/libs/ewl/src/bin/tests/ewl_text.c,v retrieving revision 1.17 retrieving revision 1.18 diff -u -3 -r1.17 -r1.18 --- ewl_text.c 6 Sep 2006 18:37:16 - 1.17 +++ ewl_text.c 8 Sep 2006 18:56:40 - 1.18 @@ -108,7 +108,7 @@ Ewl_Text_Trigger *trigger; int len; - o = ewl_text_new(); + o = ewl_text_new(); ewl_widget_name_set(o, "text"); ewl_text_selectable_set(EWL_TEXT(o), TRUE); ewl_container_child_append(EWL_CONTAINER(box), o); @@ -196,7 +196,7 @@ #if 0 printf("-- DUMP --\n"); - ewl_text_tree_dump((EWL_TEXT(o))->formatting, ""); + ewl_text_tree_dump((EWL_TEXT(o))->formatting.tree, ""); printf("-- DUMP DONE --\n"); #endif @@ -217,8 +217,8 @@ t = EWL_TEXT_TRIGGER(w); - ewl_text_cursor_position_set(EWL_TEXT(t->text_parent), t->pos); - ewl_text_color_apply(EWL_TEXT(t->text_parent), 255, 0, 0, 255, t->len); + ewl_text_cursor_position_set(EWL_TEXT(t->text_parent), t->char_pos); + ewl_text_color_apply(EWL_TEXT(t->text_parent), 255, 0, 0, 255, t->char_len); } static void @@ -229,8 +229,8 @@ t = EWL_TEXT_TRIGGER(w); - ewl_text_cursor_position_set(EWL_TEXT(t->text_parent), t->pos); - ewl_text_color_apply(EWL_TEXT(t->text_parent), 0, 0, 0, 255, t->len); + ewl_text_cursor_position_set(EWL_TEXT(t->text_parent), t->char_pos); + ewl_text_color_apply(EWL_TEXT(t->text_parent), 0, 0, 0, 255, t->char_len); } static int - Using Tomcat but need to do more? Need to support web services, security? Get stuff done quickly with pre-integrated technology to make your job easier Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642 ___ enlightenment-cvs mailing list enlightenment-cvs@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-cvs
E CVS: mixer devilhorns
Enlightenment CVS committal Author : devilhorns Project : e_modules Module : mixer Dir : e_modules/mixer Modified Files: e_mod_main.c Log Message: Test method for window closing. Needs current evas. === RCS file: /cvs/e/e_modules/mixer/e_mod_main.c,v retrieving revision 1.6 retrieving revision 1.7 diff -u -3 -r1.6 -r1.7 --- e_mod_main.c7 Sep 2006 22:07:14 - 1.6 +++ e_mod_main.c8 Sep 2006 18:03:10 - 1.7 @@ -70,11 +70,12 @@ static void _mixer_menu_cb_configure (void *data, E_Menu *m, E_Menu_Item *mi); -static void _mixer_window_simple_pop_up (Instance *inst); -static int _mixer_window_simple_animator_cb (void *data); -static void _mixer_window_simple_mouse_up_cb (void *data, Evas *e, Evas_Object *obj, void *event_info); -static void _mixer_window_simple_changed_cb (void *data, Evas_Object *obj, void *event_info); -static void _mixer_window_simple_resize_cb (E_Win *win); +static void _mixer_window_simple_pop_up (Instance *inst); +static int _mixer_window_simple_animator_cb (void *data); +static void _mixer_window_simple_mouse_up_cb (void *data, Evas *e, Evas_Object *obj, void *event_info); +static void _mixer_window_simple_mouse_out_cb (void *data, Evas *e, Evas_Object *obj, void *event_info); +static void _mixer_window_simple_changed_cb (void *data, Evas_Object *obj, void *event_info); +static void _mixer_window_simple_resize_cb(E_Win *win); /* Private vars */ static E_Config_DD *conf_edd = NULL; @@ -193,7 +194,7 @@ Evas_Object *o; char buf[4096]; - snprintf (buf, sizeof(buf), "%s/module.eap", + snprintf(buf, sizeof(buf), "%s/module.eap", e_module_dir_get(mixer_config->module)); o = edje_object_add(evas); @@ -432,7 +433,16 @@ evas_object_show(win->event_obj); evas_object_event_callback_add(win->event_obj, EVAS_CALLBACK_MOUSE_UP, _mixer_window_simple_mouse_up_cb, win); - + + #ifdef DEBUG + /* Testing possible method for window destroy. It does work +* with an updated evas, as evas had some null check bugs +* (or lack of) which I fixed. Is this the behavior we're +* looking for ? */ +evas_object_event_callback_add(win->event_obj, EVAS_CALLBACK_MOUSE_OUT, + _mixer_window_simple_mouse_out_cb, win); +#endif + win->bg_obj = edje_object_add(e_win_evas_get(win->window)); e_theme_edje_object_set(win->bg_obj, "base/theme/menus", "e/widgets/menu/default/background"); @@ -511,7 +521,8 @@ } /* Makes the simple window slide */ -static int _mixer_window_simple_animator_cb(void *data) +static int +_mixer_window_simple_animator_cb(void *data) { Mixer_Win_Simple *win; double percent; @@ -532,6 +543,7 @@ if (h >= win->h) { + ecore_animator_del(win->slide_animator); win->slide_animator = NULL; return 0; } @@ -540,18 +552,62 @@ } /* Called when the background object of the simple window is released */ -static void _mixer_window_simple_mouse_up_cb(void *data, Evas *e, Evas_Object *obj, void *event_info) +static void +_mixer_window_simple_mouse_up_cb(void *data, Evas *e, Evas_Object *obj, void *event_info) { Mixer_Win_Simple *win; - if (!(win = data)) - return; + if (!(win = data)) return; printf("Mouse up\n"); } +static void +_mixer_window_simple_mouse_out_cb(void *data, Evas *e, Evas_Object *obj, void *event_info) +{ + Mixer_Win_Simple *win; + Mixer *mixer; + + if (!(win = data)) return; + + if (win->slide_animator) + { + ecore_animator_del(win->slide_animator); + win->slide_animator = NULL; + } + + if (win->slider) + { +evas_object_smart_callback_del(win->slider, "changed", + _mixer_window_simple_changed_cb); + evas_object_del(win->slider); + } + + if (win->bg_obj) + evas_object_del(win->bg_obj); + + if (win->event_obj) + { +evas_object_event_callback_del(win->event_obj, EVAS_CALLBACK_MOUSE_UP, + _mixer_window_simple_mouse_up_cb); +evas_object_event_callback_del(win->event_obj, EVAS_CALLBACK_MOUSE_OUT, + _mixer_window_simple_mouse_out_cb); + evas_object_del(win->event_obj); + } + + if (win->window) + e_object_del(E_OBJECT(win->window)); + + if (win->mixer) + { + mixer = win->mixer; + mixer->simple_win = NULL; + } +} + /* Called when the value of the slider of the simple window is changed */ -static void _mixer_window_simple_changed_cb(void *data, Evas_Object *obj, void *event_info) +static void +_mixer_window_simple_change
E CVS: libs/evas devilhorns
Enlightenment CVS committal Author : devilhorns Project : e17 Module : libs/evas Dir : e17/libs/evas/src/lib/canvas Modified Files: evas_clip.c Log Message: Fix some non-NULL check issues in evas_clip.c . Don't ask how I found these :) === RCS file: /cvs/e/e17/libs/evas/src/lib/canvas/evas_clip.c,v retrieving revision 1.23 retrieving revision 1.24 diff -u -3 -r1.23 -r1.24 --- evas_clip.c 6 Jan 2006 23:05:17 - 1.23 +++ evas_clip.c 8 Sep 2006 17:59:19 - 1.24 @@ -281,9 +281,14 @@ if (obj->smart.smart->smart_class->clip_unset) obj->smart.smart->smart_class->clip_unset(obj); } - obj->cur.clipper->clip.clipees = evas_list_remove(obj->cur.clipper->clip.clipees, obj); - if (!obj->cur.clipper->clip.clipees) obj->cur.clipper->cur.have_clipees = 0; - evas_object_change(obj->cur.clipper); + if (obj->cur.clipper) + { + if (!obj->cur.clipper->clip.clipees) + obj->cur.clipper->cur.have_clipees = 0; + else + obj->cur.clipper->clip.clipees = evas_list_remove(obj->cur.clipper->clip.clipees, obj); + evas_object_change(obj->cur.clipper); + } obj->cur.clipper = NULL; evas_object_change(obj); evas_object_clip_dirty(obj); - Using Tomcat but need to do more? Need to support web services, security? Get stuff done quickly with pre-integrated technology to make your job easier Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642 ___ enlightenment-cvs mailing list enlightenment-cvs@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-cvs
E CVS: proto titan
Enlightenment CVS committal Author : titan Project : e17 Module : proto Dir : e17/proto/ephoto/src Modified Files: ephoto_slideshow.c Log Message: More slideshow config dialog work. === RCS file: /cvs/e/e17/proto/ephoto/src/ephoto_slideshow.c,v retrieving revision 1.4 retrieving revision 1.5 diff -u -3 -r1.4 -r1.5 --- ephoto_slideshow.c 8 Sep 2006 15:03:59 - 1.4 +++ ephoto_slideshow.c 8 Sep 2006 17:41:42 - 1.5 @@ -11,6 +11,7 @@ Ewl_Widget *window_border; Ewl_Widget *transition_border; Ewl_Widget *order_border; + Ewl_Widget *size_border; Ewl_Widget *fullscreen; Ewl_Widget *custom; Ewl_Widget *spinner; @@ -20,12 +21,16 @@ Ewl_Widget *text; Ewl_Widget *wentry; Ewl_Widget *hentry; + Ewl_Widget *zoom_image; + Ewl_Widget *aspect_image; Ewl_Widget *save; Ewl_Widget *cancel; int full_size; int custom_size; int length; int name_show; + int zoom; + int keep_apsect; int random_order; int loop_slide; int w_size; @@ -60,7 +65,7 @@ void start_slideshow(Ewl_Widget *w, void *event, void *data) { Ewl_Widget *window; - Ewl_Widget *vbox; + Ewl_Widget *cell; Ewl_Widget *image; char *image_path; @@ -74,15 +79,15 @@ ewl_callback_append(window, EWL_CALLBACK_CLICKED, destroy_slideshow, NULL); ewl_widget_show(window); - vbox = ewl_vbox_new(); - ewl_object_fill_policy_set(EWL_OBJECT(vbox), EWL_FLAG_FILL_ALL); - ewl_container_child_append(EWL_CONTAINER(window), vbox); - ewl_widget_show(vbox); + cell = ewl_cell_new(); + ewl_object_fill_policy_set(EWL_OBJECT(cell), EWL_FLAG_FILL_ALL); + ewl_container_child_append(EWL_CONTAINER(window), cell); + ewl_widget_show(cell); image = ewl_image_new(); ewl_image_file_set(EWL_IMAGE(image), image_path, NULL); ewl_object_fill_policy_set(EWL_OBJECT(image), EWL_FLAG_FILL_ALL); - ewl_container_child_append(EWL_CONTAINER(vbox), image); + ewl_container_child_append(EWL_CONTAINER(cell), image); ewl_widget_show(image); timer = ecore_timer_add(3, change_picture, image); @@ -99,57 +104,38 @@ { FILE *file; Slide_Config *sc; - char path[PATH_MAX]; char temp[PATH_MAX]; + char path[PATH_MAX]; - snprintf(path, PATH_MAX, "%s/.ephoto/slideshow_config", getenv("HOME")); + snprintf(temp, PATH_MAX, "%s/.ephoto", getenv("HOME")); + snprintf(path, PATH_MAX, "%s/slideshow_config", temp); + if (!ecore_file_exists(temp)) ecore_file_mkdir(temp); + sc = data; file = fopen(path, "w"); if (file != NULL) { - if (ewl_checkbutton_is_checked(EWL_CHECKBUTTON(sc->fullscreen))) - { - fputs("Fullscreen=1\n", file); - fputs("Custom=0\n", file); - } - else - { - fputs("Fullscreen=0\n", file); - fputs("Custom=1\n", file); - } - snprintf(temp, PATH_MAX, "Width=%s\n", ewl_text_text_get(EWL_TEXT(sc->wentry))); - fputs(temp, file); - snprintf(temp, PATH_MAX, "Height=%s\n", ewl_text_text_get(EWL_TEXT(sc->hentry))); - fputs(temp, file); - if (ewl_checkbutton_is_checked(EWL_CHECKBUTTON(sc->random))) - { - fputs("Random=1\n", file); - } - else - { - fputs("Random=0\n", file); - } - if (ewl_checkbutton_is_checked(EWL_CHECKBUTTON(sc->loop))) - { - fputs("Loop=1\n", file); - } - else - { - fputs("Loop=0\n", file); - } - snprintf(temp, PATH_MAX, "Length=%d\n", ewl_range_value_get(EWL_RANGE(sc->spinner))); - fputs(temp, file); - if (ewl_checkbutton_is_checked(EWL_CHECKBUTTON(sc->show_name))) - { - fputs("FileName=1\n", file); - } - else - { - fputs("FileName=0\n", file); - } - fclose(file); + fprintf(file, "Fullscreen=%d\n", + ewl_checkbutton_is_checked(EWL_CHECKBUTTON(sc->fullscreen))); + fprintf(file, "Custom=%d\n", + ewl_checkbutton_is_checked(EWL_CHECKBUTTON(sc->custom))); + fprintf(file, "Width=%s\n", ewl_text_text_get(EWL_TEXT(sc->wentry))); + fprintf(file, "Height=%s\n", ewl_text_text_get(EWL_TEXT(sc->hentry))); + fprintf(file, "Random=%d\n", + ewl_checkbutton_is_checked(EWL_CHECKBUTTON(sc->random))); + fprintf(file, "Loop=%d\n", + ewl_checkbutton_is_checked(EWL_CHECKBUTTON(sc->loop))); + fprintf(file, "Zoom=%d\n", + ewl_checkbutton_is_checked(EWL_CHECKBUTTON(sc->zoom_image))); + fprintf(file, "Aspect=%d\n", + ewl_checkbutton_is_checked(EWL_CHECKBUTTON(sc->aspect_image))); + fprintf(file, "Length=%d\n", ewl_range_value_get(EWL_RANGE(sc->spinner))); + fprintf(file, "FileName=%d\n", + ewl_checkbutton_is_checked(EWL_CHECKBUTTON(sc->show_name))); + fclose(file); } + ewl_widget_destroy(sc->win); } void create_slideshow_config(Ewl_Widget *w, void *event, void *data) @@ -189,11 +175,24 @@ ewl_container_child_append(EWL_CONTAINER(sc->hbox), sc->order_border); ewl_object_alignment_set(EWL_OBJECT(sc->order_border), EWL_FLAG_ALIGN_CENTER); ewl_widget_show(sc->order_border); + + sc->hbox = ewl_hbox_new(); + ewl_object_fill_policy_set(EWL_OBJECT(sc->hbox), EWL_FLAG_FILL_ALL); + ewl_container_child_append(EWL_CONTAINER(sc
E CVS: proto balony
Enlightenment CVS committal Author : balony Project : e17 Module : proto Dir : e17/proto/exhibit/src/bin Modified Files: exhibit_file.c exhibit_file.h exhibit_main.c Log Message: Make cancel download work and added more info on the progressbar. === RCS file: /cvs/e/e17/proto/exhibit/src/bin/exhibit_file.c,v retrieving revision 1.13 retrieving revision 1.14 diff -u -3 -r1.13 -r1.14 --- exhibit_file.c 8 Sep 2006 12:48:25 - 1.13 +++ exhibit_file.c 8 Sep 2006 16:54:30 - 1.14 @@ -29,6 +29,9 @@ switch(response_id) { case ETK_RESPONSE_CANCEL: +ecore_file_download_abort_all(); +ecore_file_unlink(data); +E_FREE(data); etk_object_destroy(ETK_OBJECT(obj)); break; default: @@ -37,9 +40,9 @@ } void -_ex_file_download_dialog(char *url) +_ex_file_download_dialog(char *url, char *file) { - char string[PATH_MAX + 50]; + char string[PATH_MAX + 16]; sprintf(string, "Downloading %s", url); @@ -47,7 +50,7 @@ ETK_MESSAGE_DIALOG_CANCEL, string); etk_signal_connect("response", ETK_OBJECT(dialog), -ETK_CALLBACK(_ex_file_download_dialog_response), NULL); +ETK_CALLBACK(_ex_file_download_dialog_response), file); etk_container_border_width_set(ETK_CONTAINER(dialog), 4); etk_window_title_set(ETK_WINDOW(dialog), @@ -65,15 +68,36 @@ _ex_file_download_progress_cb(void *data, const char *file, long int dltotal, long int dlnow, long int ultotal, long int ulnow) { double fraction; - char text[32]; + char text[42]; + static long int last; + static double t_last; + long int diff; + double t_diff; + double kbytes; + static double total_kbytes; if (dlnow == 0 || dltotal == 0) return 0; - fraction = (double) ((double) dlnow) / ((double) dltotal); - snprintf(text, sizeof(text), "%d%% done", (int) (fraction * 100.0)); - etk_progress_bar_text_set(ETK_PROGRESS_BAR(progressbar), text); - etk_progress_bar_fraction_set(ETK_PROGRESS_BAR(progressbar), fraction); + if (!total_kbytes) + total_kbytes = (double) double)dltotal) / 1024)); + + if (last) + { + diff = dlnow - last; + t_diff = ecore_time_get() - t_last; + kbytes = (double) double) diff) / 1024)); + fraction = (double) ((double) dlnow) / ((double) dltotal); + etk_progress_bar_fraction_set(ETK_PROGRESS_BAR(progressbar), fraction); + snprintf(text, sizeof(text), "%d%% done at %.0f kb/s (%.0f of %.0f kb)", + (int) (fraction * 100.0), + kbytes / t_diff, + kbytes, total_kbytes); + etk_progress_bar_text_set(ETK_PROGRESS_BAR(progressbar), text); + } + + t_last = ecore_time_get(); + last = dlnow; return 0; } @@ -81,8 +105,9 @@ void _ex_file_download_complete_cb(void *data, const char *file, int status) { - etk_object_destroy(ETK_OBJECT(dialog)); _ex_main_itree_add(file, file); + etk_object_destroy(ETK_OBJECT(dialog)); + E_FREE(data); D(("Download of file %s is done\n", file)); } === RCS file: /cvs/e/e17/proto/exhibit/src/bin/exhibit_file.h,v retrieving revision 1.10 retrieving revision 1.11 diff -u -3 -r1.10 -r1.11 --- exhibit_file.h 8 Sep 2006 12:48:25 - 1.10 +++ exhibit_file.h 8 Sep 2006 16:54:30 - 1.11 @@ -4,7 +4,7 @@ #ifndef _EX_FILE_H #define _EX_FILE_H -void_ex_file_download_dialog(char *url); +void_ex_file_download_dialog(char *url, char *file); int _ex_file_download_progress_cb(void *data, const char *file, long int dltotal, long int dlnow, long int ultotal, long int ulnow); void_ex_file_download_complete_cb(void *data, const char *file, int status); int _ex_file_is_viewable(char *file); === RCS file: /cvs/e/e17/proto/exhibit/src/bin/exhibit_main.c,v retrieving revision 1.80 retrieving revision 1.81 diff -u -3 -r1.80 -r1.81 --- exhibit_main.c 8 Sep 2006 12:48:25 - 1.80 +++ exhibit_main.c 8 Sep 2006 16:54:30 - 1.81 @@ -864,19 +864,17 @@ else if (ecore_file_download_protocol_available("http://";)) { char *ptr; -char tmp_file[PATH_MAX]; +char *tmp_file; int i; if ((ptr = strrchr(dir, '/'))) ptr++; -D(("Trying to download %s to %s/%s\n", dir, - e->options->dl_path, ptr)); - if (!_ex_file_is_viewable(ptr)) { tab = _ex_tab_new(e, "."); } else { + tmp_file = malloc(PATH_MAX); for (i = 0;;i++) { snprintf(tmp_file, PATH_MAX, "%s/ex_%d_%s", @@ -890,10 +888,10 @@
E CVS: libs/ecore balony
Enlightenment CVS committal Author : balony Project : e17 Module : libs/ecore Dir : e17/libs/ecore/src/lib/ecore_file Modified Files: Ecore_File.h ecore_file_download.c Log Message: Adding a function to abort all downloads. === RCS file: /cvs/e/e17/libs/ecore/src/lib/ecore_file/Ecore_File.h,v retrieving revision 1.26 retrieving revision 1.27 diff -u -3 -r1.26 -r1.27 --- Ecore_File.h7 Apr 2006 12:27:39 - 1.26 +++ Ecore_File.h8 Sep 2006 16:52:29 - 1.27 @@ -102,6 +102,7 @@ long int ultotal, long int ulnow), void *data); + EAPI voidecore_file_download_abort_all(void); EAPI int ecore_file_download_protocol_available(const char *protocol); #ifdef __cplusplus === RCS file: /cvs/e/e17/libs/ecore/src/lib/ecore_file/ecore_file_download.c,v retrieving revision 1.9 retrieving revision 1.10 diff -u -3 -r1.9 -r1.10 --- ecore_file_download.c 7 Apr 2006 12:27:39 - 1.9 +++ ecore_file_download.c 8 Sep 2006 16:52:29 - 1.10 @@ -82,6 +82,29 @@ return init; } +void +ecore_file_download_abort_all(void) +{ +#ifdef HAVE_CURL + Ecore_File_Download_Job *job; + + if (!_job_list) + return; + + ecore_list_goto_first(_job_list); + while ((job = ecore_list_next(_job_list))) + { + ecore_main_fd_handler_del(job->fd_handler); + curl_multi_remove_handle(curlm, job->curl); + curl_easy_cleanup(job->curl); + fclose(job->file); + free(job->dst); + free(job); + } + ecore_list_clear(_job_list); +#endif +} + EAPI int ecore_file_download(const char *url, const char *dst, void (*completion_cb)(void *data, const char *file, int status), - Using Tomcat but need to do more? Need to support web services, security? Get stuff done quickly with pre-integrated technology to make your job easier Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642 ___ enlightenment-cvs mailing list enlightenment-cvs@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-cvs
E CVS: proto titan
Enlightenment CVS committal Author : titan Project : e17 Module : proto Dir : e17/proto/ephoto/src Modified Files: ephoto_slideshow.c Log Message: Write the config to file. === RCS file: /cvs/e/e17/proto/ephoto/src/ephoto_slideshow.c,v retrieving revision 1.3 retrieving revision 1.4 diff -u -3 -r1.3 -r1.4 --- ephoto_slideshow.c 8 Sep 2006 05:44:13 - 1.3 +++ ephoto_slideshow.c 8 Sep 2006 15:03:59 - 1.4 @@ -1,6 +1,37 @@ #include "ephoto.h" Ecore_Timer *timer; +typedef struct _Slide_Config Slide_Config; + +struct _Slide_Config +{ + Ewl_Widget *win; + Ewl_Widget *vbox; + Ewl_Widget *hbox; + Ewl_Widget *window_border; + Ewl_Widget *transition_border; + Ewl_Widget *order_border; + Ewl_Widget *fullscreen; + Ewl_Widget *custom; + Ewl_Widget *spinner; + Ewl_Widget *show_name; + Ewl_Widget *random; + Ewl_Widget *loop; + Ewl_Widget *text; + Ewl_Widget *wentry; + Ewl_Widget *hentry; + Ewl_Widget *save; + Ewl_Widget *cancel; + int full_size; + int custom_size; + int length; + int name_show; + int random_order; + int loop_slide; + int w_size; + int h_size; +}; + void destroy_slideshow(Ewl_Widget *w, void *event, void *data) { ecore_timer_del(timer); @@ -64,176 +95,218 @@ ewl_widget_destroy(win); } -void create_slideshow_config(Ewl_Widget *w, void *event, void *data) +void save_config(Ewl_Widget *w, void *event, void *data) { - Ewl_Widget *win; - Ewl_Widget *vbox; - Ewl_Widget *hbox; - Ewl_Widget *window_border; - Ewl_Widget *transition_border; - Ewl_Widget *order_border; - Ewl_Widget *fullscreen; - Ewl_Widget *custom; - Ewl_Widget *spinner; - Ewl_Widget *show_name; - Ewl_Widget *random; - Ewl_Widget *loop; - Ewl_Widget *text; - Ewl_Widget *wentry; - Ewl_Widget *hentry; - Ewl_Widget *save; - Ewl_Widget *cancel; + FILE *file; + Slide_Config *sc; + char path[PATH_MAX]; + char temp[PATH_MAX]; - win = ewl_window_new(); - ewl_window_title_set(EWL_WINDOW(win), "Slideshow Configuration"); - ewl_window_name_set(EWL_WINDOW(win), "Slideshow Configuration"); - ewl_window_dialog_set(EWL_WINDOW(win), 1); - ewl_object_size_request(EWL_OBJECT(win), 400, 200); - ewl_callback_append(win, EWL_CALLBACK_DELETE_WINDOW, config_cancel, win); - ewl_widget_show(win); - - vbox = ewl_vbox_new(); - ewl_object_fill_policy_set(EWL_OBJECT(vbox), EWL_FLAG_FILL_ALL); - ewl_container_child_append(EWL_CONTAINER(win), vbox); - ewl_widget_show(vbox); - - hbox = ewl_hbox_new(); - ewl_object_fill_policy_set(EWL_OBJECT(hbox), EWL_FLAG_FILL_ALL); - ewl_container_child_append(EWL_CONTAINER(vbox), hbox); - ewl_object_alignment_set(EWL_OBJECT(hbox), EWL_FLAG_ALIGN_CENTER); - ewl_widget_show(hbox); + snprintf(path, PATH_MAX, "%s/.ephoto/slideshow_config", getenv("HOME")); + sc = data; + + file = fopen(path, "w"); + if (file != NULL) + { + if (ewl_checkbutton_is_checked(EWL_CHECKBUTTON(sc->fullscreen))) + { + fputs("Fullscreen=1\n", file); + fputs("Custom=0\n", file); + } + else + { + fputs("Fullscreen=0\n", file); + fputs("Custom=1\n", file); + } + snprintf(temp, PATH_MAX, "Width=%s\n", ewl_text_text_get(EWL_TEXT(sc->wentry))); + fputs(temp, file); + snprintf(temp, PATH_MAX, "Height=%s\n", ewl_text_text_get(EWL_TEXT(sc->hentry))); + fputs(temp, file); + if (ewl_checkbutton_is_checked(EWL_CHECKBUTTON(sc->random))) + { + fputs("Random=1\n", file); + } + else + { + fputs("Random=0\n", file); + } + if (ewl_checkbutton_is_checked(EWL_CHECKBUTTON(sc->loop))) + { + fputs("Loop=1\n", file); + } + else + { + fputs("Loop=0\n", file); + } + snprintf(temp, PATH_MAX, "Length=%d\n", ewl_range_value_get(EWL_RANGE(sc->spinner))); + fputs(temp, file); + if (ewl_checkbutton_is_checked(EWL_CHECKBUTTON(sc->show_name))) + { + fputs("FileName=1\n", file); + } + else + { + fputs("FileName=0\n", file); + } + fclose(file); + } +} + +void create_slideshow_config(Ewl_Widget *w, void *event, void *data) +{ + Slide_Config *sc; + sc = calloc(1, sizeof(Slide_Config)); + + sc->win = ewl_window_new(); + ewl_window_title_set(EWL_WINDOW(sc->win), "Slideshow Configuration"); + ewl_window_name_set(EWL_WINDOW(sc->win), "Slideshow Configuration"); + ewl_window_dialog_set(EWL_WINDOW(sc->win), 1); + ewl_object_size_request(EWL_OBJECT(sc->win), 400, 200); + ewl_callback_append(sc->win, EWL_CALLBACK_DELETE_WINDOW, config_cancel, sc->win); + ewl_widget_show(sc->win); + + sc->vbox = ewl_vbox_new(); + ewl_object_fill_policy_set(EWL_OBJECT(sc->vbox), EWL_FLAG_FILL_ALL); + ewl_container_child_append(EWL_CONTAINER(sc->win), sc->vbox); + ewl_widget_show(sc->vbox); + + sc->hbox = ewl_hbox_new(); + ewl_object_fill_policy_set(EWL_OBJECT(sc->hbox), EWL_FLAG_FILL_ALL); + ewl_container_child_append(EWL_CONTAINER(sc->vbox), sc->hbox); + ewl_object_alignment_set(EWL_OBJECT(sc->hbox), EWL_FLAG_ALIGN_CENTER); + ewl_widget_show(sc->hbox); - window_border = ewl_border_new(); - ewl_border_text_set(EWL_BORDER(window_border), "Window Siz
E CVS: proto lok
Enlightenment CVS committal Author : lok Project : e17 Module : proto Dir : e17/proto/etk/src/lib Modified Files: etk_tree.c etk_tree.h Log Message: [Etk_Tree] Added etk_tree_unselected_rows_get === RCS file: /cvs/e/e17/proto/etk/src/lib/etk_tree.c,v retrieving revision 1.75 retrieving revision 1.76 diff -u -3 -r1.75 -r1.76 --- etk_tree.c 4 Sep 2006 12:51:42 - 1.75 +++ etk_tree.c 8 Sep 2006 14:41:50 - 1.76 @@ -146,6 +146,7 @@ static Etk_Tree_Col *etk_tree_col_to_resize_get(Etk_Tree_Col *col, int x); static void _etk_tree_row_selected_rows_get(Etk_Tree_Row *row, Evas_List **selected_rows); +static void _etk_tree_row_unselected_rows_get(Etk_Tree_Row *row, Evas_List **unselected_rows); static void _etk_tree_row_select_all(Etk_Tree_Row *row); static void _etk_tree_row_unselect_all(Etk_Tree_Row *row); static void _etk_tree_row_select(Etk_Tree *tree, Etk_Tree_Row *row, Etk_Modifiers modifiers); @@ -1279,6 +1280,24 @@ } /** + * @brief Gets all the rows not selected of the tree + * @param tree a tree + * @return Returns an Evas_List * containing the unselected rows of the tree + * @warning The returned Evas_List * should be freed with @a evas_list_free() + */ +Evas_List *etk_tree_unselected_rows_get(Etk_Tree *tree) +{ + Evas_List *unselected_rows = NULL; + + if (!tree) + return NULL; + + _etk_tree_row_unselected_rows_get(&tree->root, &unselected_rows); + + return unselected_rows; +} + +/** * @brief Expands the row. The child rows of the row will be displayed. It will only affect a tree in the ETK_TREE_MODE_TREE mode * @param row a row */ @@ -2859,6 +2878,22 @@ if (r->selected) *selected_rows = evas_list_append(*selected_rows, r); _etk_tree_row_selected_rows_get(r, selected_rows); + } +} + +/* Gets the unselected child rows of the row */ +static void _etk_tree_row_unselected_rows_get(Etk_Tree_Row *row, Evas_List **unselected_rows) +{ + Etk_Tree_Row *r; + + if (!row || !unselected_rows) + return; + + for (r = row->first_child; r; r = r->next) + { + if (!r->selected) + *unselected_rows = evas_list_append(*unselected_rows, r); + _etk_tree_row_unselected_rows_get(r, unselected_rows); } } === RCS file: /cvs/e/e17/proto/etk/src/lib/etk_tree.h,v retrieving revision 1.25 retrieving revision 1.26 diff -u -3 -r1.25 -r1.26 --- etk_tree.h 14 Aug 2006 16:26:01 - 1.25 +++ etk_tree.h 8 Sep 2006 14:41:50 - 1.26 @@ -217,6 +217,7 @@ void etk_tree_row_unselect(Etk_Tree_Row *row); Etk_Tree_Row *etk_tree_selected_row_get(Etk_Tree *tree); Evas_List *etk_tree_selected_rows_get(Etk_Tree *tree); +Evas_List *etk_tree_unselected_rows_get(Etk_Tree *tree); void etk_tree_row_expand(Etk_Tree_Row *row); void etk_tree_row_collapse(Etk_Tree_Row *row); - Using Tomcat but need to do more? Need to support web services, security? Get stuff done quickly with pre-integrated technology to make your job easier Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642 ___ enlightenment-cvs mailing list enlightenment-cvs@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-cvs
E CVS: proto chaos
Enlightenment CVS committal Author : chaos Project : e17 Module : proto Dir : e17/proto/entropy/src/plugins Modified Files: etk_icon_viewer.c etk_list_viewer.c layout_etk_simple.c Log Message: * Seelction fixes * Leak fixes === RCS file: /cvs/e/e17/proto/entropy/src/plugins/etk_icon_viewer.c,v retrieving revision 1.21 retrieving revision 1.22 diff -u -3 -r1.21 -r1.22 --- etk_icon_viewer.c 7 Sep 2006 13:40:15 - 1.21 +++ etk_icon_viewer.c 8 Sep 2006 12:54:55 - 1.22 @@ -338,17 +338,32 @@ printf("ICONBOX: Copy request\n"); entropy_core_selected_files_clear(); + entropy_core_selection_type_set(ENTROPY_SELECTION_COPY); selected = entropy_etk_icon_viewer_selected_get(viewer); ecore_list_goto_first(selected); while ( (file = ecore_list_next(selected))) { entropy_core_selected_file_add(file); } + ecore_list_destroy(selected); } break; case ENTROPY_NOTIFY_CUT_REQUEST: { - printf("ICONBOX: Cut request\n"); + Ecore_List* selected; + entropy_generic_file* file; + + printf("ICONBOX: Cut request\n"); + + entropy_core_selected_files_clear(); + entropy_core_selection_type_set(ENTROPY_SELECTION_CUT); + selected = entropy_etk_icon_viewer_selected_get(viewer); + + ecore_list_goto_first(selected); + while ( (file = ecore_list_next(selected))) { + entropy_core_selected_file_add(file); + } + ecore_list_destroy(selected); } break; === RCS file: /cvs/e/e17/proto/entropy/src/plugins/etk_list_viewer.c,v retrieving revision 1.73 retrieving revision 1.74 diff -u -3 -r1.73 -r1.74 --- etk_list_viewer.c 7 Sep 2006 13:40:15 - 1.73 +++ etk_list_viewer.c 8 Sep 2006 12:54:55 - 1.74 @@ -56,6 +56,7 @@ void *el, entropy_gui_component_instance * comp); void gui_file_destroy (gui_file * file); int entropy_plugin_type_get (); +Ecore_List* entropy_etk_list_viewer_selected_get(entropy_etk_file_list_viewer* viewer); /*-*/ @@ -475,6 +476,27 @@ } +Ecore_List* entropy_etk_list_viewer_selected_get(entropy_etk_file_list_viewer* viewer) +{ + Evas_List* rows; + Ecore_List* ret_files; + Etk_Tree_Row* row; + gui_file* file; + + ret_files = ecore_list_new(); + + rows = etk_tree_selected_rows_get(ETK_TREE(viewer->tree)); + for (; rows; rows = rows->next ) { + file = ((gui_file*)ecore_hash_get(etk_list_viewer_row_hash, rows->data)); + + ecore_list_append(ret_files, file->file); + } + + evas_list_free(rows); + + return ret_files; +} + void list_viewer_add_row (entropy_gui_component_instance * instance, entropy_generic_file * file) @@ -713,7 +735,45 @@ } } //End case - break; + break; + + + case ENTROPY_NOTIFY_COPY_REQUEST: { + Ecore_List* selected; + entropy_generic_file* file; + + printf("LIST: Copy request\n"); + + entropy_core_selected_files_clear(); + entropy_core_selection_type_set(ENTROPY_SELECTION_COPY); + selected = entropy_etk_list_viewer_selected_get(viewer); + + ecore_list_goto_first(selected); + while ( (file = ecore_list_next(selected))) { + entropy_core_selected_file_add(file); + } + ecore_list_destroy(selected); + } + break; + + case ENTROPY_NOTIFY_CUT_REQUEST: { + Ecore_List* selected; + entropy_generic_file* file; + + printf("LIST: Cut request\n"); + + entropy_core_selected_files_clear(); + entropy_core_selection_type_set(ENTROPY_SELECTION_CUT); + selected = entropy_etk_list_viewer_selected_get(viewer); + + ecore_list_goto_first(selected); + while ( (file = ecore_list_next(selected))) { + entropy_core_selected_file_add(file); + } + ecore_list_destroy(selected); + + } + break; } === RCS file: /cvs/e/e17/proto/entropy/src/plugins/layout_etk_simple.c,v retrieving revision 1.68 retrieving revision 1.69 diff -u -3 -r1.68 -r1.69 --- layout_etk_simple.c 7 Sep 2006 13:40:15 - 1.68 +++ layout_etk_simple.c 8 Sep 2006 12:54:55 - 1.69 @@ -486,7 +486,6 @@ ev = event; - /*FIXME: How do we do modifiers now?*/ if ((ev->modifiers & ETK_MODIFIER_CTRL)) { if (!strcmp(ev->key, "q")) { @@ -654,9 +653,11 @@
E CVS: proto balony
Enlightenment CVS committal Author : balony Project : e17 Module : proto Dir : e17/proto/exhibit/src/bin Modified Files: exhibit_file.c exhibit_file.h exhibit_main.c exhibit_main.h Log Message: "exhibit http:///image.jpg"; now works with progressbar displaying the download status. === RCS file: /cvs/e/e17/proto/exhibit/src/bin/exhibit_file.c,v retrieving revision 1.12 retrieving revision 1.13 diff -u -3 -r1.12 -r1.13 --- exhibit_file.c 6 Sep 2006 12:09:53 - 1.12 +++ exhibit_file.c 8 Sep 2006 12:48:25 - 1.13 @@ -4,6 +4,8 @@ #include "exhibit.h" #include +static void _ex_file_download_dialog_response(Etk_Object *obj, int response_id, void *data); + char *viewables[] = { ".jpg", @@ -17,17 +19,70 @@ NULL }; +static Etk_Widget *dialog; +static Etk_Widget *progressbar; + + +static void +_ex_file_download_dialog_response(Etk_Object *obj, int response_id, void *data) +{ + switch(response_id) + { + case ETK_RESPONSE_CANCEL: +etk_object_destroy(ETK_OBJECT(obj)); +break; + default: +break; + } +} + +void +_ex_file_download_dialog(char *url) +{ + char string[PATH_MAX + 50]; + + sprintf(string, "Downloading %s", url); + + dialog = etk_message_dialog_new(ETK_MESSAGE_DIALOG_INFO, +ETK_MESSAGE_DIALOG_CANCEL, +string); + etk_signal_connect("response", ETK_OBJECT(dialog), +ETK_CALLBACK(_ex_file_download_dialog_response), NULL); + + etk_container_border_width_set(ETK_CONTAINER(dialog), 4); + etk_window_title_set(ETK_WINDOW(dialog), +_("Exhibit - Download progress")); + + progressbar = etk_progress_bar_new(); + etk_progress_bar_text_set(ETK_PROGRESS_BAR(progressbar), "0% done"); + etk_dialog_pack_in_main_area(ETK_DIALOG(dialog), progressbar, +ETK_TRUE, ETK_TRUE, 2, ETK_TRUE); + + etk_widget_show_all(dialog); +} + int _ex_file_download_progress_cb(void *data, const char *file, long int dltotal, long int dlnow, long int ultotal, long int ulnow) { - D(("Download progress on %s\n", file)); + double fraction; + char text[32]; + + if (dlnow == 0 || dltotal == 0) + return 0; - return TRUE; + fraction = (double) ((double) dlnow) / ((double) dltotal); + snprintf(text, sizeof(text), "%d%% done", (int) (fraction * 100.0)); + etk_progress_bar_text_set(ETK_PROGRESS_BAR(progressbar), text); + etk_progress_bar_fraction_set(ETK_PROGRESS_BAR(progressbar), fraction); + + return 0; } void _ex_file_download_complete_cb(void *data, const char *file, int status) { + etk_object_destroy(ETK_OBJECT(dialog)); + _ex_main_itree_add(file, file); D(("Download of file %s is done\n", file)); } === RCS file: /cvs/e/e17/proto/exhibit/src/bin/exhibit_file.h,v retrieving revision 1.9 retrieving revision 1.10 diff -u -3 -r1.9 -r1.10 --- exhibit_file.h 3 Sep 2006 12:41:30 - 1.9 +++ exhibit_file.h 8 Sep 2006 12:48:25 - 1.10 @@ -4,6 +4,7 @@ #ifndef _EX_FILE_H #define _EX_FILE_H +void_ex_file_download_dialog(char *url); int _ex_file_download_progress_cb(void *data, const char *file, long int dltotal, long int dlnow, long int ultotal, long int ulnow); void_ex_file_download_complete_cb(void *data, const char *file, int status); int _ex_file_is_viewable(char *file); === RCS file: /cvs/e/e17/proto/exhibit/src/bin/exhibit_main.c,v retrieving revision 1.79 retrieving revision 1.80 diff -u -3 -r1.79 -r1.80 --- exhibit_main.c 3 Sep 2006 12:41:30 - 1.79 +++ exhibit_main.c 8 Sep 2006 12:48:25 - 1.80 @@ -9,7 +9,6 @@ Exhibit *e; Evas_List *event_handlers; -static void _ex_main_itree_add(const char *file, const char *selected_file); static void _ex_main_monitor_dir(void *data, Ecore_File_Monitor *ecore_file_monitor, Ecore_File_Event event, const char *path); static int _ex_main_dtree_compare_cb(Etk_Tree *tree, Etk_Tree_Row *row1, Etk_Tree_Row *row2, Etk_Tree_Col *col, void *data); static void _ex_main_goto_dir_clicked_cb(Etk_Object *object, void *data); @@ -263,7 +262,7 @@ closedir(dir); } -static void +void _ex_main_itree_add(const char *file, const char *selected_file) { Epsilon *ep; @@ -274,6 +273,9 @@ D(("ERROR: file is NULL\n")); return; } + + if (ecore_file_size(file) <= 0) + return; ep = epsilon_new(file); epsilon_thumb_size(ep, EPSILON_THUMB_NORMAL); @@ -572,7 +574,6 @@ etk_notebook_current_page_set(ETK_NOTEBOOK(e->notebook), evas_list_count(e->tabs) - 1); tab->num = etk_notebook_current_page_get(ETK_NOTEBOOK(e->notebook)); - D(("Setting tab number %d\n", tab->num)); } static void @@ -862,17 +863,40 @@ } else if (ecore_file_download_protocol_available("ht
E CVS: libs/ewl ningerso
Enlightenment CVS committal Author : ningerso Project : e17 Module : libs/ewl Dir : e17/libs/ewl/src/engines/x11 Modified Files: ewl_engine_x11.c Log Message: Move DND awareness to embed rather than the window. Improve type negotiation on target widgets. Auto-detect when flagging windows for DND awareness is necessary. === RCS file: /cvs/e/e17/libs/ewl/src/engines/x11/ewl_engine_x11.c,v retrieving revision 1.12 retrieving revision 1.13 diff -u -3 -r1.12 -r1.13 --- ewl_engine_x11.c8 Sep 2006 01:05:16 - 1.12 +++ ewl_engine_x11.c8 Sep 2006 07:12:43 - 1.13 @@ -1129,7 +1129,7 @@ static int ewl_ev_dnd_enter(void *data __UNUSED__, int type __UNUSED__, void *e) { - Ewl_Window *window; + Ewl_Embed *embed; Ecore_X_Event_Xdnd_Enter *ev; int i = 0; @@ -1138,13 +1138,13 @@ ev = e; - window = ewl_window_window_find((void *)ev->win); - if (window) { - window->dnd_types.num_types = ev->num_types; - window->dnd_types.types = malloc(sizeof(char*) * ev->num_types); + embed = ewl_embed_evas_window_find((void *)ev->win); + if (embed) { + embed->dnd_types.num_types = ev->num_types; + embed->dnd_types.types = malloc(sizeof(char*) * ev->num_types); for (i = 0; i < ev->num_types; i++) - window->dnd_types.types[i] = strdup(ev->types[i]); + embed->dnd_types.types[i] = strdup(ev->types[i]); } DRETURN_INT(TRUE, DLEVEL_STABLE); } @@ -1152,7 +1152,7 @@ static int ewl_ev_dnd_leave(void *data __UNUSED__, int type __UNUSED__, void *e) { - Ewl_Window *window; + Ewl_Embed *embed; Ecore_X_Event_Xdnd_Leave *ev; int i; @@ -1161,15 +1161,15 @@ ev = e; - window = ewl_window_window_find((void *)ev->win); - if (window) { - if (window->dnd_types.num_types > 0) { - for (i = 0; i < window->dnd_types.num_types; i++) - FREE(window->dnd_types.types[i]); - - FREE(window->dnd_types.types); - window->dnd_types.types = NULL; - window->dnd_types.num_types = 0; + embed = ewl_embed_evas_window_find((void *)ev->win); + if (embed) { + if (embed->dnd_types.num_types > 0) { + for (i = 0; i < embed->dnd_types.num_types; i++) + FREE(embed->dnd_types.types[i]); + + FREE(embed->dnd_types.types); + embed->dnd_types.types = NULL; + embed->dnd_types.num_types = 0; } } @@ -1179,7 +1179,7 @@ static int ewl_ev_dnd_drop(void *data __UNUSED__, int type __UNUSED__, void *e) { - Ewl_Window *window; + Ewl_Embed *embed; Ecore_X_Event_Xdnd_Drop *ev; int internal = 0; @@ -1188,27 +1188,14 @@ ev = e; - window = ewl_window_window_find((void *)ev->win); - if (window) { - int i; - int x,y,wx,wy; - Ewl_Embed *embed= ewl_embed_evas_window_find((void *)ev->win); - ewl_embed_window_position_get(EWL_EMBED(window), &wx, &wy); - - /* Request a DND data request */ - for (i = 0; i < window->dnd_types.num_types; i++) { - if (ewl_dnd_type_supported(window->dnd_types.types[i])) { - ecore_x_selection_xdnd_request(ev->win, - window->dnd_types.types[i]); - break; - } - } - if (i == window->dnd_types.num_types) - printf("No matching type found\n"); + embed = ewl_embed_evas_window_find((void *)ev->win); + if (embed) { + int x, y, wx, wy; + const char *type; - printf("Drop!\n"); + ewl_embed_window_position_get(embed, &wx, &wy); - if (ev->source == (Ecore_X_Window)window->window) { + if (ev->source == (Ecore_X_Window)embed->evas_window) { printf("Source is dest! - Retrieving local data\n"); internal = 1; } else { @@ -1218,7 +1205,9 @@ x = ev->position.x - wx; y = ev->position.y - wy; - ewl_embed_dnd_drop_feed(embed, x, y, internal); + type = ewl_embed_dnd_drop_feed(embed, x, y, internal); + if (type) + ecore_x_selection_xdnd_request(ev->win, (char *)type); } DRETURN_INT(TRUE, DLEVEL_STABLE); - Using Tomcat but need to do more? Need to support web services, security?
E CVS: libs/ewl ningerso
Enlightenment CVS committal Author : ningerso Project : e17 Module : libs/ewl Dir : e17/libs/ewl/src/lib Modified Files: ewl_dnd.c ewl_embed.c ewl_embed.h ewl_window.h ewl_widget.c Log Message: Move DND awareness to embed rather than the window. Improve type negotiation on target widgets. Auto-detect when flagging windows for DND awareness is necessary. === RCS file: /cvs/e/e17/libs/ewl/src/lib/ewl_dnd.c,v retrieving revision 1.23 retrieving revision 1.24 diff -u -3 -r1.23 -r1.24 --- ewl_dnd.c 8 Sep 2006 01:05:17 - 1.23 +++ ewl_dnd.c 8 Sep 2006 07:12:43 - 1.24 @@ -34,6 +34,7 @@ char *ewl_dnd_drop_types[] = { "text/uri-list", "text/plain", NULL }; static char *ewl_dnd_types_encode(const char **types); +static char * ewl_dnd_type_stpcpy(char *dst, const char *src); static int ewl_dnd_types_encoded_contains(char *types, char *type); static int ewl_dnd_event_mouse_up(void *data, int type, void *event); @@ -134,7 +135,17 @@ type = ecore_hash_get(ewl_dnd_provided_hash, w); IF_FREE(type); - ecore_hash_set(ewl_dnd_provided_hash, w, ewl_dnd_types_encode(types)); + if (types && *types) { + type = ewl_dnd_types_encode(types); + ecore_hash_set(ewl_dnd_provided_hash, w, type); + ewl_object_flags_add(EWL_OBJECT(w), EWL_FLAG_PROPERTY_DRAGGABLE, + EWL_FLAGS_PROPERTY_MASK); + } + else { + ewl_object_flags_remove(EWL_OBJECT(w), + EWL_FLAG_PROPERTY_DRAGGABLE, + EWL_FLAGS_PROPERTY_MASK); + } DLEAVE_FUNCTION(DLEVEL_STABLE); } @@ -195,10 +206,32 @@ DCHECK_PARAM_PTR("w", w); DCHECK_TYPE("w", w, EWL_WIDGET_TYPE); - type = ecore_hash_get(ewl_dnd_accepted_hash, w); + type = ecore_hash_remove(ewl_dnd_accepted_hash, w); IF_FREE(type); - ecore_hash_set(ewl_dnd_accepted_hash, w, ewl_dnd_types_encode(types)); + if (types && *types) { + type = ewl_dnd_types_encode(types); + ecore_hash_set(ewl_dnd_accepted_hash, w, type); + ewl_object_flags_add(EWL_OBJECT(w), EWL_FLAG_PROPERTY_DND_AWARE, + EWL_FLAGS_PROPERTY_MASK); + if (REALIZED(w) && !OBSCURED(w)) { + Ewl_Embed *emb; + + emb = ewl_embed_widget_find(w); + ewl_embed_dnd_aware_set(emb); + } + } + else { + ewl_object_flags_remove(EWL_OBJECT(w), + EWL_FLAG_PROPERTY_DND_AWARE, + EWL_FLAGS_PROPERTY_MASK); + if (REALIZED(w) && !OBSCURED(w)) { + Ewl_Embed *emb; + + emb = ewl_embed_widget_find(w); + ewl_embed_dnd_aware_remove(emb); + } + } DLEAVE_FUNCTION(DLEVEL_STABLE); } @@ -267,8 +300,8 @@ parent = parent->parent; /* Now check if this obj we found is a window */ - if (parent && ewl_widget_type_is(parent, "window")) - DRETURN_PTR(&(EWL_WINDOW(parent)->dnd_types), DLEVEL_STABLE); + if (parent && ewl_widget_type_is(parent, "embed")) + DRETURN_PTR(&(EWL_EMBED(parent)->dnd_types), DLEVEL_STABLE); DRETURN_PTR(NULL, DLEVEL_STABLE); } @@ -474,7 +507,7 @@ type = tmptype = NEW(char, len + 1); count = i; for (i = 0; i < count; i++) { - tmptype = stpcpy(tmptype, types[i]); + tmptype = ewl_dnd_type_stpcpy(tmptype, types[i]); tmptype++; } *tmptype = '\0'; @@ -482,6 +515,19 @@ DRETURN_PTR(type, DLEVEL_STABLE); } +static char * +ewl_dnd_type_stpcpy(char *dst, const char *src) +{ + while (*src) { + *dst = *src; + dst++; + src++; + } + *dst = '\0'; + + return dst; +} + static int ewl_dnd_event_dnd_move(void *data __UNUSED__, int type __UNUSED__, void *event) @@ -531,7 +577,7 @@ pos = ecore_hash_keys(ewl_dnd_position_hash); ecore_list_goto_first(pos); while ((val = ecore_list_remove_first(pos))) { - EWL_WINDOW(val)->dnd_last_position = NULL; + EWL_EMBED(val)->dnd_last_position = NULL; ecore_hash_remove(ewl_dnd_position_hash, val); } ecore_list_destroy(pos); === RCS file: /cvs/e/e17/libs/ewl/src/lib/ewl_embed.c,v retrieving revision 1.78 retrieving revision 1.79 diff -u -3 -r1.78 -r1.79 --- ewl_embed.c 8 Sep 2006 01:05:17 - 1.78 +++ ewl_embed.c 8 Sep 2006 07:12:43 - 1.
E CVS: libs/ewl ningerso
Enlightenment CVS committal Author : ningerso Project : e17 Module : libs/ewl Dir : e17/libs/ewl/src/bin/tests Modified Files: ewl_dnd_snoop.c ewl_text_editor.c Log Message: Remove test hacks to force DND awareness on test windows. === RCS file: /cvs/e/e17/libs/ewl/src/bin/tests/ewl_dnd_snoop.c,v retrieving revision 1.8 retrieving revision 1.9 diff -u -3 -r1.8 -r1.9 --- ewl_dnd_snoop.c 8 Sep 2006 01:05:16 - 1.8 +++ ewl_dnd_snoop.c 8 Sep 2006 07:08:44 - 1.9 @@ -19,7 +19,6 @@ static void ewl_dnd_snoop_cb_dnd_position(Ewl_Widget *w, void *event, void *data); static void ewl_dnd_snoop_cb_dnd_drop(Ewl_Widget *w, void *event, void *data); static void ewl_dnd_snoop_cb_dnd_data(Ewl_Widget *w, void *event, void *data); -static void ewl_dnd_snoop_cb_realize(Ewl_Widget *w, void *event, void *data); static int ewl_dnd_snoop_cb_enter(void *data, int type, void *ev); static int ewl_dnd_snoop_cb_position(void *data, int type, void *ev); @@ -94,8 +93,6 @@ scroll = ewl_scrollpane_new(); ewl_container_child_append(EWL_CONTAINER(box), scroll); - ewl_callback_append(scroll, EWL_CALLBACK_REALIZE, - ewl_dnd_snoop_cb_realize, NULL); ewl_widget_show(scroll); text = ewl_text_new(); @@ -142,15 +139,6 @@ { Ewl_Event_Dnd_Data *ev = event; printf("Data event on widget %p: %p length %d\n", w, ev->data, ev->len); -} - -static void -ewl_dnd_snoop_cb_realize(Ewl_Widget *w, void *event __UNUSED__, - void *data __UNUSED__) -{ - Ewl_Embed *embed; - embed = ewl_embed_widget_find(w); - ecore_x_dnd_aware_set((Ecore_X_Window)embed->evas_window, TRUE); } static int === RCS file: /cvs/e/e17/libs/ewl/src/bin/tests/ewl_text_editor.c,v retrieving revision 1.12 retrieving revision 1.13 diff -u -3 -r1.12 -r1.13 --- ewl_text_editor.c 8 Sep 2006 01:05:16 - 1.12 +++ ewl_text_editor.c 8 Sep 2006 07:08:44 - 1.13 @@ -49,7 +49,6 @@ static void ete_cb_load(Ewl_Widget *w, void *ev, void *data); static void ete_cb_clear(Ewl_Widget *w, void *ev, void *data); static void ete_cb_key_down(Ewl_Widget *w, void *ev, void *data); -static void ete_dnd_cb_realize(Ewl_Widget *w, void *event, void *data); void test_info(Ewl_Test *test) @@ -70,7 +69,6 @@ hbox = ewl_hbox_new(); ewl_container_child_append(EWL_CONTAINER(box), hbox); ewl_object_fill_policy_set(EWL_OBJECT(hbox), EWL_FLAG_FILL_HFILL); - ewl_callback_append(hbox, EWL_CALLBACK_REALIZE, ete_dnd_cb_realize, NULL); ewl_widget_show(hbox); { @@ -174,15 +172,6 @@ } return 1; -} - -static void -ete_dnd_cb_realize(Ewl_Widget *w, void *event __UNUSED__, - void *data __UNUSED__) -{ - Ewl_Embed *embed; - embed = ewl_embed_widget_find(w); - ewl_embed_dnd_aware_set(embed); } static void - Using Tomcat but need to do more? Need to support web services, security? Get stuff done quickly with pre-integrated technology to make your job easier Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642 ___ enlightenment-cvs mailing list enlightenment-cvs@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-cvs