Setting text to "" would case textblock to return a width of 0, which would
intern cause EWL to loop and redo the configure callbacks. Not sure why. I'm
catching the 0 width in the text code and making it 1 now. So, this should work
again (and does in the ewl_entry_test).
dan
> Enlightenment CVS committal
>
> Author : lordchaos
> Project : e17
> Module : libs/ewl
>
> Dir : e17/libs/ewl/src/lib
>
>
> Modified Files:
> ewl_iconbox.c
>
>
> Log Message:
> * It seems setting an ewl_text to "" seems to cause a lockup now
>
>
> ===================================================================
> RCS file: /cvsroot/enlightenment/e17/libs/ewl/src/lib/ewl_iconbox.c,v
> retrieving revision 1.79
> retrieving revision 1.80
> diff -u -3 -r1.79 -r1.80
> --- ewl_iconbox.c 21 Nov 2005 23:25:15 -0000 1.79
> +++ ewl_iconbox.c 22 Nov 2005 05:14:57 -0000 1.80
> @@ -180,8 +180,6 @@
>
> /*Set the defaults to 0 for layout*/
> ib->lx = ib->ly = ib->iw = ib->ih = 0;
> -
> -
>
> ib->ewl_iconbox_pane_inner = ewl_overlay_new();
> ewl_container_child_append(EWL_CONTAINER(ib->ewl_iconbox_scrollpane),
> ib->ewl_iconbox_pane_inner);
> @@ -195,12 +193,10 @@
> /*-------------------------------------------*/
> /* Get the context menu ready */
> ib->ewl_iconbox_context_menu = ewl_menu_new();
> - ewl_menu_item_text_set(EWL_MENU_ITEM(ib->ewl_iconbox_context_menu), "");
> + ewl_menu_item_text_set(EWL_MENU_ITEM(ib->ewl_iconbox_context_menu), "
> ");
> ewl_container_child_append(EWL_CONTAINER(ib->ewl_iconbox_menu_floater),
> ib->ewl_iconbox_context_menu);
> ewl_widget_show(ib->ewl_iconbox_context_menu);
>
> -
> -
> /* Add auto-arrange ability */
> ib->ewl_iconbox_view_menu = ewl_menu_new();
> ewl_menu_item_text_set(EWL_MENU_ITEM(ib->ewl_iconbox_view_menu),
> @@ -236,7 +232,7 @@
> ib->ewl_iconbox_pane_inner);
>
> ib->icon_menu = ewl_menu_new();
> - ewl_menu_item_text_set(EWL_MENU_ITEM(ib->icon_menu), "");
> + ewl_menu_item_text_set(EWL_MENU_ITEM(ib->icon_menu), " ");
> ewl_container_child_append(EWL_CONTAINER(ib->icon_menu_floater),
> ib->icon_menu);
> ewl_widget_show(ib->icon_menu);
>
> @@ -250,7 +246,6 @@
>
> ewl_container_child_append(EWL_CONTAINER(ib->ewl_iconbox_pane_inner),
> ib->icon_menu_floater);
>
> -
>
>
> /*-----------------------------------*/
> @@ -287,7 +282,6 @@
> ewl_widget_show(ib->select);
> /*ewl_widget_show(ib->select_floater);*/
>
> -
>
> /*Init the icon list*/
> ib->ewl_iconbox_icon_list = ecore_list_new();
> @@ -295,6 +289,10 @@
> /* Show widgets */
> ewl_widget_show(ib->ewl_iconbox_pane_inner);
> ewl_widget_show(ib->ewl_iconbox_scrollpane);
> + ewl_widget_show(ib->ewl_iconbox_menu_floater);
> + ewl_widget_show(ib->icon_menu_floater);
> +
> +
>
> /* Ewl Entry for the purposes of label editing - if enabled */
> ib->entry = ewl_entry_new();
> @@ -332,7 +330,7 @@
> ewl_callback_append(ib->ewl_iconbox_pane_inner, EWL_CALLBACK_MOUSE_UP,
> ewl_iconbox_mouse_up,
> ib);
> ewl_callback_append(ib->ewl_iconbox_pane_inner,
> EWL_CALLBACK_DND_POSITION, ewl_iconbox_dnd_position_cb,
> ib);
> ewl_callback_append(EWL_WIDGET(ib), EWL_CALLBACK_CONFIGURE,
> ewl_iconbox_configure_cb,
> NULL);
> - ewl_callback_prepend(EWL_WIDGET(ib), EWL_CALLBACK_DESTROY,
> ewl_iconbox_destroy_cb,
> NULL);
> + ewl_callback_append(EWL_WIDGET(ib), EWL_CALLBACK_DESTROY,
> ewl_iconbox_destroy_cb,
> NULL);
>
>
> /*printf("Setup the iconbox...\n");*/
> @@ -1047,8 +1045,11 @@
> if (ev->button == 3 /* Confirm that this is not an icon event */ &&
> (ib->xdown
> != ev->x && ib->ydown != ev->y)) {
> /*printf ("Context menu: %d,%d\n", ev->x, ev->y);*/
>
> - ewl_callback_call(EWL_WIDGET(ib->ewl_iconbox_context_menu),
> EWL_CALLBACK_SELECT);
>
> ewl_floater_position_set(EWL_FLOATER(ib->ewl_iconbox_menu_floater), ev->x-ibx
> + abs(px-ibx), ev->y-iby +abs(py-iby));
> + //ewl_widget_show(ib->ewl_iconbox_view_menu);
> + //ewl_widget_show(ib->ewl_iconbox_context_menu);
> +
> //ewl_menu_popup_move_cb(EWL_MENU(ib->ewl_iconbox_context_menu)->base.popup,
> NULL, ib->ewl_iconbox_context_menu);
> + ewl_callback_call(EWL_WIDGET(ib->ewl_iconbox_context_menu),
> EWL_CALLBACK_SELECT);
> } else if (ev->button == 1 /* Confirm that this is not an icon event */
> && (ib->xdown
> != ev->x && ib->ydown != ev->y)) {
> ewl_object_custom_size_set(EWL_OBJECT(ib->select), 1, 1);
>
>
>
>
>
> -------------------------------------------------------
> This SF.Net email is sponsored by the JBoss Inc. Get Certified Today
> Register for a JBoss Training Course. Free Certification Exam
> for All Training Attendees Through End of 2005. For more info visit:
> http://ads.osdn.com/?ad_id=7628&alloc_id=16845&op=click
> _______________________________________________
> enlightenment-cvs mailing list
> [email protected]
> https://lists.sourceforge.net/lists/listinfo/enlightenment-cvs
>
-------------------------------------------------------
This SF.Net email is sponsored by the JBoss Inc. Get Certified Today
Register for a JBoss Training Course. Free Certification Exam
for All Training Attendees Through End of 2005. For more info visit:
http://ads.osdn.com/?ad_id=7628&alloc_id=16845&op=click
_______________________________________________
enlightenment-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel