From bd20d85cc9b901fbf822fd813df8b68bab3f4dca Mon Sep 17 00:00:00 2001 From: Yves Rizoud Date: Fri, 13 Aug 2010 19:45:25 +0000 Subject: [PATCH] Fix confirmation box when dragging a file on unsaved image. git-svn-id: svn://pulkomandy.tk/GrafX2/trunk@1571 416bcca6-2ee7-4201-b75f-2eb2f807beb1 --- src/engine.c | 28 ++++++++++++++++++++-------- 1 file changed, 20 insertions(+), 8 deletions(-) diff --git a/src/engine.c b/src/engine.c index e1ef0a85..d73a538c 100644 --- a/src/engine.c +++ b/src/engine.c @@ -662,13 +662,13 @@ void Main_handler(void) else if (Drop_file_name) { // A file was dragged into Grafx2's window - Upload_infos_page_main(Main_backups->Pages); - if ( (!Main_image_is_modified) || Confirmation_box("Discard unsaved changes ?") ) { T_IO_Context context; char* flimit; byte old_cursor_shape; + + Upload_infos_page_main(Main_backups->Pages); flimit = Find_last_slash(Drop_file_name); *(flimit++) = '\0'; @@ -680,17 +680,29 @@ void Main_handler(void) Init_context_layered_image(&context, flimit, Drop_file_name); Load_image(&context); + if (File_error!=1) + { + Compute_limits(); + Compute_paintbrush_coordinates(); + Redraw_layered_image(); + End_of_modification(); + Display_all_screen(); + Main_image_is_modified=0; + } Destroy_context(&context); - Redraw_layered_image(); + + Compute_optimal_menu_colors(Main_palette); + Display_menu(); + if (Config.Display_image_limits) + Display_image_limits(); + Hide_cursor(); Cursor_shape=old_cursor_shape; - Display_cursor(); - End_of_modification(); Display_all_screen(); - - free(Drop_file_name); - Drop_file_name=NULL; + Display_cursor(); } + free(Drop_file_name); + Drop_file_name=NULL; } if(Get_input())