Enlightenment CVS committal Author : lordchaos Project : e17 Module : proto
Dir : e17/proto/entropy/src/plugins Modified Files: ewl_icon_local_viewer.c Log Message: * Mouse support for file delete =================================================================== RCS file: /cvsroot/enlightenment/e17/proto/entropy/src/plugins/ewl_icon_local_viewer.c,v retrieving revision 1.38 retrieving revision 1.39 diff -u -3 -r1.38 -r1.39 --- ewl_icon_local_viewer.c 11 Dec 2005 06:30:01 -0000 1.38 +++ ewl_icon_local_viewer.c 11 Dec 2005 06:56:38 -0000 1.39 @@ -34,6 +34,7 @@ void gui_event_callback(entropy_notify_event* eevent, void* requestor, void* ret, void* user_data); +void ewl_icon_local_viewer_delete_selected(entropy_gui_component_instance* instance); @@ -329,14 +330,16 @@ ecore_list_destroy(file_list); } +void ewl_icon_local_viewer_menu_delete_cb (Ewl_Widget *w , void *ev_data , void *user_data ) { + /*User_data is entropy_gui_component_instance*/ + ewl_icon_local_viewer_delete_selected(user_data); +} -void ewl_icon_local_viewer_key_event_cb(Ewl_IconBox* ib, void* data, char* key) { - entropy_icon_viewer* viewer = ((entropy_gui_component_instance*)data)->data; - - printf("Received controlled key: '%s'\n", key); +void ewl_icon_local_viewer_delete_selected(entropy_gui_component_instance* instance) { + Ewl_IconBox* ib = EWL_ICONBOX(((entropy_icon_viewer*)instance->data)->iconbox); + entropy_icon_viewer* viewer= instance->data; - if (!strcmp(key, "Delete")) { Ecore_List* new_file_list = ecore_list_new(); Ecore_List* icon_list; entropy_generic_file* file; @@ -351,7 +354,7 @@ /*This is kind of awkward - the first item on the list is * the plugin instance reference*/ - ecore_list_append(new_file_list, data); + ecore_list_append(new_file_list, instance); dialog_win = ewl_dialog_new(); ewl_window_title_set(EWL_WINDOW(dialog_win), "Delete?"); @@ -367,7 +370,7 @@ ////////////////////// - icon_list = ewl_iconbox_get_selection(EWL_ICONBOX(viewer->iconbox) ); + icon_list = ewl_iconbox_get_selection(EWL_ICONBOX(ib) ); ecore_list_goto_first(icon_list); while ( (list_item = ecore_list_next(icon_list)) ) { @@ -399,6 +402,16 @@ ewl_widget_show(dialog_win); +} + + +void ewl_icon_local_viewer_key_event_cb(Ewl_IconBox* ib, void* data, char* key) { + entropy_icon_viewer* viewer = ((entropy_gui_component_instance*)data)->data; + + printf("Received controlled key: '%s'\n", key); + + if (!strcmp(key, "Delete")) { + ewl_icon_local_viewer_delete_selected(data); } } @@ -504,7 +517,7 @@ ewl_menu_item_image_set(EWL_MENU_ITEM(context), PACKAGE_DATA_DIR "/icons/e17_button_detail_delete.png"); ewl_widget_show(context); ewl_iconbox_icon_menu_item_add(EWL_ICONBOX(viewer->iconbox), context); - //ewl_callback_append(context, EWL_CALLBACK_MOUSE_DOWN, icon_properties_cb, instance); + ewl_callback_append(context, EWL_CALLBACK_CLICKED, ewl_icon_local_viewer_menu_delete_cb, instance); /*Icon menu*/ context = ewl_menu_item_new(); ------------------------------------------------------- This SF.net email is sponsored by: Splunk Inc. Do you grep through log files for problems? Stop! Download the new AJAX search engine that makes searching your log files as easy as surfing the web. DOWNLOAD SPLUNK! http://ads.osdn.com/?ad_id=7637&alloc_id=16865&op=click _______________________________________________ enlightenment-cvs mailing list enlightenment-cvs@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-cvs