diff options
Diffstat (limited to 'win/tkWinDialog.c')
-rw-r--r-- | win/tkWinDialog.c | 20 |
1 files changed, 11 insertions, 9 deletions
diff --git a/win/tkWinDialog.c b/win/tkWinDialog.c index aca8e5d..457f0e9 100644 --- a/win/tkWinDialog.c +++ b/win/tkWinDialog.c @@ -591,7 +591,8 @@ GetFileNameW( WCHAR file[TK_MULTI_MAX_PATH]; OFNData ofnData; int cdlgerr; - int filterIndex = 0, result = TCL_ERROR, winCode, oldMode, i, multi = 0, noComplain = 0; + int filterIndex = 0, result = TCL_ERROR, winCode, oldMode, i, multi = 0; + int confirmOverwrite = 1; char *extension = NULL, *title = NULL; Tk_Window tkwin = (Tk_Window) clientData; HWND hWnd; @@ -602,8 +603,9 @@ GetFileNameW( ThreadSpecificData *tsdPtr = (ThreadSpecificData *) Tcl_GetThreadData(&dataKey, sizeof(ThreadSpecificData)); static CONST char *saveOptionStrings[] = { - "-defaultextension", "-filetypes", "-initialdir", "-initialfile", - "-parent", "-title", "-typevariable", "-nocomplain", NULL + "-confirmoverwrite", "-defaultextension", "-filetypes", + "-initialdir", "-initialfile", "-parent", "-title", + "-typevariable", "-nocomplain", NULL }; static CONST char *openOptionStrings[] = { "-defaultextension", "-filetypes", "-initialdir", "-initialfile", @@ -612,9 +614,9 @@ GetFileNameW( CONST char **optionStrings; enum options { - FILE_DEFAULT, FILE_TYPES, FILE_INITDIR, FILE_INITFILE, - FILE_MULTIPLE, FILE_PARENT, FILE_TITLE, FILE_TYPEVARIABLE, - FILE_NOCOMPLAIN + FILE_CONFOW, FILE_DEFAULT, FILE_TYPES, FILE_INITDIR, + FILE_INITFILE, FILE_MULTIPLE, FILE_PARENT, FILE_TITLE, + FILE_TYPEVARIABLE }; file[0] = '\0'; @@ -713,8 +715,8 @@ GetFileNameW( initialTypeObj = Tcl_ObjGetVar2(interp, typeVariableObj, NULL, TCL_GLOBAL_ONLY); break; - case FILE_NOCOMPLAIN: - if (Tcl_GetBooleanFromObj(interp, valuePtr, &noComplain) != TCL_OK) { + case FILE_CONFOW: + if (Tcl_GetBooleanFromObj(interp, valuePtr, &confirmOverwrite) != TCL_OK) { return TCL_ERROR; } break; @@ -746,7 +748,7 @@ GetFileNameW( if (open != 0) { ofn.Flags |= OFN_FILEMUSTEXIST; - } else if (noComplain == 0) { + } else if (confirmOverwrite) { ofn.Flags |= OFN_OVERWRITEPROMPT; } if (tsdPtr->debugFlag != 0) { |