Hirofumi Katayama : notepad: Cancel closing window by cancelling "Save As" dialog box.

Alexandre Julliard julliard at winehq.org
Thu Sep 11 08:00:11 CDT 2008


Module: wine
Branch: master
Commit: 32b6a1a08c6d50efbc2cee0e785856bf32c8a15a
URL:    http://source.winehq.org/git/wine.git/?a=commit;h=32b6a1a08c6d50efbc2cee0e785856bf32c8a15a

Author: Hirofumi Katayama <katayama.hirofumi.mz at gmail.com>
Date:   Tue Sep  9 12:44:36 2008 +0900

notepad: Cancel closing window by cancelling "Save As" dialog box.

---

 programs/notepad/dialog.c |   12 +++++++-----
 programs/notepad/dialog.h |    4 ++--
 2 files changed, 9 insertions(+), 7 deletions(-)

diff --git a/programs/notepad/dialog.c b/programs/notepad/dialog.c
index 716abd8..0595f69 100644
--- a/programs/notepad/dialog.c
+++ b/programs/notepad/dialog.c
@@ -182,8 +182,7 @@ BOOL DoCloseFile(void)
         /* prompt user to save changes */
         nResult = AlertFileNotSaved(Globals.szFileName);
         switch (nResult) {
-            case IDYES:     DIALOG_FileSave();
-                            break;
+            case IDYES:     return DIALOG_FileSave();
 
             case IDNO:      break;
 
@@ -316,15 +315,16 @@ VOID DIALOG_FileOpen(VOID)
 }
 
 
-VOID DIALOG_FileSave(VOID)
+BOOL DIALOG_FileSave(VOID)
 {
     if (Globals.szFileName[0] == '\0')
-        DIALOG_FileSaveAs();
+        return DIALOG_FileSaveAs();
     else
         DoSaveFile();
+    return TRUE;
 }
 
-VOID DIALOG_FileSaveAs(VOID)
+BOOL DIALOG_FileSaveAs(VOID)
 {
     OPENFILENAME saveas;
     WCHAR szPath[MAX_PATH];
@@ -352,7 +352,9 @@ VOID DIALOG_FileSaveAs(VOID)
         SetFileName(szPath);
         UpdateWindowCaption();
         DoSaveFile();
+        return TRUE;
     }
+    return FALSE;
 }
 
 typedef struct {
diff --git a/programs/notepad/dialog.h b/programs/notepad/dialog.h
index b141de7..d780991 100644
--- a/programs/notepad/dialog.h
+++ b/programs/notepad/dialog.h
@@ -20,8 +20,8 @@
 
 VOID DIALOG_FileNew(VOID);
 VOID DIALOG_FileOpen(VOID);
-VOID DIALOG_FileSave(VOID);
-VOID DIALOG_FileSaveAs(VOID);
+BOOL DIALOG_FileSave(VOID);
+BOOL DIALOG_FileSaveAs(VOID);
 VOID DIALOG_FilePrint(VOID);
 VOID DIALOG_FilePageSetup(VOID);
 VOID DIALOG_FilePrinterSetup(VOID);




More information about the wine-cvs mailing list