diff options
author | das <das> | 2007-05-09 12:55:15 (GMT) |
---|---|---|
committer | das <das> | 2007-05-09 12:55:15 (GMT) |
commit | c0e4ec8c452c01a8d95608e922f8bd3657c10ccb (patch) | |
tree | 506fdf03b09705deab71a428fb32dc8204a24c92 /macosx/tkMacOSXDialog.c | |
parent | b7ca14476921fec908be93647b91fe3947b5f824 (diff) | |
download | tk-c0e4ec8c452c01a8d95608e922f8bd3657c10ccb.zip tk-c0e4ec8c452c01a8d95608e922f8bd3657c10ccb.tar.gz tk-c0e4ec8c452c01a8d95608e922f8bd3657c10ccb.tar.bz2 |
* macosx/tkMacOSXWindowEvent.c: ensure window is brought to the front
* macosx/tkMacOSXMouseEvent.c: at the start of a window drag (except
* macosx/tkMacOSXInt.h: when cmd key is down); formatting and
whitespace fixes.
* macosx/tkMacOSXDialog.c (Tk_GetSaveFileObjCmd): add -filetypes option
processing (fixes fileDialog-0.1, fileDialog-0.2 failures).
* macosx/tkMacOSXEmbed.c (TkpMakeWindow, TkpUseWindow): fix sending of
Visibility event for embedded windows (fixes frame-3.9 hang).
* macosx/tkMacOSXScrlbr.c (ScrollbarBindProc): fix testsuite
* macosx/tkMacOSXSubwindows.c (TkMacOSXUpdateClipRgn): crashes by
adding sanity checks.
* macosx/Wish.xcodeproj/project.pbxproj: add 'DebugUnthreaded' &
* macosx/Wish.xcodeproj/default.pbxuser: 'DebugLeaks' targets and env
var settings needed to run the 'leaks' tool.
* macosx/tkMacOSXButton.c: fix debug msg typo.
Diffstat (limited to 'macosx/tkMacOSXDialog.c')
-rw-r--r-- | macosx/tkMacOSXDialog.c | 14 |
1 files changed, 10 insertions, 4 deletions
diff --git a/macosx/tkMacOSXDialog.c b/macosx/tkMacOSXDialog.c index 114962b..14117ac 100644 --- a/macosx/tkMacOSXDialog.c +++ b/macosx/tkMacOSXDialog.c @@ -10,7 +10,7 @@ * See the file "license.terms" for information on usage and redistribution * of this file, and for a DISCLAIMER OF ALL WARRANTIES. * - * RCS: @(#) $Id: tkMacOSXDialog.c,v 1.24 2007/04/23 21:24:33 das Exp $ + * RCS: @(#) $Id: tkMacOSXDialog.c,v 1.25 2007/05/09 12:55:15 das Exp $ */ #include "tkMacOSXInt.h" @@ -424,9 +424,14 @@ Tk_GetSaveFileObjCmd( InitFileDialogs(); } + TkInitFileFilters(&ofd.fl); + ofd.curType = 0; + ofd.usePopup = 0; + for (i = 1; i < objc; i += 2) { char *choice, *string; int index, choiceLen; + Tcl_Obj *types; if (Tcl_GetIndexFromObj(interp, objv[i], saveOptionStrings, "option", TCL_EXACT, &index) != TCL_OK) { @@ -442,7 +447,10 @@ Tk_GetSaveFileObjCmd( case SAVE_DEFAULT: break; case SAVE_FILETYPES: - /* Currently unimplemented - what would we do here anyway? */ + types = objv[i + 1]; + if (TkGetFileFilters(interp, &ofd.fl, types, 0) != TCL_OK) { + goto end; + } break; case SAVE_INITDIR: choice = Tcl_GetStringFromObj(objv[i + 1], &choiceLen); @@ -480,8 +488,6 @@ Tk_GetSaveFileObjCmd( } } - TkInitFileFilters(&ofd.fl); - ofd.usePopup = 0; if (initialDesc.descriptorType == typeFSRef) { initialPtr = &initialDesc; } |