diff options
Diffstat (limited to 'macosx')
30 files changed, 1273 insertions, 3566 deletions
diff --git a/macosx/Makefile b/macosx/Makefile index e611787..b4f77f7 100644 --- a/macosx/Makefile +++ b/macosx/Makefile @@ -4,7 +4,7 @@ # uses the standard unix build system in tk/unix (which can be used directly instead of this # if you are not using the tk/macosx projects). # -# RCS: @(#) $Id: Makefile,v 1.7.2.11 2005/06/18 21:47:47 das Exp $ +# RCS: @(#) $Id: Makefile,v 1.7.2.12 2005/11/27 02:36:46 das Exp $ # ######################################################################################################## @@ -100,7 +100,7 @@ TCL_VERSION := ${VERSION} wish := wish WISH = wish${VERSION} -BUILD_TARGET := wish +BUILD_TARGET := all tktest INSTALL_TARGET := install ifneq ($(wildcard ${TCL_BUILD_DIR}/tclConfig.sh),) @@ -135,7 +135,7 @@ endif MAKE_VARS += INSTALL_ROOT INSTALL_TARGETS VERSION MAKE_ARGS_V = $(foreach v,${MAKE_VARS},$v='${$v}') -build-${PROJECT}: target = ${TARGET} +build-${PROJECT}: target = ${BUILD_TARGET} install-${PROJECT}: target = ${INSTALL_TARGET} clean-${PROJECT} distclean-${PROJECT} test-${PROJECT}: \ target = $* @@ -164,12 +164,14 @@ TK_FMWK_DIR := ${FMWK_DIR}/${PRODUCT_NAME}.framework/Versions/${VERSION} ${PROJECT}: ${MAKE} install-${PROJECT} INSTALL_ROOT=${OBJ_DIR}/ -${OBJ_DIR}/Makefile: ${UNIX_DIR}/Makefile.in ${UNIX_DIR}/configure - mkdir -p ${OBJ_DIR} && cd ${OBJ_DIR} && ${UNIX_DIR}/configure \ +${OBJ_DIR}/Makefile: ${UNIX_DIR}/Makefile.in ${UNIX_DIR}/configure \ + ${UNIX_DIR}/tkConfig.sh.in Tk-Info.plist.in Wish-Info.plist.in + mkdir -p ${OBJ_DIR} && cd ${OBJ_DIR} && \ + if [ ${UNIX_DIR}/configure -nt config.status ]; then ${UNIX_DIR}/configure \ --prefix=${PREFIX} --bindir=${BINDIR} --libdir=${LIBDIR} \ --mandir=${MANDIR} --enable-threads --enable-framework \ --with-tcl=${TCL_DIR} \ - ${CONFIGURE_ARGS} ${EXTRA_CONFIGURE_ARGS} + ${CONFIGURE_ARGS} ${EXTRA_CONFIGURE_ARGS}; else ./config.status; fi ifneq (${TK_X11},) @cd ${OBJ_DIR} && sed -e 's#/Versions/${TCL_VERSION}#/Versions/${VERSION}#' \ tkConfig.sh > tkConfig.sh.1 && mv -f tkConfig.sh.1 tkConfig.sh diff --git a/macosx/README b/macosx/README index 70d1961..066c5d1 100644 --- a/macosx/README +++ b/macosx/README @@ -1,44 +1,51 @@ -TclTkAqua README ----------------- +Tcl/Tk Mac OS X README +---------------------- -RCS: @(#) $Id: README,v 1.6.2.8 2005/05/24 04:21:32 das Exp $ +RCS: @(#) $Id: README,v 1.6.2.9 2005/11/27 02:36:46 das Exp $ -This is the README file for the Mac OS X native versions of Tcl & Tk. +This is the README file for the Mac OS X/Darwin version of Tcl/Tk. -1. General ----------- +1. Where to go for support +-------------------------- -- The tcl-mac mailing list on sourceforge is the canonical place for questions +- The tcl-mac mailing list on sourceforge is the best place to ask questions specific to Tcl & Tk on Mac OS X: http://lists.sourceforge.net/lists/listinfo/tcl-mac (this page also has a link to searchable archives of the list, please check them before asking on the list, many questions have already been answered). -- For general tcl/tk questions, the newsgroup comp.lang.tcl is your best bet, -but also check the Tcl'ers Wiki for a wealth of information: - http://wiki.tcl.tk/ +- For general Tcl/Tk questions, the newsgroup comp.lang.tcl is your best bet: + http://groups.google.com/group/comp.lang.tcl/ -- The wiki has a page listing known bugs in Mac OS X Tcl/Tk (and other tips) - http://wiki.tcl.tk/MacOS%20X -as well as a page with info on building Tcl/Tk on Mac OS X - http://wiki.tcl.tk/Steps%20to%20build%20Tcl/Tk%208.4.0%20on%20MacOS%20X +- The Tcl'ers Wiki also has many pages dealing with Tcl & Tk on Mac OS X, see + http://wiki.tcl.tk/references/3753! + http://wiki.tcl.tk/references/8361! -- You should report bugs to the sourceforge bug trackers as usual: - Tcl: https://sourceforge.net/tracker/?func=add&group_id=10894&atid=110894 - Tk: https://sourceforge.net/tracker/?func=add&group_id=12997&atid=112997 -please make sure that your report Tk specific bugs to the tktoolkit bug -tracker and not the tcl one. +- Please report bugs with Tcl or Tk on Mac OS X to the sourceforge bug trackers: + Tcl: http://sf.net/tracker/?func=add&group_id=10894&atid=110894 + Tk: http://sf.net/tracker/?func=add&group_id=12997&atid=112997 +please make sure that your report Tk specific bugs to the tktoolkit project bug +tracker rather than the tcl project bug tracker. +Mac OS X specific bugs should usually be assigned to 'das' or 'wolfsuit'. -2. Using TclTkAqua ------------------- +2. Using Tcl/Tk on Mac OS X +--------------------------- -- Mac OS X 10.2 (or higher) is required to run TclTkAqua. +- There are two versions of Tk available on Mac OS X: TkAqua using the native +aqua widgets and look&feel, and TkX11 using the traditional unix X11 wigets. +TkX11 requires an X11 server to be installed, such as Apple's X11 (which is +available as an optional install on recent Mac OS X retail disks). +TkAqua and TkX11 can be distinguished at runtime via [tk windowingsystem]. -- Tcl built on Mac OS X 10.3 or higher will not run on 10.2 due to missing -symbols in libSystem, however Tcl built on 10.2 will run on 10.3 (but without -prebinding and other optimizations). +- At a minimum, Mac OS X 10.1 is required to run Tcl and TkX11, and OS X 10.2 is +required to run TkAqua. However OS X 10.3 or higher is recommended (certain +[file] operations behave incorrectly on earlier releases). + +- Tcl/Tk built on Mac OS X 10.x will not run on 10.y for y < x, on the other +hand Tcl/Tk built on 10.y will run on 10.x for y < x (but without any of the +fixes and optimizations that would be available in a binary built on 10.x). - Wish checks the Resources/Scripts directory in its application bundle for a file called AppMain.tcl, if found it is used as the startup script and the @@ -46,85 +53,81 @@ Scripts folder is added to the auto_path. This can be used to emulate the old OS9 TclTk droplets. - If standard input is a special file of zero length (e.g. /dev/null), Wish -brings up the tk console window at startup. This is the case when double +brings up the Tk console window at startup. This is the case when double clicking Wish in the Finder (or using 'open Wish.app' from the Terminal). -- Tcl extensions will be found in any of: +- Tcl extensions can be installed in any of: $HOME/Library/Tcl /Library/Tcl /Network/Library/Tcl /System/Library/Tcl $HOME/Library/Frameworks /Library/Frameworks /Network/Library/Frameworks /System/Library/Frameworks (searched in that order). Given a potential package directory $pkg, Tcl on OSX checks for the file $pkg/Resources/Scripts/pkgIndex.tcl as well as the usual $pkg/pkgIndex.tcl. -This allows building extensions as frameworks with all script files contained -in the Resources/Scripts directory of the framework. +This allows building extensions as frameworks with all script files contained in +the Resources/Scripts directory of the framework. + +- [load]able binary extensions can linked as either ordinary shared libraries +(.dylib) or as MachO bundles (since 8.4.10/8.5a3); only bundles can be unloaded, +and bundles are also loaded more efficiently from VFS (no temporary copy to the +native filesystem required). -- The Tcl and Tk frameworks contain documentation in html format in the -standard location for frameworks: +- The 'deploy' target of macosx/GNUmakefile installs the html manpages into the +standard documentation location in the Tcl/Tk frameworks: Tcl.framework/Resources/Documentation/Reference/Tcl Tk.framework/Resources/Documentation/Reference/Tk -No manpages are installed by default for either tcl or tk. +No nroff manpages are installed by default by the GNUmakefiles. -- the frameworks Tcl.framework and Tk.framework can be placed in any of the -system's standard framework directories: +- The Tcl and Tk frameworks can be installed in any of the system's standard +framework directories: $HOME/Library/Frameworks /Library/Frameworks /Network/Library/Frameworks /System/Library/Frameworks -and 'Wish' as well as /usr/bin/tclsh will work. -- /usr/bin/wish is a script that calls a copy of 'Wish' contained in +- /usr/bin/wish8.x is a script that calls a copy of 'Wish' contained in Tk.framework/Resources - if 'Wish' is started from the Finder or via 'open', $argv contains a "-psn_XXXX" argument. This is the Wish's carbon process serial number, you may need to filter it out for cross platform compatibility of your scripts. -- the env array is different when Wish is started from the Finder than when -it (or tclsh) is invoked from the Terminal, in particular PATH may not be what -you expect. (Wish started from the Finder inherits the Finder's environment +- the env array is different when Wish is started from the Finder than when it +(or tclsh) is invoked from the Terminal, in particular PATH may not be what you +expect. (Wish started from the Finder inherits the Finder's environment variables, which are essentially those set in $HOME/.MacOSX/environment.plist and not those set by your shell configuration files). -- As of Tk 8.4.7, AquaTk has a version of the low-level drawing primitives using +- As of Tk 8.4.7, TkAqua has a version of the low-level drawing primitives using the CoreGraphics routines - the code is primarily due to James Tittle. There were numerous problems with the QD version, mostly due to the different drawing -model of QD & Tk. CG also trivially supports dashed lines, and the various end -caps & miters. So this is a great improvement. - -The old QD code is retained for now, just in case there are any -compatibility problems. To switch back to the QD drawing, just put: - -set tk::mac::useCGDrawing 0 - -in your script before you do drawing. Also the CG drawing can anti-alias line drawing. -However, anti-aliased thin lines look washed out, so the threshold for antialiasing -is set to 3 pixel width lines. You can change this if you want by putting: - -set tk::mac::CGAntialiasLimit <limit> - -in your script before drawing, in which case only lines thinner that <limit> pixels -will not be antialiased. +model of QD & Tk. CG also trivially supports dashed lines, and the various end +caps & miters. So this is a great improvement. +The old QD code is retained for now, just in case there are any compatibility +problems. To switch back to the QD drawing, just put: + set tk::mac::useCGDrawing 0 +in your script before you do drawing. Also the CG drawing can anti-alias line +drawing. However, anti-aliased thin lines look washed out, so the threshold for +antialiasing is set to 3 pixel width lines. You can change this if you want by +putting: + set tk::mac::CGAntialiasLimit <limit> +in your script before drawing, in which case only lines thinner that <limit> +pixels will not be antialiased. - Quickdraw text antialiasing is enabled by default when available (from 10.1.5 onwards). Changing the global boolean variable '::tk::mac::antialiasedtext' -allows to dis/enable antialiasing on the fly from tcl (even for existing text). +allows to dis/enable antialiasing on the fly from Tcl (even for existing text). -- the format of binary extensions expected by [load] is that of ordinary shared -libraries (.dylib) and not MachO bundles, at present loading of MachO bundles is -not supported. +- Scrollbars: There are two scrollbar variants in Aqua, normal & small. The +normal scrollbar has a small dimension of 16, the small variant 12. Access to +the small variant was added in Tk 8.4.2. -- Scrollbars: There are two scrollbar variants in Aqua, normal & small. The -normal scrollbar has a small dimension of 16, the small variant 12. Access -to the small variant was added in Tk 8.4.2. - -- Cursors: You can now put up and spin the Classic MacOS spinner, and the -counting hands and watch cursor. The way this is done is each of the spinners +- Cursors: You can now put up and spin the Classic MacOS spinner, and the +counting hands and watch cursor. The way this is done is each of the spinners have a base name: spinning: The circular B&W circular spinner countinguphand: The counting up hand countingdownhand: The counting down hand countingupanddownhand: The counting up then down hand watch: The watch cursor -Then to get the sequential variants, add an integer to the end of the base -name. So, for instance this code will spin the spinner: +Then to get the sequential variants, add an integer to the end of the base name. +So, for instance this code will spin the spinner: proc spinCursor {widget count} { $widget configure -cursor spinning$count after 100 spinCursor [incr count] @@ -132,27 +135,50 @@ name. So, for instance this code will spin the spinner: This was added in Tk 8.4.2 -3. Building TclTkAqua ---------------------- - -- Mac OS X 10.2 (or higher) is required to build TclTkAqua on MacOSX. - -- Apple's Developer Tools CD needs to be installed (the most recent version -matching your OS release, but no earlier than December 2002). This CD should -have come with Mac OS X retail or should be present as a disk image on new macs -that came with OSX preinstalled. It can also be downloaded from -http://connect.apple.com (after you register for free ADC membership). - -- Tcl and Tk are built as a Mac OS X frameworks via the Makefiles in tcl/macosx -and tk/macosx, but can also be built directly with the standard unix configure -and make buildsystem in tcl/unix resp. tk/unix. - -- It is still possible to build with Apple's Xcode IDE using the Tcl.pbproj and -Wish.pbproj projects but this is not recommended anymore (currently Tcl.pbproj -calls through to the tcl/macosx/Makefile; but Wish.pbproj doesn't, so there could -be build differences). - -- Unpack the tcl and tk source release archives and place the tcl and tk source +3. Building Tcl/Tk on Mac OS X +------------------------------ + +- At least Mac OS X 10.1 is required to build Tcl and TkX11 and OS X 10.2 is +required to build TkAqua. Apple's Developer Tools need to be installed (only the +most recent version matching your OS release is supported). The Developer Tools +installer is available on Mac OS X retail disks or is present in +/Applications/Installers on Macs that came with OS X preinstalled. The most +recent version can be downloaded from the ADC website http://connect.apple.com +(after you register for free ADC membership). + +- Tcl/Tk are most easily built as Mac OS X frameworks via GNUmakefile in +tcl/macosx and tk/macosx (see below for details), but can also be built with the +standard unix configure and make buildsystem in tcl/unix resp. tk/unix as on any +other unix platform (indeed, the GNUmakefiles are just wrappers around the unix +buildsystem). +The Mac OS X specifc configure flags are --enable-aqua, --enable-framework and +--disable-corefoundation (which disables CF and notably reverts to the standard +select based notifier, you will only need this if your require use of naked fork +(i.e. not followed by execve) in an unthreaded core). Note that --enable-aqua is +incompatible with --disable-corefoundation (for both Tcl and Tk configure). + +- It is also possible to build with Apple's IDE via the tk/macosx/Wish.pbproj +project, this simply calls through to the tk/macosx/GNUMakefile. It requires a +build of the tcl/macosx/Tcl.pbproj project. + +- To build universal binaires, set CFLAGS as follows: + export CFLAGS="-arch ppc -arch i386 \ + -isysroot /Developer/SDKs/MacOSX10.4u.sdk -mmacosx-version-min=10.4" +This requires Mac OS X 10.4 and Xcode 2.2 (_not_ Xcode 2.1) and will work on +any of the architectures (on i386 DTKs, the -isysroot is not required). +Note that it is not possible to configure correctly if the current architecture +is not present in CFLAGS (i.e. -arch `arch` must always be there). +Universal builds of Tk TEA extensions are also possible with CFLAGS set as +above, they will be [load]able by universal as well as thin binaries of Tk. +Note that while Tcl can be built for the ppc64 architecture, neither TkAqua nor +TkX11 can be built with -arch ppc64 as the corresponding GUI libraries are not +available for 64bit at present. However, linking a universal 'ppc i386' Tk +binary against a universal 'ppc ppc64 i386' Tcl binary works just fine. + +Detailed Instructions for building with macosx/GNUmakefile +---------------------------------------------------------- + +- Unpack the Tcl and Tk source release archives and place the tcl and tk source trees in a common parent directory. [ If you don't want have the two source trees in one directory, you'll need to ] [ create the following symbolic link for the build to work as setup by default ] @@ -160,17 +186,17 @@ trees in a common parent directory. [ (where /path_to_{tcl,tk} is the directory containing the tcl resp. tk tree) ] [ or you can pass an argument of BUILD_DIR=/somewhere to the tcl and tk make. ] -- The following instructions assume the tcl and tk source trees are named +- The following instructions assume the Tcl and Tk source trees are named "tcl${ver}" and "tk${ver}", respectively, where ${ver} is a shell variable -containing the tcl and tk version number (for example '8.4.2'). +containing the Tcl and Tk version number (for example '8.4.12'). Setup the shell variable as follows: - set ver="8.4.2" ;: if your shell is csh - ver="8.4.2" ;: if your shell is sh + set ver="8.4.12" ;: if your shell is csh + ver="8.4.12" ;: if your shell is sh The source trees will be named this way only if you are building from a release archive, if you are building from CVS, the version numbers will be missing; so set ${ver} to the empty string instead: - set ver="" ;: if your shell is csh - ver="" ;: if your shell is sh + set ver="" ;: if your shell is csh + ver="" ;: if your shell is sh - The following steps will build Tcl and Tk from the Terminal, assuming you are located in the directory containing the tcl and tk source trees: @@ -221,13 +247,12 @@ Notes: - It is possible to build Tk against an installed Tcl.framework; but you will still need a tcl sourcetree in the location specified in TCL_SRC_DIR in -Tcl.framework/tclConfig.sh. Also, linking with Tcl.framework has to work -exactly as indicated in TCL_LIB_SPEC in Tcl.framework/tclConfig.sh. +Tcl.framework/tclConfig.sh. Also, linking with Tcl.framework has to work exactly +as indicated in TCL_LIB_SPEC in Tcl.framework/tclConfig.sh. If you used non-default install locations for Tcl.framework, specify them as make overrides to the tk/macosx Makefile, e.g. make -C tk${ver}/macosx \ TCL_FRAMEWORK_DIR=$HOME/Library/Frameworks TCLSH_DIR=$HOME/usr/bin sudo make -C tk${ver}/macosx install \ TCL_FRAMEWORK_DIR=$HOME/Library/Frameworks TCLSH_DIR=$HOME/usr/bin - The Makefile variables TCL_FRAMEWORK_DIR and TCLSH_DIR were added in Tk 8.4.3. diff --git a/macosx/Wish.pbproj/default.pbxuser b/macosx/Wish.pbproj/default.pbxuser new file mode 100644 index 0000000..aafee5a --- /dev/null +++ b/macosx/Wish.pbproj/default.pbxuser @@ -0,0 +1,178 @@ +// !$*UTF8*$! +{ + F537552A016C352C01DC9062 = { + activeBuildStyle = F537552C016C352C01DC9062; + activeExecutable = F9F6B1E308E8648C00C9CB24; + activeTarget = F9D6747B08E84DC100688CAA; + addToTargets = ( + ); + codeSenseManager = F9D7368F06AD399F00DC3A31; + executables = ( + F9F6B1EB08E864DC00C9CB24, + F9F6B1E308E8648C00C9CB24, + ); + sourceControlManager = F9D7368E06AD399F00DC3A31; + userBuildSettings = { + SYMROOT = "${SRCROOT}/../../build/tk"; + }; + }; + F9D6747B08E84DC100688CAA = { + activeExec = 0; + }; + F9D7368E06AD399F00DC3A31 = { + fallbackIsa = XCSourceControlManager; + isSCMEnabled = 0; + isa = PBXSourceControlManager; + scmConfiguration = { + }; + scmType = scm.cvs; + }; + F9D7368F06AD399F00DC3A31 = { + indexTemplatePath = ""; + isa = PBXCodeSenseManager; + usesDefaults = 1; + wantsCodeCompletion = 1; + wantsCodeCompletionAutoSuggestions = 1; + wantsCodeCompletionCaseSensitivity = 1; + wantsCodeCompletionListAlways = 1; + wantsCodeCompletionOnlyMatchingItems = 1; + wantsCodeCompletionParametersIncluded = 1; + wantsCodeCompletionPlaceholdersInserted = 1; + wantsCodeCompletionTabCompletes = 1; + wantsIndex = 1; + }; + F9F6B1E308E8648C00C9CB24 = { + activeArgIndex = 2147483647; + activeArgIndices = ( + ); + argumentStrings = ( + ); + configStateDict = { + "PBXLSLaunchAction-0" = { + PBXLSLaunchAction = 0; + PBXLSLaunchStartAction = 1; + PBXLSLaunchStdioStyle = 2; + PBXLSLaunchStyle = 0; + class = PBXLSRunLaunchConfig; + displayName = "Executable Runner"; + identifier = com.apple.Xcode.launch.runConfig; + remoteHostInfo = ""; + startActionInfo = ""; + }; + "PBXLSLaunchAction-1" = { + PBXLSLaunchAction = 1; + PBXLSLaunchStartAction = 1; + PBXLSLaunchStdioStyle = 2; + PBXLSLaunchStyle = 0; + class = PBXGDB_LaunchConfig; + displayName = GDB; + identifier = com.apple.Xcode.launch.GDBMI_Config; + remoteHostInfo = ""; + startActionInfo = ""; + }; + }; + cppStopOnCatchEnabled = 0; + cppStopOnThrowEnabled = 0; + customDataFormattersEnabled = 1; + debuggerPlugin = GDBDebugging; + disassemblyDisplayState = 0; + dylibVariantSuffix = _debug; + enableDebugStr = 0; + environmentEntries = ( + { + active = NO; + name = DYLD_PRINT_LIBRARIES; + }, + ); + isa = PBXExecutable; + launchableReference = F9F6B1E408E8648C00C9CB24; + libgmallocEnabled = 0; + name = Wish; + shlibInfoDictList = ( + ); + sourceDirectories = ( + ); + }; + F9F6B1E408E8648C00C9CB24 = { + isa = PBXFileReference; + lastKnownFileType = wrapper.application; + path = Wish.app; + refType = 3; + sourceTree = BUILT_PRODUCTS_DIR; + }; + F9F6B1EB08E864DC00C9CB24 = { + activeArgIndex = 2147483647; + activeArgIndices = ( + NO, + NO, + NO, + ); + argumentStrings = ( + "${SRCROOT}/../../tcl/tests/all.tcl", + "${SRCROOT}/../../tk/tests/all.tcl", + "-verbose \"\"", + ); + configStateDict = { + "PBXLSLaunchAction-0" = { + PBXLSLaunchAction = 0; + PBXLSLaunchStartAction = 1; + PBXLSLaunchStdioStyle = 2; + PBXLSLaunchStyle = 0; + class = PBXLSRunLaunchConfig; + displayName = "Executable Runner"; + identifier = com.apple.Xcode.launch.runConfig; + remoteHostInfo = ""; + startActionInfo = ""; + }; + "PBXLSLaunchAction-1" = { + PBXLSLaunchAction = 1; + PBXLSLaunchStartAction = 1; + PBXLSLaunchStdioStyle = 2; + PBXLSLaunchStyle = 0; + class = PBXGDB_LaunchConfig; + displayName = GDB; + identifier = com.apple.Xcode.launch.GDBMI_Config; + remoteHostInfo = ""; + startActionInfo = ""; + }; + }; + cppStopOnCatchEnabled = 0; + cppStopOnThrowEnabled = 0; + customDataFormattersEnabled = 1; + debuggerPlugin = GDBDebugging; + disassemblyDisplayState = 0; + dylibVariantSuffix = _debug; + enableDebugStr = 0; + environmentEntries = ( + { + active = YES; + name = TCL_LIBRARY; + value = "${SRCROOT}/../../tcl/library"; + }, + { + active = YES; + name = TK_LIBRARY; + value = "${SRCROOT}/../../tk/library"; + }, + { + active = NO; + name = DYLD_PRINT_LIBRARIES; + }, + ); + isa = PBXExecutable; + launchableReference = F9F6B1EC08E864DC00C9CB24; + libgmallocEnabled = 0; + name = tktest; + shlibInfoDictList = ( + ); + sourceDirectories = ( + ); + }; + F9F6B1EC08E864DC00C9CB24 = { + isa = PBXFileReference; + lastKnownFileType = "compiled.mach-o.executable"; + path = tktest; + refType = 3; + sourceTree = BUILT_PRODUCTS_DIR; + }; +} diff --git a/macosx/Wish.pbproj/jingham.pbxuser b/macosx/Wish.pbproj/jingham.pbxuser index 79685a9..aafee5a 100644 --- a/macosx/Wish.pbproj/jingham.pbxuser +++ b/macosx/Wish.pbproj/jingham.pbxuser @@ -1,20 +1,25 @@ // !$*UTF8*$! { - 4C26BFE606AF8D9A00889141 = { - fileReference = F5375551016C376E01DC9062; - functionName = "TkMacOSXSetUpCGContext()"; - isa = PBXFileBreakpoint; - lineNumber = 1730; - state = 2; + F537552A016C352C01DC9062 = { + activeBuildStyle = F537552C016C352C01DC9062; + activeExecutable = F9F6B1E308E8648C00C9CB24; + activeTarget = F9D6747B08E84DC100688CAA; + addToTargets = ( + ); + codeSenseManager = F9D7368F06AD399F00DC3A31; + executables = ( + F9F6B1EB08E864DC00C9CB24, + F9F6B1E308E8648C00C9CB24, + ); + sourceControlManager = F9D7368E06AD399F00DC3A31; + userBuildSettings = { + SYMROOT = "${SRCROOT}/../../build/tk"; + }; }; - 4C26BFE806AF8E8600889141 = { - fileReference = F5375551016C376E01DC9062; - functionName = "TkMacOSXReleaseCGContext()"; - isa = PBXFileBreakpoint; - lineNumber = 1833; - state = 2; + F9D6747B08E84DC100688CAA = { + activeExec = 0; }; - 4CFCC13905E175AD00686F63 = { + F9D7368E06AD399F00DC3A31 = { fallbackIsa = XCSourceControlManager; isSCMEnabled = 0; isa = PBXSourceControlManager; @@ -22,12 +27,12 @@ }; scmType = scm.cvs; }; - 4CFCC13A05E175AD00686F63 = { + F9D7368F06AD399F00DC3A31 = { indexTemplatePath = ""; isa = PBXCodeSenseManager; usesDefaults = 1; wantsCodeCompletion = 1; - wantsCodeCompletionAutoSuggestions = 0; + wantsCodeCompletionAutoSuggestions = 1; wantsCodeCompletionCaseSensitivity = 1; wantsCodeCompletionListAlways = 1; wantsCodeCompletionOnlyMatchingItems = 1; @@ -36,903 +41,138 @@ wantsCodeCompletionTabCompletes = 1; wantsIndex = 1; }; - F537552A016C352C01DC9062 = { - activeBuildStyle = F537552C016C352C01DC9062; - activeExecutable = F9B92F14047876F1006F146B; - activeTarget = F53755DF016C38D201DC9062; - addToTargets = ( - F53755DF016C38D201DC9062, - ); - breakpoints = ( - 4C26BFE606AF8D9A00889141, - 4C26BFE806AF8E8600889141, + F9F6B1E308E8648C00C9CB24 = { + activeArgIndex = 2147483647; + activeArgIndices = ( ); - codeSenseManager = 4CFCC13A05E175AD00686F63; - executables = ( - F9B92F14047876F1006F146B, + argumentStrings = ( ); - perUserDictionary = { - PBXConfiguration.PBXFileTableDataSource3.PBXFileTableDataSource = { - PBXFileTableDataSourceColumnSortingDirectionKey = "-1"; - PBXFileTableDataSourceColumnSortingKey = PBXFileDataSource_Filename_ColumnID; - PBXFileTableDataSourceColumnWidthsKey = ( - 20, - 280, - 20, - 55, - 43, - 43, - 20, - ); - PBXFileTableDataSourceColumnsKey = ( - PBXFileDataSource_FiletypeID, - PBXFileDataSource_Filename_ColumnID, - PBXFileDataSource_Built_ColumnID, - PBXFileDataSource_ObjectSize_ColumnID, - PBXFileDataSource_Errors_ColumnID, - PBXFileDataSource_Warnings_ColumnID, - PBXFileDataSource_Target_ColumnID, - ); - }; - PBXConfiguration.PBXFileTableDataSource3.PBXFindDataSource = { - PBXFileTableDataSourceColumnSortingDirectionKey = "-1"; - PBXFileTableDataSourceColumnSortingKey = PBXFindDataSource_LocationID; - PBXFileTableDataSourceColumnWidthsKey = ( - 196.2974, - 198.2085, - ); - PBXFileTableDataSourceColumnsKey = ( - PBXFindDataSource_MessageID, - PBXFindDataSource_LocationID, - ); - }; - PBXPerProjectTemplateStateSaveDate = 133417037; - PBXPrepackagedSmartGroups_v2 = ( - { - PBXTransientLocationAtTop = bottom; - absolutePathToBundle = ""; - activationKey = OldTargetSmartGroup; - clz = PBXTargetSmartGroup; - description = "Displays all targets of the project."; - globalID = 1C37FABC04509CD000000102; - name = Targets; - preferences = { - image = Targets; - }; - }, - { - PBXTransientLocationAtTop = bottom; - absolutePathToBundle = ""; - clz = PBXTargetSmartGroup2; - description = "Displays all targets of the project as well as nested build phases."; - globalID = 1C37FBAC04509CD000000102; - name = Targets; - preferences = { - image = Targets; - }; - }, - { - PBXTransientLocationAtTop = bottom; - absolutePathToBundle = ""; - clz = PBXExecutablesSmartGroup; - description = "Displays all executables of the project."; - globalID = 1C37FAAC04509CD000000102; - name = Executables; - preferences = { - image = Executable; - }; - }, - { - " PBXTransientLocationAtTop " = bottom; - absolutePathToBundle = ""; - clz = PBXErrorsWarningsSmartGroup; - description = "Displays files with errors or warnings."; - globalID = 1C08E77C0454961000C914BD; - name = "Errors and Warnings"; - preferences = { - fnmatch = ""; - image = WarningsErrors; - recursive = 1; - regex = ""; - root = "<PROJECT>"; - }; - }, - { - PBXTransientLocationAtTop = bottom; - absolutePathToBundle = ""; - clz = PBXFilenameSmartGroup; - description = "Filters items in a given group (potentially recursively) based on matching the name with the regular expression of the filter."; - globalID = 1CC0EA4004350EF90044410B; - name = "Implementation Files"; - preferences = { - canSave = 1; - fnmatch = ""; - image = SmartFolder; - isLeaf = 0; - recursive = 1; - regex = "?*\\.[mcMC]"; - root = "<PROJECT>"; - }; - }, - { - PBXTransientLocationAtTop = bottom; - absolutePathToBundle = ""; - clz = PBXFilenameSmartGroup; - description = "This group displays Interface Builder NIB Files."; - globalID = 1CC0EA4004350EF90041110B; - name = "NIB Files"; - preferences = { - canSave = 1; - fnmatch = "*.nib"; - image = SmartFolder; - isLeaf = 0; - recursive = 1; - regex = ""; - root = "<PROJECT>"; - }; - }, - { - PBXTransientLocationAtTop = no; - absolutePathToBundle = ""; - clz = PBXFindSmartGroup; - description = "Displays Find Results."; - globalID = 1C37FABC05509CD000000102; - name = "Find Results"; - preferences = { - image = spyglass; - }; - }, - { - PBXTransientLocationAtTop = no; - absolutePathToBundle = ""; - clz = PBXBookmarksSmartGroup; - description = "Displays Project Bookmarks."; - globalID = 1C37FABC05539CD112110102; - name = Bookmarks; - preferences = { - image = Bookmarks; - }; - }, - { - PBXTransientLocationAtTop = bottom; - absolutePathToBundle = ""; - clz = XCSCMSmartGroup; - description = "Displays files with interesting SCM status."; - globalID = E2644B35053B69B200211256; - name = SCM; - preferences = { - image = PBXRepository; - isLeaf = 0; - }; - }, - { - PBXTransientLocationAtTop = bottom; - absolutePathToBundle = ""; - clz = PBXSymbolsSmartGroup; - description = "Displays all symbols for the project."; - globalID = 1C37FABC04509CD000100104; - name = "Project Symbols"; - preferences = { - image = ProjectSymbols; - isLeaf = 1; - }; - }, - { - PBXTransientLocationAtTop = bottom; - absolutePathToBundle = ""; - clz = PBXFilenameSmartGroup; - description = "Filters items in a given group (potentially recursively) based on matching the name with the regular expression of the filter."; - globalID = PBXTemplateMarker; - name = "Simple Filter SmartGroup"; - preferences = { - canSave = 1; - fnmatch = "*.nib"; - image = SmartFolder; - isLeaf = 0; - recursive = 1; - regex = ""; - root = "<PROJECT>"; - }; - }, - { - PBXTransientLocationAtTop = bottom; - absolutePathToBundle = ""; - clz = PBXFilenameSmartGroup; - description = "Filters items in a given group (potentially recursively) based on matching the name with the regular expression of the filter."; - globalID = PBXTemplateMarker; - name = "Simple Regular Expression SmartGroup"; - preferences = { - canSave = 1; - fnmatch = ""; - image = SmartFolder; - isLeaf = 0; - recursive = 1; - regex = "?*\\.[mcMC]"; - root = "<PROJECT>"; - }; - }, - { - PBXTransientLocationAtTop = bottom; - clz = XDDesignSmartGroup; - description = "Displays Xdesign models"; - globalID = 2E4A936305E6979E00701470; - name = Design; - preferences = { - image = Design; - isLeaf = 0; - }; - }, - ); - PBXWorkspaceContents = ( - { - PBXProjectWorkspaceModule_StateKey_Rev39 = { - PBXProjectWorkspaceModule_DataSourceSelectionKey_Rev6 = { - BoundsStr = "{{0, 0}, {216, 426}}"; - Rows = ( - ); - VisibleRectStr = "{{0, 0}, {216, 426}}"; - }; - PBXProjectWorkspaceModule_EditorOpen = false; - PBXProjectWorkspaceModule_EmbeddedNavigatorGroup = { - PBXSplitModuleInNavigatorKey = { - SplitCount = 1; - }; - }; - PBXProjectWorkspaceModule_GeometryKey_Rev15 = { - PBXProjectWorkspaceModule_SGTM_Geometry = { - _collapsingFrameDimension = 418; - _indexOfCollapsedView = 1; - _percentageOfCollapsedView = 0.6966667; - isCollapsed = yes; - sizes = ( - "{{0, 0}, {413, 422}}", - ); - }; - }; - PBXProjectWorkspaceModule_OldDetailFrame = "{{0, 0}, {231, 443}}"; - PBXProjectWorkspaceModule_OldEditorFrame = "{{0, 0}, {750, 480}}"; - PBXProjectWorkspaceModule_OldSuperviewFrame = "{{182, 0}, {231, 443}}"; - PBXProjectWorkspaceModule_SGTM = { - PBXBottomSmartGroupGIDs = ( - 1C37FBAC04509CD000000102, - 1C37FAAC04509CD000000102, - 1C08E77C0454961000C914BD, - 1CC0EA4004350EF90044410B, - 1CC0EA4004350EF90041110B, - 1C37FABC05509CD000000102, - 1C37FABC05539CD112110102, - E2644B35053B69B200211256, - 1C37FABC04509CD000100104, - ); - PBXSmartGroupTreeModuleColumnData = { - PBXSmartGroupTreeModuleColumnWidthsKey = ( - 396, - ); - PBXSmartGroupTreeModuleColumnsKey_v4 = ( - MainColumn, - ); - }; - PBXSmartGroupTreeModuleOutlineStateKey_v7 = { - PBXSmartGroupTreeModuleOutlineStateExpansionKey = ( - F537552B016C352C01DC9062, - F537552E016C376E01DC9062, - F5375530016C376E01DC9062, - F537553C016C376E01DC9062, - F537553D016C376E01DC9062, - F5375546016C376E01DC9062, - F53755CC016C389901DC9062, - F53755CD016C389901DC9062, - 1C37FABC05509CD000000102, - ); - PBXSmartGroupTreeModuleOutlineStateSelectionKey = ( - ( - 107, - 94, - 85, - 0, - ), - ); - PBXSmartGroupTreeModuleOutlineStateVisibleRectKey = "{{0, 1650}, {396, 404}}"; - }; - PBXTopSmartGroupGIDs = ( - ); - }; - }; - }, - ); - "PBXWorkspaceContents:PBXConfiguration.PBXModule.PBXBuildResultsModule" = { - }; - "PBXWorkspaceContents:PBXConfiguration.PBXModule.PBXDebugBreakpointsModule" = { - }; - "PBXWorkspaceContents:PBXConfiguration.PBXModule.PBXDebugCLIModule" = { - }; - "PBXWorkspaceContents:PBXConfiguration.PBXModule.PBXDebugSessionModule" = { - Debugger = { - HorizontalSplitView = { - _collapsingFrameDimension = 0; - _indexOfCollapsedView = 0; - _percentageOfCollapsedView = 0; - isCollapsed = yes; - sizes = ( - "{{0, 0}, {301, 283}}", - "{{301, 0}, {504, 283}}", - ); - }; - VerticalSplitView = { - _collapsingFrameDimension = 0; - _indexOfCollapsedView = 0; - _percentageOfCollapsedView = 0; - isCollapsed = yes; - sizes = ( - "{{0, 0}, {805, 283}}", - "{{0, 283}, {805, 309}}", - ); - }; - }; - LauncherConfigVersion = 8; - }; - "PBXWorkspaceContents:PBXConfiguration.PBXModule.PBXDebugSingleDataValueViewModule" = { - }; - "PBXWorkspaceContents:PBXConfiguration.PBXModule.PBXNavigatorGroup" = { - PBXSplitModuleInNavigatorKey = { - SplitCount = 1; - }; - }; - "PBXWorkspaceContents:PBXConfiguration.PBXModule.PBXProjectFindModule" = { - }; - "PBXWorkspaceContents:PBXConfiguration.PBXModule.PBXProjectWorkspaceModule" = { - PBXProjectWorkspaceModule_StateKey_Rev39 = { - PBXProjectWorkspaceModule_DataSourceSelectionKey_Rev6 = { - BoundsStr = "{{0, 0}, {216, 426}}"; - Rows = ( - ); - VisibleRectStr = "{{0, 0}, {216, 426}}"; - }; - PBXProjectWorkspaceModule_EditorOpen = false; - PBXProjectWorkspaceModule_EmbeddedNavigatorGroup = { - PBXSplitModuleInNavigatorKey = { - SplitCount = 1; - }; - }; - PBXProjectWorkspaceModule_GeometryKey_Rev15 = { - PBXProjectWorkspaceModule_SGTM_Geometry = { - _collapsingFrameDimension = 418; - _indexOfCollapsedView = 1; - _percentageOfCollapsedView = 0.6966667; - isCollapsed = yes; - sizes = ( - "{{0, 0}, {413, 422}}", - ); - }; - }; - PBXProjectWorkspaceModule_OldDetailFrame = "{{0, 0}, {231, 443}}"; - PBXProjectWorkspaceModule_OldEditorFrame = "{{0, 0}, {750, 480}}"; - PBXProjectWorkspaceModule_OldSuperviewFrame = "{{182, 0}, {231, 443}}"; - PBXProjectWorkspaceModule_SGTM = { - PBXBottomSmartGroupGIDs = ( - 1C37FBAC04509CD000000102, - 1C37FAAC04509CD000000102, - 1C08E77C0454961000C914BD, - 1CC0EA4004350EF90044410B, - 1CC0EA4004350EF90041110B, - 1C37FABC05509CD000000102, - 1C37FABC05539CD112110102, - E2644B35053B69B200211256, - 1C37FABC04509CD000100104, - ); - PBXSmartGroupTreeModuleColumnData = { - PBXSmartGroupTreeModuleColumnWidthsKey = ( - 396, - ); - PBXSmartGroupTreeModuleColumnsKey_v4 = ( - MainColumn, - ); - }; - PBXSmartGroupTreeModuleOutlineStateKey_v7 = { - PBXSmartGroupTreeModuleOutlineStateExpansionKey = ( - F537552B016C352C01DC9062, - F537553C016C376E01DC9062, - F537553D016C376E01DC9062, - F5375546016C376E01DC9062, - F53755CC016C389901DC9062, - F53755CD016C389901DC9062, - 1C37FABC05509CD000000102, - ); - PBXSmartGroupTreeModuleOutlineStateSelectionKey = ( - ( - 31, - 16, - 7, - 0, - ), - ); - PBXSmartGroupTreeModuleOutlineStateVisibleRectKey = "{{0, 400}, {396, 404}}"; - }; - PBXTopSmartGroupGIDs = ( - ); - }; - }; - }; - "PBXWorkspaceContents:PBXConfiguration.PBXModule.PBXRunSessionModule" = { - LauncherConfigVersion = 3; - Runner = { - HorizontalSplitView = { - _collapsingFrameDimension = 0; - _indexOfCollapsedView = 0; - _percentageOfCollapsedView = 0; - isCollapsed = yes; - sizes = ( - "{{0, 0}, {365, 167}}", - "{{0, 176}, {365, 267}}", - ); - }; - VerticalSplitView = { - _collapsingFrameDimension = 0; - _indexOfCollapsedView = 0; - _percentageOfCollapsedView = 0; - isCollapsed = yes; - sizes = ( - "{{0, 0}, {405, 443}}", - "{{414, 0}, {514, 443}}", - ); - }; - }; - }; - PBXWorkspaceGeometries = ( - { - Frame = "{{0, 0}, {413, 422}}"; - PBXProjectWorkspaceModule_GeometryKey_Rev15 = { - }; - RubberWindowFrame = "380 282 413 464 0 0 1024 746 "; - }, - ); - "PBXWorkspaceGeometries:PBXConfiguration.PBXModule.PBXBuildResultsModule" = { - Frame = "{{0, 0}, {719, 443}}"; - PBXModuleWindowStatusBarHidden = YES; - RubberWindowFrame = "280 83 719 464 0 0 1024 746 "; - }; - "PBXWorkspaceGeometries:PBXConfiguration.PBXModule.PBXDebugBreakpointsModule" = { - BreakpointsTreeTableConfiguration = ( - enabledColumn, - 16, - breakpointColumn, - 282.583, - ); - Frame = "{{0, 0}, {208, 495}}"; - PBXModuleWindowStatusBarHidden = YES; - RubberWindowFrame = "761 230 208 516 0 0 1024 746 "; - }; - "PBXWorkspaceGeometries:PBXConfiguration.PBXModule.PBXDebugCLIModule" = { - Frame = "{{0, 0}, {500, 258}}"; - RubberWindowFrame = "469 103 500 300 0 0 1024 746 "; - }; - "PBXWorkspaceGeometries:PBXConfiguration.PBXModule.PBXDebugSessionModule" = { - DebugConsoleDrawerSize = "{100, 120}"; - DebugConsoleVisible = None; - DebugConsoleWindowFrame = "{{65, 452}, {959, 294}}"; - DebugSTDIOWindowFrame = "{{469, 103}, {500, 300}}"; - Frame = "{{0, 0}, {805, 592}}"; - RubberWindowFrame = "145 107 805 634 0 0 1024 746 "; - }; - "PBXWorkspaceGeometries:PBXConfiguration.PBXModule.PBXDebugSingleDataValueViewModule" = { - Frame = "{{0, 0}, {400, 657}}"; - RubberWindowFrame = "35 16 400 699 0 0 1024 746 "; - }; - "PBXWorkspaceGeometries:PBXConfiguration.PBXModule.PBXNavigatorGroup" = { - Frame = "{{0, 0}, {597, 659}}"; - PBXModuleWindowStatusBarHidden = YES; - RubberWindowFrame = "253 66 597 680 0 0 1024 746 "; - }; - "PBXWorkspaceGeometries:PBXConfiguration.PBXModule.PBXProjectFindModule" = { - Frame = "{{0, 0}, {654, 460}}"; - RubberWindowFrame = "293 148 654 502 0 0 1024 746 "; - }; - "PBXWorkspaceGeometries:PBXConfiguration.PBXModule.PBXProjectWorkspaceModule" = { - Frame = "{{0, 0}, {413, 422}}"; - PBXProjectWorkspaceModule_GeometryKey_Rev15 = { - }; - RubberWindowFrame = "380 282 413 464 0 0 1024 746 "; - }; - "PBXWorkspaceGeometries:PBXConfiguration.PBXModule.PBXRunSessionModule" = { - Frame = "{{0, 0}, {745, 443}}"; - PBXModuleWindowStatusBarHidden = YES; - RubberWindowFrame = "254 127 745 464 0 0 1024 746 "; + configStateDict = { + "PBXLSLaunchAction-0" = { + PBXLSLaunchAction = 0; + PBXLSLaunchStartAction = 1; + PBXLSLaunchStdioStyle = 2; + PBXLSLaunchStyle = 0; + class = PBXLSRunLaunchConfig; + displayName = "Executable Runner"; + identifier = com.apple.Xcode.launch.runConfig; + remoteHostInfo = ""; + startActionInfo = ""; + }; + "PBXLSLaunchAction-1" = { + PBXLSLaunchAction = 1; + PBXLSLaunchStartAction = 1; + PBXLSLaunchStdioStyle = 2; + PBXLSLaunchStyle = 0; + class = PBXGDB_LaunchConfig; + displayName = GDB; + identifier = com.apple.Xcode.launch.GDBMI_Config; + remoteHostInfo = ""; + startActionInfo = ""; }; - PBXWorkspaceStateSaveDate = 133417037; - }; - sourceControlManager = 4CFCC13905E175AD00686F63; - userBuildSettings = { - OBJROOT = "${SRCROOT}/../../build/tk/"; - SYMROOT = "${SRCROOT}/../../build/tk"; - }; - }; - F5375540016C376E01DC9062 = { - uiCtxt = { - sepNavIntBoundsRect = "{{0, 0}, {711, 7517}}"; - sepNavSelRange = "{9914, 0}"; - sepNavVisRect = "{{0, 3927}, {711, 449}}"; - sepNavWindowFrame = "{{180, 60}, {750, 534}}"; - }; - }; - F5375542016C376E01DC9062 = { - uiCtxt = { - sepNavIntBoundsRect = "{{0, 0}, {711, 2267}}"; - sepNavSelRange = "{4985, 26}"; - sepNavVisRect = "{{0, 1790}, {711, 449}}"; - sepNavWindowFrame = "{{42, 186}, {750, 534}}"; - }; - }; - F537554A016C376E01DC9062 = { - uiCtxt = { - sepNavIntBoundsRect = "{{0, 0}, {711, 22819}}"; - sepNavSelRange = "{5893, 16}"; - sepNavVisRect = "{{0, 4310}, {711, 449}}"; - sepNavWindowFrame = "{{65, 165}, {750, 534}}"; - }; - }; - F537554E016C376E01DC9062 = { - uiCtxt = { - sepNavIntBoundsRect = "{{0, 0}, {711, 6761}}"; - sepNavSelRange = "{12868, 0}"; - sepNavVisRect = "{{0, 5874}, {711, 449}}"; - sepNavWindowFrame = "{{108, 212}, {750, 534}}"; - }; - }; - F5375550016C376E01DC9062 = { - uiCtxt = { - sepNavIntBoundsRect = "{{0, 0}, {819, 23267}}"; - sepNavSelRange = "{46489, 9}"; - sepNavVisRect = "{{0, 20155}, {819, 360}}"; - }; - }; - F5375551016C376E01DC9062 = { - uiCtxt = { - sepNavIntBoundsRect = "{{0, 0}, {558, 28671}}"; - sepNavSelRange = "{3970, 0}"; - sepNavVisRect = "{{0, 1641}, {558, 627}}"; - sepNavWindowFrame = "{{253, 34}, {597, 712}}"; - }; - }; - F5375553016C376E01DC9062 = { - uiCtxt = { - sepNavIntBoundsRect = "{{0, 0}, {711, 4031}}"; - sepNavSelRange = "{4638, 20}"; - sepNavVisRect = "{{0, 2569}, {711, 449}}"; - sepNavWindowFrame = "{{19, 207}, {750, 534}}"; - }; - }; - F5375554016C376E01DC9062 = { - uiCtxt = { - sepNavIntBoundsRect = "{{0, 0}, {728, 32325}}"; - sepNavSelRange = "{34980, 12}"; - sepNavVisRect = "{{0, 13559}, {711, 449}}"; - sepNavWindowFrame = "{{88, 144}, {750, 534}}"; - }; - }; - F5375556016C376E01DC9062 = { - uiCtxt = { - sepNavIntBoundsRect = "{{0, 0}, {711, 3163}}"; - sepNavSelRange = "{3116, 0}"; - sepNavVisRect = "{{0, 1462}, {711, 449}}"; - sepNavWindowFrame = "{{22, 78}, {750, 534}}"; - }; - }; - F5375559016C376E01DC9062 = { - uiCtxt = { - sepNavIntBoundsRect = "{{0, 0}, {711, 67157}}"; - sepNavSelRange = "{6813, 8}"; - sepNavVisRect = "{{0, 2947}, {711, 449}}"; - sepNavWindowFrame = "{{43, 66}, {750, 534}}"; - }; - }; - F537555C016C376E01DC9062 = { - uiCtxt = { - sepNavIntBoundsRect = "{{0, 0}, {711, 11717}}"; - sepNavSelRange = "{6747, 0}"; - sepNavVisRect = "{{0, 2457}, {711, 449}}"; - sepNavWindowFrame = "{{115, 97}, {750, 534}}"; - }; - }; - F537555D016C376E01DC9062 = { - uiCtxt = { - sepNavIntBoundsRect = "{{0, 0}, {711, 16491}}"; - sepNavSelRange = "{8857, 0}"; - sepNavVisRect = "{{0, 3812}, {711, 428}}"; - }; - }; - F537555E016C376E01DC9062 = { - uiCtxt = { - sepNavIntBoundsRect = "{{0, 0}, {711, 3639}}"; - sepNavSelRange = "{0, 0}"; - sepNavVisRect = "{{0, 0}, {711, 449}}"; - sepNavWindowFrame = "{{65, 165}, {750, 534}}"; - }; - }; - F5375560016C376E01DC9062 = { - uiCtxt = { - sepNavIntBoundsRect = "{{0, 0}, {711, 15959}}"; - sepNavSelRange = "{10001, 4}"; - sepNavVisRect = "{{0, 3955}, {711, 449}}"; - sepNavWindowFrame = "{{19, 207}, {750, 534}}"; - }; - }; - F5375562016C376E01DC9062 = { - uiCtxt = { - sepNavIntBoundsRect = "{{0, 0}, {711, 19669}}"; - sepNavSelRange = "{6075, 0}"; - sepNavVisRect = "{{0, 3021}, {711, 449}}"; - sepNavWindowFrame = "{{296, 212}, {750, 534}}"; - }; - }; - F5375565016C376E01DC9062 = { - uiCtxt = { - sepNavIntBoundsRect = "{{0, 0}, {711, 9687}}"; - sepNavSelRange = "{10015, 19}"; - sepNavVisRect = "{{0, 4314}, {711, 449}}"; - sepNavWindowFrame = "{{134, 102}, {750, 534}}"; - }; - }; - F5375567016C376E01DC9062 = { - uiCtxt = { - sepNavIntBoundsRect = "{{0, 0}, {711, 79127}}"; - sepNavSelRange = "{2012, 27}"; - sepNavVisRect = "{{0, 805}, {711, 449}}"; - sepNavWindowFrame = "{{111, 123}, {750, 534}}"; - }; - }; - F537556B016C37A601DC9062 = { - uiCtxt = { - sepNavIntBoundsRect = "{{0, 0}, {711, 22763}}"; - sepNavSelRange = "{23942, 9}"; - sepNavVisRect = "{{0, 10195}, {711, 449}}"; - sepNavWindowFrame = "{{114, 212}, {750, 534}}"; }; - }; - F5375574016C37A601DC9062 = { - uiCtxt = { - sepNavIntBoundsRect = "{{0, 0}, {711, 16477}}"; - sepNavSelRange = "{23833, 9}"; - sepNavVisRect = "{{0, 10380}, {711, 449}}"; - sepNavWindowFrame = "{{157, 81}, {750, 534}}"; - }; - }; - F537557A016C37A601DC9062 = { - uiCtxt = { - sepNavIntBoundsRect = "{{0, 0}, {1910, 4213}}"; - sepNavSelRange = "{0, 0}"; - sepNavVisRect = "{{0, 0}, {711, 449}}"; - sepNavWindowFrame = "{{88, 144}, {750, 534}}"; - }; - }; - F5375580016C389901DC9062 = { - uiCtxt = { - sepNavIntBoundsRect = "{{0, 0}, {766, 20075}}"; - sepNavSelRange = "{29382, 0}"; - sepNavVisRect = "{{0, 14163}, {766, 277}}"; - }; - }; - F5375585016C389901DC9062 = { - uiCtxt = { - sepNavIntBoundsRect = "{{0, 0}, {711, 25115}}"; - sepNavSelRange = "{50483, 15}"; - sepNavVisRect = "{{0, 20194}, {711, 449}}"; - sepNavWindowFrame = "{{88, 144}, {750, 534}}"; - }; - }; - F5375587016C389901DC9062 = { - uiCtxt = { - sepNavIntBoundsRect = "{{0, 0}, {691, 80597}}"; - sepNavSelRange = "{73464, 0}"; - sepNavVisRect = "{{0, 30764}, {691, 633}}"; - sepNavWindowFrame = "{{166, 0}, {730, 718}}"; - }; - }; - F537558E016C389901DC9062 = { - uiCtxt = { - sepNavIntBoundsRect = "{{0, 0}, {766, 24905}}"; - sepNavSelRange = "{3562, 0}"; - sepNavVisRect = "{{0, 1859}, {766, 272}}"; - }; - }; - F537558F016C389901DC9062 = { - uiCtxt = { - sepNavIntBoundsRect = "{{0, 0}, {711, 15497}}"; - sepNavSelRange = "{11262, 14}"; - sepNavVisRect = "{{0, 4732}, {711, 449}}"; - sepNavWindowFrame = "{{42, 186}, {750, 534}}"; - }; - }; - F5375591016C389901DC9062 = { - uiCtxt = { - sepNavIntBoundsRect = "{{0, 0}, {711, 29007}}"; - sepNavSelRange = "{31963, 9}"; - sepNavVisRect = "{{0, 16919}, {711, 449}}"; - sepNavWindowFrame = "{{65, 165}, {750, 534}}"; - }; - }; - F5375595016C389901DC9062 = { - uiCtxt = { - sepNavIntBoundsRect = "{{0, 0}, {711, 12375}}"; - sepNavSelRange = "{6236, 36}"; - sepNavVisRect = "{{0, 3185}, {711, 449}}"; - sepNavWindowFrame = "{{203, 39}, {750, 534}}"; - }; - }; - F5375596016C389901DC9062 = { - uiCtxt = { - sepNavIntBoundsRect = "{{0, 0}, {711, 65351}}"; - sepNavSelRange = "{60305, 0}"; - sepNavVisRect = "{{0, 25118}, {711, 449}}"; - sepNavWindowFrame = "{{216, 212}, {750, 534}}"; - }; - }; - F5375598016C389901DC9062 = { - uiCtxt = { - sepNavIntBoundsRect = "{{0, 0}, {711, 21307}}"; - sepNavSelRange = "{40237, 196}"; - sepNavVisRect = "{{0, 19495}, {711, 449}}"; - sepNavWindowFrame = "{{88, 144}, {750, 534}}"; - }; - }; - F537559A016C389901DC9062 = { - uiCtxt = { - sepNavIntBoundsRect = "{{0, 0}, {711, 15063}}"; - sepNavSelRange = "{19488, 9}"; - sepNavVisRect = "{{0, 9130}, {711, 449}}"; - sepNavWindowFrame = "{{65, 165}, {750, 534}}"; - }; - }; - F537559C016C389901DC9062 = { - uiCtxt = { - sepNavIntBoundsRect = "{{0, 0}, {711, 27971}}"; - sepNavSelRange = "{44345, 12}"; - sepNavVisRect = "{{0, 19355}, {711, 449}}"; - sepNavWindowFrame = "{{134, 102}, {750, 534}}"; - }; - }; - F53755A0016C389901DC9062 = { - uiCtxt = { - sepNavIntBoundsRect = "{{0, 0}, {711, 22609}}"; - sepNavSelRange = "{33749, 0}"; - sepNavVisRect = "{{0, 14636}, {711, 449}}"; - sepNavWindowFrame = "{{134, 102}, {750, 534}}"; - }; - }; - F53755A8016C389901DC9062 = { - uiCtxt = { - sepNavIntBoundsRect = "{{0, 0}, {711, 48859}}"; - sepNavSelRange = "{56455, 0}"; - sepNavVisRect = "{{0, 25823}, {711, 449}}"; - sepNavWindowFrame = "{{19, 207}, {750, 534}}"; - }; - }; - F53755AB016C389901DC9062 = { - uiCtxt = { - sepNavIntBoundsRect = "{{0, 0}, {711, 50959}}"; - sepNavSelRange = "{12728, 16}"; - sepNavVisRect = "{{0, 3941}, {711, 449}}"; - sepNavWindowFrame = "{{157, 81}, {750, 534}}"; - }; - }; - F53755B0016C389901DC9062 = { - uiCtxt = { - sepNavIntBoundsRect = "{{0, 0}, {711, 14573}}"; - sepNavSelRange = "{13559, 12}"; - sepNavVisRect = "{{0, 6837}, {711, 449}}"; - sepNavWindowFrame = "{{135, 102}, {750, 534}}"; - }; - }; - F53755B2016C389901DC9062 = { - uiCtxt = { - sepNavIntBoundsRect = "{{0, 0}, {766, 23408}}"; - sepNavSelRange = "{20282, 0}"; - sepNavVisRect = "{{0, 9139}, {766, 273}}"; - }; - }; - F53755B4016C389901DC9062 = { - uiCtxt = { - sepNavIntBoundsRect = "{{0, 0}, {711, 9281}}"; - sepNavSelRange = "{14480, 21}"; - sepNavVisRect = "{{0, 7749}, {711, 449}}"; - sepNavWindowFrame = "{{180, 60}, {750, 534}}"; - }; - }; - F53755BF016C389901DC9062 = { - uiCtxt = { - sepNavIntBoundsRect = "{{0, 0}, {766, 73863}}"; - sepNavSelRange = "{54794, 0}"; - sepNavVisRect = "{{0, 23655}, {766, 277}}"; - }; - }; - F53755C8016C389901DC9062 = { - uiCtxt = { - sepNavIntBoundsRect = "{{0, 0}, {711, 44841}}"; - sepNavSelRange = "{64393, 13}"; - sepNavVisRect = "{{0, 29253}, {711, 449}}"; - sepNavWindowFrame = "{{157, 81}, {750, 534}}"; - }; - }; - F53755D2016C389901DC9062 = { - uiCtxt = { - sepNavIntBoundsRect = "{{0, 0}, {711, 9491}}"; - sepNavSelRange = "{5074, 20}"; - sepNavVisRect = "{{0, 1864}, {711, 449}}"; - sepNavWindowFrame = "{{70, 164}, {750, 534}}"; - }; - }; - F53755D5016C389901DC9062 = { - uiCtxt = { - sepNavIntBoundsRect = "{{0, 0}, {711, 17009}}"; - sepNavSelRange = "{20859, 9}"; - sepNavVisRect = "{{0, 7885}, {711, 449}}"; - sepNavWindowFrame = "{{226, 18}, {750, 534}}"; - }; - }; - F53755D9016C389901DC9062 = { - uiCtxt = { - sepNavIntBoundsRect = "{{0, 0}, {766, 1189}}"; - sepNavSelRange = "{1660, 0}"; - sepNavVisRect = "{{0, 912}, {766, 277}}"; - }; - }; - F53755DF016C38D201DC9062 = { - activeExec = 0; - }; - F53756A0016C4DD401DC9062 = { - activeExec = 0; - executables = ( - F9B92F14047876F1006F146B, + cppStopOnCatchEnabled = 0; + cppStopOnThrowEnabled = 0; + customDataFormattersEnabled = 1; + debuggerPlugin = GDBDebugging; + disassemblyDisplayState = 0; + dylibVariantSuffix = _debug; + enableDebugStr = 0; + environmentEntries = ( + { + active = NO; + name = DYLD_PRINT_LIBRARIES; + }, + ); + isa = PBXExecutable; + launchableReference = F9F6B1E408E8648C00C9CB24; + libgmallocEnabled = 0; + name = Wish; + shlibInfoDictList = ( + ); + sourceDirectories = ( ); }; - F548F8CE0313CEF0016F146B = { - activeExec = 0; - }; - F5C8865B017D625C01DC9062 = { - uiCtxt = { - sepNavIntBoundsRect = "{{0, 0}, {711, 31583}}"; - sepNavSelRange = "{1450, 27}"; - sepNavVisRect = "{{0, 553}, {711, 428}}"; - sepNavWindowFrame = "{{111, 123}, {750, 534}}"; - }; - }; - F5DF0935016CD3F901DC9062 = { - uiCtxt = { - sepNavIntBoundsRect = "{{0, 0}, {711, 5823}}"; - sepNavSelRange = "{0, 0}"; - sepNavVisRect = "{{0, 2446}, {711, 428}}"; - }; - }; - F5DF093D016CD3F901DC9062 = { - uiCtxt = { - sepNavIntBoundsRect = "{{0, 0}, {711, 5935}}"; - sepNavSelRange = "{8810, 14}"; - sepNavVisRect = "{{0, 4152}, {711, 449}}"; - sepNavWindowFrame = "{{212, 193}, {750, 534}}"; - }; + F9F6B1E408E8648C00C9CB24 = { + isa = PBXFileReference; + lastKnownFileType = wrapper.application; + path = Wish.app; + refType = 3; + sourceTree = BUILT_PRODUCTS_DIR; }; - F9B92F14047876F1006F146B = { + F9F6B1EB08E864DC00C9CB24 = { activeArgIndex = 2147483647; activeArgIndices = ( + NO, + NO, + NO, ); argumentStrings = ( + "${SRCROOT}/../../tcl/tests/all.tcl", + "${SRCROOT}/../../tk/tests/all.tcl", + "-verbose \"\"", ); configStateDict = { + "PBXLSLaunchAction-0" = { + PBXLSLaunchAction = 0; + PBXLSLaunchStartAction = 1; + PBXLSLaunchStdioStyle = 2; + PBXLSLaunchStyle = 0; + class = PBXLSRunLaunchConfig; + displayName = "Executable Runner"; + identifier = com.apple.Xcode.launch.runConfig; + remoteHostInfo = ""; + startActionInfo = ""; + }; + "PBXLSLaunchAction-1" = { + PBXLSLaunchAction = 1; + PBXLSLaunchStartAction = 1; + PBXLSLaunchStdioStyle = 2; + PBXLSLaunchStyle = 0; + class = PBXGDB_LaunchConfig; + displayName = GDB; + identifier = com.apple.Xcode.launch.GDBMI_Config; + remoteHostInfo = ""; + startActionInfo = ""; + }; }; cppStopOnCatchEnabled = 0; cppStopOnThrowEnabled = 0; customDataFormattersEnabled = 1; debuggerPlugin = GDBDebugging; disassemblyDisplayState = 0; - dylibVariantSuffix = ""; - enableDebugStr = 1; + dylibVariantSuffix = _debug; + enableDebugStr = 0; environmentEntries = ( + { + active = YES; + name = TCL_LIBRARY; + value = "${SRCROOT}/../../tcl/library"; + }, + { + active = YES; + name = TK_LIBRARY; + value = "${SRCROOT}/../../tk/library"; + }, + { + active = NO; + name = DYLD_PRINT_LIBRARIES; + }, ); isa = PBXExecutable; + launchableReference = F9F6B1EC08E864DC00C9CB24; libgmallocEnabled = 0; - name = Wish; + name = tktest; shlibInfoDictList = ( ); sourceDirectories = ( ); }; + F9F6B1EC08E864DC00C9CB24 = { + isa = PBXFileReference; + lastKnownFileType = "compiled.mach-o.executable"; + path = tktest; + refType = 3; + sourceTree = BUILT_PRODUCTS_DIR; + }; } diff --git a/macosx/Wish.pbproj/project.pbxproj b/macosx/Wish.pbproj/project.pbxproj index 56a7fe4..5565720 100644 --- a/macosx/Wish.pbproj/project.pbxproj +++ b/macosx/Wish.pbproj/project.pbxproj @@ -5,68 +5,70 @@ }; objectVersion = 39; objects = { + 4C148E2007ECCFAC0033822E = { + fileEncoding = 5; + isa = PBXFileReference; + lastKnownFileType = sourcecode.c.h; + name = tkEntry.h; + path = ../generic/tkEntry.h; + refType = 2; + sourceTree = SOURCE_ROOT; + }; + 4C148E2407ECCFCF0033822E = { + fileEncoding = 5; + isa = PBXFileReference; + lastKnownFileType = sourcecode.c.c; + path = tkMacOSXEntry.c; + refType = 4; + sourceTree = "<group>"; + }; 4C3B4CF6040B18B200C916F0 = { - fileEncoding = 30; + fileEncoding = 5; isa = PBXFileReference; lastKnownFileType = sourcecode.rez; path = tkMacOSXAETE.r; refType = 4; sourceTree = "<group>"; }; - 4C3B4CF7040B18B200C916F0 = { - fileRef = 4C3B4CF6040B18B200C916F0; - isa = PBXBuildFile; - settings = { - }; - }; - 4C9404EF07F3C84D004B0BCE = { - containerPortal = F537552A016C352C01DC9062; - isa = PBXContainerItemProxy; - proxyType = 1; - remoteGlobalIDString = F548F8CE0313CEF0016F146B; - remoteInfo = TkStubLibrary; - }; - 4C9404F007F3C84D004B0BCE = { - containerPortal = F537552A016C352C01DC9062; - isa = PBXContainerItemProxy; - proxyType = 1; - remoteGlobalIDString = F53755DF016C38D201DC9062; - remoteInfo = TkLibrary; - }; - 4C94055707F3C880004B0BCE = { - fileEncoding = 30; + 4C8A204405E0421900C18A82 = { + fileEncoding = 5; isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; - path = tkMacOSXEntry.c; + path = tkMacOSXCarbonEvents.c; refType = 4; sourceTree = "<group>"; }; - 4C94055807F3C880004B0BCE = { - fileRef = 4C94055707F3C880004B0BCE; - isa = PBXBuildFile; - settings = { - }; - }; - 4C94055B07F3C897004B0BCE = { + 4CB2D7CF0619F8EB0081E375 = { fileEncoding = 5; isa = PBXFileReference; - lastKnownFileType = sourcecode.c.h; - name = tkEntry.h; - path = ../generic/tkEntry.h; - refType = 2; - sourceTree = SOURCE_ROOT; - }; - 4C94055C07F3C897004B0BCE = { - fileRef = 4C94055B07F3C897004B0BCE; - isa = PBXBuildFile; - settings = { - }; + lastKnownFileType = sourcecode.c.c; + path = tkMacOSXScale.c; + refType = 4; + sourceTree = "<group>"; }; //4C0 //4C1 //4C2 //4C3 //4C4 +//950 +//951 +//952 +//953 +//954 + 95911CC7081532D8006F6BCB = { + isa = PBXFileReference; + lastKnownFileType = wrapper.framework; + name = IOKit.framework; + path = /System/Library/Frameworks/IOKit.framework; + refType = 0; + sourceTree = "<absolute>"; + }; +//950 +//951 +//952 +//953 +//954 //F50 //F51 //F52 @@ -80,99 +82,6 @@ refType = 0; sourceTree = "<absolute>"; }; - F50D96130196176E01DC9062 = { - fileRef = F50D96120196176E01DC9062; - isa = PBXBuildFile; - settings = { - }; - }; - F50D96140196176E01DC9062 = { - fileRef = F50D96120196176E01DC9062; - isa = PBXBuildFile; - settings = { - }; - }; - F51D903F018149BD01DC9062 = { - buildActionMask = 2147483647; - dstPath = "Versions/$(FRAMEWORK_VERSION)/Headers/X11"; - dstSubfolderSpec = 1; - files = ( - F51D9040018149FD01DC9062, - F51D9041018149FD01DC9062, - F51D9042018149FD01DC9062, - F51D9043018149FD01DC9062, - F51D9044018149FD01DC9062, - F51D9045018149FD01DC9062, - F51D9046018149FD01DC9062, - F51D9047018149FD01DC9062, - F51D9048018149FD01DC9062, - ); - isa = PBXCopyFilesBuildPhase; - runOnlyForDeploymentPostprocessing = 0; - }; - F51D9040018149FD01DC9062 = { - fileRef = F53755CE016C389901DC9062; - isa = PBXBuildFile; - settings = { - }; - }; - F51D9041018149FD01DC9062 = { - fileRef = F53755CF016C389901DC9062; - isa = PBXBuildFile; - settings = { - }; - }; - F51D9042018149FD01DC9062 = { - fileRef = F53755D0016C389901DC9062; - isa = PBXBuildFile; - settings = { - }; - }; - F51D9043018149FD01DC9062 = { - fileRef = F53755D1016C389901DC9062; - isa = PBXBuildFile; - settings = { - }; - }; - F51D9044018149FD01DC9062 = { - fileRef = F53755D2016C389901DC9062; - isa = PBXBuildFile; - settings = { - }; - }; - F51D9045018149FD01DC9062 = { - fileRef = F53755D3016C389901DC9062; - isa = PBXBuildFile; - settings = { - }; - }; - F51D9046018149FD01DC9062 = { - fileRef = F53755D4016C389901DC9062; - isa = PBXBuildFile; - settings = { - }; - }; - F51D9047018149FD01DC9062 = { - fileRef = F53755D5016C389901DC9062; - isa = PBXBuildFile; - settings = { - }; - }; - F51D9048018149FD01DC9062 = { - fileRef = F53755D6016C389901DC9062; - isa = PBXBuildFile; - settings = { - }; - }; - F52D38C5031F4259016F146B = { - buildActionMask = 2147483647; - files = ( - ); - isa = PBXShellScriptBuildPhase; - runOnlyForDeploymentPostprocessing = 0; - shellPath = /bin/sh; - shellScript = "if [ \"${BUILD_STYLE}\" = \"Development\" ]; then\n\t# keep copy of debug library around, so that\n\t# Deployment build can be installed on top\n\t# of Development build without overwriting it\n\tcd \"${TARGET_BUILD_DIR}/${PRODUCT_NAME}.${WRAPPER_EXTENSION}/Versions/${FRAMEWORK_VERSION}\"\n\tcp -fp \"${PRODUCT_NAME}\" \"${PRODUCT_NAME}_debug\"\n\tln -f \"Versions/Current/${PRODUCT_NAME}_debug\" ../..\n\tln -f \"libtkstub${FRAMEWORK_VERSION}.a\" \"libtkstub${FRAMEWORK_VERSION}g.a\"\n\n\t# force Deployment build to be relinked next time\n\tif [ -f \"${OBJROOT}/Deployment.build/${PROJECT_NAME}.build/${TARGET_NAME}.build/Objects-normal/LinkFileList\" ]; then\n\t touch -t `date -r \\`expr \\\\\\`date +\"%s\"\\\\\\` + 30\\` +\"%Y%m%d%H%M.%S\"` \"${OBJROOT}/Deployment.build/${PROJECT_NAME}.build/${TARGET_NAME}.build/Objects-normal/LinkFileList\"\n\tfi\nelse\n\t# force Development build to be relinked next time\n\tif [ -f \"${OBJROOT}/Development.build/${PROJECT_NAME}.build/${TARGET_NAME}.build/Objects-normal/LinkFileList\" ]; then\n\t touch -t `date -r \\`expr \\\\\\`date +\"%s\"\\\\\\` + 30\\` +\"%Y%m%d%H%M.%S\"` \"${OBJROOT}/Development.build/${PROJECT_NAME}.build/${TARGET_NAME}.build/Objects-normal/LinkFileList\"\n\tfi\nfi\n\n# fixup Framework structure\ncd \"${TARGET_BUILD_DIR}/${PRODUCT_NAME}.${WRAPPER_EXTENSION}/Versions/${FRAMEWORK_VERSION}\"\nln -fs `ls libtkstub* | sed -e \"s|.*|Versions/${FRAMEWORK_VERSION}/&|\"` ../..\nln -fs \"Versions/Current/tkConfig.sh\" ../..\nranlib libtkstub${FRAMEWORK_VERSION}*.a\n\n# create pkgIndex\n( echo \"if {[package vcompare [package provide Tcl] ${FRAMEWORK_VERSION}] != 0} { return }\" && \\\n echo \"package ifneeded Tk ${FRAMEWORK_VERSION} [list load [file join \\$dir .. .. Tk] Tk]\" \\\n) > \"Resources/Scripts/pkgIndex.tcl\""; - }; F537552A016C352C01DC9062 = { buildSettings = { }; @@ -186,9 +95,7 @@ productRefGroup = F53755DD016C38D201DC9062; projectDirPath = ""; targets = ( - F53756A0016C4DD401DC9062, - F53755DF016C38D201DC9062, - F548F8CE0313CEF0016F146B, + F9D6747B08E84DC100688CAA, ); }; F537552B016C352C01DC9062 = { @@ -211,28 +118,16 @@ }; F537552C016C352C01DC9062 = { buildSettings = { - GCC_DYNAMIC_NO_PIC = NO; - GCC_ENABLE_FIX_AND_CONTINUE = YES; - GCC_GENERATE_DEBUGGING_SYMBOLS = YES; - GCC_OPTIMIZATION_LEVEL = 0; - OTHER_LDFLAGS = "\U0001-prebind"; - TCL_DBGX = g; - TEMP_DIR = "${OBJROOT}/Development.build/$(PROJECT_NAME).build/$(TARGET_NAME).build"; - UNSTRIPPED_PRODUCT = YES; - ZERO_LINK = YES; + BUILD_STYLE = Development; + MAKE_TARGET = develop; }; isa = PBXBuildStyle; name = Development; }; F537552D016C352C01DC9062 = { buildSettings = { - DEBUGGING_SYMBOLS = NO; - GCC_ENABLE_FIX_AND_CONTINUE = NO; - OPTIMIZATION_CFLAGS = "-Os"; - OTHER_LDFLAGS = "\U0001-prebind"; - TCL_DBGX = ""; - TEMP_DIR = "${OBJROOT}/Deployment.build/$(PROJECT_NAME).build/$(TARGET_NAME).build"; - ZERO_LINK = NO; + BUILD_STYLE = Deployment; + MAKE_TARGET = deploy; }; isa = PBXBuildStyle; name = Deployment; @@ -257,7 +152,7 @@ F537556E016C37A601DC9062, F537556F016C37A601DC9062, F5375570016C37A601DC9062, - 4C94055B07F3C897004B0BCE, + 4C148E2007ECCFAC0033822E, F5375571016C37A601DC9062, F5375572016C37A601DC9062, F5375573016C37A601DC9062, @@ -509,9 +404,9 @@ }; F5375546016C376E01DC9062 = { children = ( - 4C94055707F3C880004B0BCE, F5375549016C376E01DC9062, F537554A016C376E01DC9062, + 4C8A204405E0421900C18A82, F537554B016C376E01DC9062, F537554C016C376E01DC9062, F537554D016C376E01DC9062, @@ -520,6 +415,7 @@ F5375550016C376E01DC9062, F5375551016C376E01DC9062, F5375552016C376E01DC9062, + 4C148E2407ECCFCF0033822E, F5375553016C376E01DC9062, F5375554016C376E01DC9062, F5375555016C376E01DC9062, @@ -532,6 +428,7 @@ F537555C016C376E01DC9062, F537555D016C376E01DC9062, F537555E016C376E01DC9062, + 4CB2D7CF0619F8EB0081E375, F5375560016C376E01DC9062, F5375561016C376E01DC9062, F5375562016C376E01DC9062, @@ -1847,1214 +1744,21 @@ }; F53755DD016C38D201DC9062 = { children = ( - F53755DE016C38D201DC9062, - F537569F016C4DD401DC9062, - F548F8CF0313CEF0016F146B, + F9F6B1C008E863C200C9CB24, + F9F6B1BF08E863B300C9CB24, + F9F6B1BE08E8639A00C9CB24, ); isa = PBXGroup; name = Products; refType = 4; sourceTree = "<group>"; }; - F53755DE016C38D201DC9062 = { - explicitFileType = wrapper.framework; - isa = PBXFileReference; - path = Tk.framework; - refType = 3; - sourceTree = BUILT_PRODUCTS_DIR; - }; - F53755DF016C38D201DC9062 = { - buildPhases = ( - F5877FB7031F97ED016F146B, - F92CCC75080CEBA800E72D64, - F53755E0016C38D201DC9062, - F53755E1016C38D301DC9062, - F53755E2016C38D301DC9062, - F53755E3016C38D301DC9062, - F53755E4016C38D301DC9062, - F5B1FC08016FFE3501DC9062, - F51D903F018149BD01DC9062, - F548F8C80313C9E0016F146B, - F5C1D51901B88F9A01DC9062, - F52D38C5031F4259016F146B, - F5877FBC031FA968016F146B, - F9A61D2F04C2C861006F5A0B, - ); - buildSettings = { - DOCDIR = "${INSTALL_PATH}/${PRODUCT_NAME}.${WRAPPER_EXTENSION}/Versions/${FRAMEWORK_VERSION}/Resources/Documentation/Reference"; - DYLIB_COMPATIBILITY_VERSION = 8.4; - DYLIB_CURRENT_VERSION = "$(FRAMEWORK_VERSION)"; - DYLIB_INSTALL_PATH = /Library/Frameworks; - FRAMEWORK_SEARCH_PATHS = "\"$(TCL_FRAMEWORK_DIR)\""; - FRAMEWORK_VERSION = 8.4; - GLOBAL_CFLAGS = "`source \"${TCL_FRAMEWORK_DIR}/Tcl.framework/tclConfig.sh\"; echo $${}{TCL_EXTRA_CFLAGS} $${}{TCL_DEFS} | sed -e 's|\\\\\\\\\\\\\\\"|\\\"|g' -e 's|\\\\\\\\\\\\ |_|g' -e 's|TCL_WIDE_INT_TYPE|BOGUS_&|'` -U_REENTRANT"; - HEADER_SEARCH_PATHS = "\"$(TCL_FRAMEWORK_DIR)/Tcl.framework/Headers\" \"$(TCL_FRAMEWORK_DIR)/Tcl.framework/PrivateHeaders\" . ../bitmaps ../generic ../xlib"; - INSTALL_PATH = "${DYLIB_INSTALL_PATH}"; - LIBRARY_SEARCH_PATHS = "\"$(TCL_FRAMEWORK_DIR)/Tcl.framework\""; - OPTIMIZATION_CFLAGS = "-O0"; - OTHER_CFLAGS = "-DMAC_OSX_TK -DUSE_TCL_STUBS -DTCL_WIDE_INT_TYPE=\"long long\" -DTK_FRAMEWORK -DTK_FRAMEWORK_VERSION=\\\\\\\"$(FRAMEWORK_VERSION)\\\\\\\""; - OTHER_LDFLAGS = "-ltclstub${FRAMEWORK_VERSION}${TCL_DBGX} -seg1addr 0xb000000 -Wl,-search_paths_first -Wl,-unexported_symbols_list \"${TEMP_DIR}/tclstub.exp\""; - OTHER_LIBTOOL_FLAGS = ""; - OTHER_REZFLAGS = "-i \"$(TCL_FRAMEWORK_DIR)/Tcl.framework/Headers\" -i \"../generic\""; - PRECOMPILE_PREFIX_HEADER = YES; - PRINCIPAL_CLASS = ""; - PRODUCT_NAME = Tk; - SECTORDER_FLAGS = ""; - SYMROOT = "${SRCROOT}/../../build/tk"; - TCLSH_DIR = "$(TCL_FRAMEWORK_DIR)"; - TCLTKMAN2HTML = ""; - TCL_FRAMEWORK_DIR = "$(SYMROOT)/../tcl"; - USE_GCC3_PFE_SUPPORT = YES; - WARNING_CFLAGS = "-Wmost -Wno-four-char-constants -Wno-unknown-pragmas -Wno-deprecated-declarations"; - WRAPPER_EXTENSION = framework; - }; - dependencies = ( - F548F8D20313CF93016F146B, - ); - isa = PBXFrameworkTarget; - name = TkLibrary; - productInstallPath = /Library/Frameworks; - productName = TkLibrary; - productReference = F53755DE016C38D201DC9062; - productSettingsXML = "<?xml version=\"1.0\" encoding=\"UTF-8\"?> -<!DOCTYPE plist PUBLIC \"-//Apple Computer//DTD PLIST 1.0//EN\" \"http://www.apple.com/DTDs/PropertyList-1.0.dtd\"> -<plist version=\"1.0\"> -<dict> - <key>CFBundleDevelopmentRegion</key> - <string>English</string> - <key>CFBundleExecutable</key> - <string>Tk</string> - <key>CFBundleGetInfoString</key> - <string>Tk Library 8.4, Copyright © 2005 Tcl Core Team. -Initial MacOS X Port by Jim Ingham <jingham@apple.com> & Ian Reid, Copyright © 2001-2002, Apple Computer, Inc.</string> - <key>CFBundleIdentifier</key> - <string>com.tcltk.tklibrary</string> - <key>CFBundleInfoDictionaryVersion</key> - <string>6.0</string> - <key>CFBundleName</key> - <string>Tk Library 8.4</string> - <key>CFBundlePackageType</key> - <string>FMWK</string> - <key>CFBundleShortVersionString</key> - <string>8.4.12</string> - <key>CFBundleSignature</key> - <string>Tk </string> - <key>CFBundleVersion</key> - <string>8.4.12</string> -</dict> -</plist> -"; - }; - F53755E0016C38D201DC9062 = { - buildActionMask = 2147483647; - files = ( - F53755E5016C390401DC9062, - F53755E6016C390401DC9062, - F53755E7016C390401DC9062, - F53755E8016C390401DC9062, - F53755E9016C390401DC9062, - F53755EA016C390401DC9062, - F53755EB016C390401DC9062, - F53755EC016C390401DC9062, - F53755ED016C390401DC9062, - F53755EE016C390401DC9062, - F53755EF016C390401DC9062, - F53755F0016C390401DC9062, - F53755F1016C390401DC9062, - F53755F2016C390401DC9062, - F53755F3016C390401DC9062, - F53755F4016C390401DC9062, - F53755F5016C390401DC9062, - F53755F6016C390401DC9062, - F53755F7016C390401DC9062, - F53755F8016C390401DC9062, - F53755F9016C390401DC9062, - F53755FA016C390401DC9062, - F53755FB016C390401DC9062, - F53755FC016C397D01DC9062, - F53755FD016C397D01DC9062, - F53755FE016C397D01DC9062, - F53755FF016C397D01DC9062, - F5375600016C397D01DC9062, - F5375601016C397D01DC9062, - F5375603016C397D01DC9062, - F537566E016C3A1F01DC9062, - F537566F016C3A1F01DC9062, - F5375670016C3A1F01DC9062, - F5375671016C3A1F01DC9062, - F5375672016C3A1F01DC9062, - F5375673016C3A1F01DC9062, - F5375674016C3A1F01DC9062, - F5375675016C3A1F01DC9062, - F5375676016C3A1F01DC9062, - F5375693016C3F1001DC9062, - F5375694016C3F1001DC9062, - F5375695016C3F1001DC9062, - F5375696016C3F1001DC9062, - F5375697016C3F1001DC9062, - F5375698016C3F1001DC9062, - F5375699016C3F1001DC9062, - F537569A016C3F1001DC9062, - F537569B016C3F1001DC9062, - F537569C016C3F1001DC9062, - F5BFE59002F8C45B01DC9062, - 4C94055C07F3C897004B0BCE, - ); - isa = PBXHeadersBuildPhase; - runOnlyForDeploymentPostprocessing = 0; - }; - F53755E1016C38D301DC9062 = { - buildActionMask = 2147483647; - files = ( - ); - isa = PBXResourcesBuildPhase; - runOnlyForDeploymentPostprocessing = 0; - }; - F53755E2016C38D301DC9062 = { - buildActionMask = 2147483647; - files = ( - F5375604016C397D01DC9062, - F5375605016C397D01DC9062, - F5375606016C397D01DC9062, - F5375607016C397D01DC9062, - F5375608016C397D01DC9062, - F5375609016C397D01DC9062, - F537560A016C397D01DC9062, - F537560B016C397D01DC9062, - F537560C016C397D01DC9062, - F537560D016C397D01DC9062, - F537560E016C397D01DC9062, - F537560F016C397D01DC9062, - F5375610016C397D01DC9062, - F5375611016C397D01DC9062, - F5375612016C397D01DC9062, - F5375613016C397D01DC9062, - F5375614016C397D01DC9062, - F5375615016C397D01DC9062, - F5375616016C397D01DC9062, - F5375617016C397D01DC9062, - F5375618016C397D01DC9062, - F5375619016C397D01DC9062, - F537561A016C397D01DC9062, - F537561B016C397D01DC9062, - F537561C016C397D01DC9062, - F537561D016C397D01DC9062, - F537561E016C397D01DC9062, - F537561F016C397D01DC9062, - F5375620016C397D01DC9062, - F5375621016C397D01DC9062, - F5375622016C397D01DC9062, - F5375623016C397D01DC9062, - F5375624016C397D01DC9062, - F5375625016C397D01DC9062, - F5375626016C397D01DC9062, - F5375627016C397D01DC9062, - F5375628016C397D01DC9062, - F5375629016C397D01DC9062, - F537562A016C397D01DC9062, - F537562B016C397D01DC9062, - F537562C016C397D01DC9062, - F537562D016C397D01DC9062, - F537562E016C397D01DC9062, - F537562F016C397D01DC9062, - F5375630016C397D01DC9062, - F5375631016C397D01DC9062, - F5375632016C397D01DC9062, - F5375633016C397D01DC9062, - F5375634016C397D01DC9062, - F5375635016C397D01DC9062, - F5375636016C397D01DC9062, - F5375637016C397D01DC9062, - F5375638016C397D01DC9062, - F5375639016C397D01DC9062, - F537563A016C397D01DC9062, - F537563B016C397D01DC9062, - F537563C016C397D01DC9062, - F537563D016C397D01DC9062, - F537563F016C397D01DC9062, - F5375640016C397D01DC9062, - F5375641016C397D01DC9062, - F5375642016C397D01DC9062, - F5375643016C397D01DC9062, - F5375644016C397D01DC9062, - F5375645016C397D01DC9062, - F5375646016C397D01DC9062, - F5375647016C397D01DC9062, - F5375648016C397D01DC9062, - F5375649016C397D01DC9062, - F537564A016C397D01DC9062, - F537564D016C39A101DC9062, - F537564E016C39A101DC9062, - F537564F016C39A101DC9062, - F5375650016C39A101DC9062, - F5375651016C39A101DC9062, - F5375652016C39A101DC9062, - F5375653016C39A101DC9062, - F5375654016C39A101DC9062, - F5375655016C39A101DC9062, - F5375656016C39A101DC9062, - F5375657016C39A101DC9062, - F5375658016C39A101DC9062, - F5375659016C39A101DC9062, - F537565A016C39A101DC9062, - F537565B016C39A101DC9062, - F537565C016C39A101DC9062, - F537565D016C39A101DC9062, - F537565E016C39A101DC9062, - F537565F016C39A101DC9062, - F5375660016C39A101DC9062, - F5375661016C39A101DC9062, - F5375662016C39A101DC9062, - F5375664016C39A101DC9062, - F5375665016C39A101DC9062, - F5375666016C39A101DC9062, - F5375668016C39A101DC9062, - F537566A016C39A101DC9062, - F537566B016C39A101DC9062, - F537566C016C39F201DC9062, - F537566D016C39F201DC9062, - F5375677016C3A6D01DC9062, - F5375678016C3A6D01DC9062, - F5375679016C3A6D01DC9062, - F537567A016C3A6D01DC9062, - F537567B016C3A6D01DC9062, - F537569E016C49C301DC9062, - F55BC46902B2D38B01DC9062, - F5BFE58D02F8C41501DC9062, - F5BFE58E02F8C41501DC9062, - 4C94055807F3C880004B0BCE, - ); - isa = PBXSourcesBuildPhase; - runOnlyForDeploymentPostprocessing = 0; - }; - F53755E3016C38D301DC9062 = { - buildActionMask = 2147483647; - files = ( - F537567E016C3ADB01DC9062, - F50D96130196176E01DC9062, - ); - isa = PBXFrameworksBuildPhase; - runOnlyForDeploymentPostprocessing = 0; - }; - F53755E4016C38D301DC9062 = { - buildActionMask = 2147483647; - files = ( - F537567F016C3ADB01DC9062, - F5375680016C3ADB01DC9062, - F5375681016C3ADB01DC9062, - F5375682016C3ADB01DC9062, - ); - isa = PBXRezBuildPhase; - runOnlyForDeploymentPostprocessing = 0; - }; - F53755E5016C390401DC9062 = { - fileRef = F5375569016C37A601DC9062; - isa = PBXBuildFile; - settings = { - }; - }; - F53755E6016C390401DC9062 = { - fileRef = F537556A016C37A601DC9062; - isa = PBXBuildFile; - settings = { - }; - }; - F53755E7016C390401DC9062 = { - fileRef = F537556B016C37A601DC9062; - isa = PBXBuildFile; - settings = { - ATTRIBUTES = ( - Public, - ); - }; - }; - F53755E8016C390401DC9062 = { - fileRef = F537556C016C37A601DC9062; - isa = PBXBuildFile; - settings = { - }; - }; - F53755E9016C390401DC9062 = { - fileRef = F537556D016C37A601DC9062; - isa = PBXBuildFile; - settings = { - }; - }; - F53755EA016C390401DC9062 = { - fileRef = F537556E016C37A601DC9062; - isa = PBXBuildFile; - settings = { - }; - }; - F53755EB016C390401DC9062 = { - fileRef = F537556F016C37A601DC9062; - isa = PBXBuildFile; - settings = { - }; - }; - F53755EC016C390401DC9062 = { - fileRef = F5375570016C37A601DC9062; - isa = PBXBuildFile; - settings = { - ATTRIBUTES = ( - Public, - ); - }; - }; - F53755ED016C390401DC9062 = { - fileRef = F5375571016C37A601DC9062; - isa = PBXBuildFile; - settings = { - }; - }; - F53755EE016C390401DC9062 = { - fileRef = F5375572016C37A601DC9062; - isa = PBXBuildFile; - settings = { - }; - }; - F53755EF016C390401DC9062 = { - fileRef = F5375573016C37A601DC9062; - isa = PBXBuildFile; - settings = { - }; - }; - F53755F0016C390401DC9062 = { - fileRef = F5375574016C37A601DC9062; - isa = PBXBuildFile; - settings = { - ATTRIBUTES = ( - Private, - ); - }; - }; - F53755F1016C390401DC9062 = { - fileRef = F5375575016C37A601DC9062; - isa = PBXBuildFile; - settings = { - ATTRIBUTES = ( - Private, - ); - }; - }; - F53755F2016C390401DC9062 = { - fileRef = F5375576016C37A601DC9062; - isa = PBXBuildFile; - settings = { - ATTRIBUTES = ( - Private, - ); - }; - }; - F53755F3016C390401DC9062 = { - fileRef = F5375577016C37A601DC9062; - isa = PBXBuildFile; - settings = { - ATTRIBUTES = ( - Public, - ); - }; - }; - F53755F4016C390401DC9062 = { - fileRef = F5375578016C37A601DC9062; - isa = PBXBuildFile; - settings = { - }; - }; - F53755F5016C390401DC9062 = { - fileRef = F5375579016C37A601DC9062; - isa = PBXBuildFile; - settings = { - }; - }; - F53755F6016C390401DC9062 = { - fileRef = F537557A016C37A601DC9062; - isa = PBXBuildFile; - settings = { - ATTRIBUTES = ( - Public, - ); - }; - }; - F53755F7016C390401DC9062 = { - fileRef = F537557B016C37A601DC9062; - isa = PBXBuildFile; - settings = { - ATTRIBUTES = ( - Private, - ); - }; - }; - F53755F8016C390401DC9062 = { - fileRef = F537557C016C37A601DC9062; - isa = PBXBuildFile; - settings = { - }; - }; - F53755F9016C390401DC9062 = { - fileRef = F537557D016C37A601DC9062; - isa = PBXBuildFile; - settings = { - }; - }; - F53755FA016C390401DC9062 = { - fileRef = F537557E016C37A601DC9062; - isa = PBXBuildFile; - settings = { - }; - }; - F53755FB016C390401DC9062 = { - fileRef = F537557F016C37A601DC9062; - isa = PBXBuildFile; - settings = { - }; - }; - F53755FC016C397D01DC9062 = { - fileRef = F537553E016C376E01DC9062; - isa = PBXBuildFile; - settings = { - ATTRIBUTES = ( - Public, - ); - }; - }; - F53755FD016C397D01DC9062 = { - fileRef = F537553F016C376E01DC9062; - isa = PBXBuildFile; - settings = { - }; - }; - F53755FE016C397D01DC9062 = { - fileRef = F5375540016C376E01DC9062; - isa = PBXBuildFile; - settings = { - }; - }; - F53755FF016C397D01DC9062 = { - fileRef = F5375541016C376E01DC9062; - isa = PBXBuildFile; - settings = { - }; - }; - F5375600016C397D01DC9062 = { - fileRef = F5375542016C376E01DC9062; - isa = PBXBuildFile; - settings = { - ATTRIBUTES = ( - Private, - ); - }; - }; - F5375601016C397D01DC9062 = { - fileRef = F5375543016C376E01DC9062; - isa = PBXBuildFile; - settings = { - ATTRIBUTES = ( - Private, - ); - }; - }; - F5375603016C397D01DC9062 = { - fileRef = F5375545016C376E01DC9062; - isa = PBXBuildFile; - settings = { - }; - }; - F5375604016C397D01DC9062 = { - fileRef = F5375580016C389901DC9062; - isa = PBXBuildFile; - settings = { - }; - }; - F5375605016C397D01DC9062 = { - fileRef = F5375581016C389901DC9062; - isa = PBXBuildFile; - settings = { - }; - }; - F5375606016C397D01DC9062 = { - fileRef = F5375582016C389901DC9062; - isa = PBXBuildFile; - settings = { - }; - }; - F5375607016C397D01DC9062 = { - fileRef = F5375583016C389901DC9062; - isa = PBXBuildFile; - settings = { - }; - }; - F5375608016C397D01DC9062 = { - fileRef = F5375584016C389901DC9062; - isa = PBXBuildFile; - settings = { - }; - }; - F5375609016C397D01DC9062 = { - fileRef = F5375585016C389901DC9062; - isa = PBXBuildFile; - settings = { - }; - }; - F537560A016C397D01DC9062 = { - fileRef = F5375586016C389901DC9062; - isa = PBXBuildFile; - settings = { - }; - }; - F537560B016C397D01DC9062 = { - fileRef = F5375587016C389901DC9062; - isa = PBXBuildFile; - settings = { - }; - }; - F537560C016C397D01DC9062 = { - fileRef = F5375588016C389901DC9062; - isa = PBXBuildFile; - settings = { - }; - }; - F537560D016C397D01DC9062 = { - fileRef = F5375589016C389901DC9062; - isa = PBXBuildFile; - settings = { - }; - }; - F537560E016C397D01DC9062 = { - fileRef = F537558A016C389901DC9062; - isa = PBXBuildFile; - settings = { - }; - }; - F537560F016C397D01DC9062 = { - fileRef = F537558B016C389901DC9062; - isa = PBXBuildFile; - settings = { - }; - }; - F5375610016C397D01DC9062 = { - fileRef = F537558C016C389901DC9062; - isa = PBXBuildFile; - settings = { - }; - }; - F5375611016C397D01DC9062 = { - fileRef = F537558D016C389901DC9062; - isa = PBXBuildFile; - settings = { - }; - }; - F5375612016C397D01DC9062 = { - fileRef = F537558E016C389901DC9062; - isa = PBXBuildFile; - settings = { - }; - }; - F5375613016C397D01DC9062 = { - fileRef = F537558F016C389901DC9062; - isa = PBXBuildFile; - settings = { - }; - }; - F5375614016C397D01DC9062 = { - fileRef = F5375590016C389901DC9062; - isa = PBXBuildFile; - settings = { - }; - }; - F5375615016C397D01DC9062 = { - fileRef = F5375591016C389901DC9062; - isa = PBXBuildFile; - settings = { - }; - }; - F5375616016C397D01DC9062 = { - fileRef = F5375592016C389901DC9062; - isa = PBXBuildFile; - settings = { - }; - }; - F5375617016C397D01DC9062 = { - fileRef = F5375593016C389901DC9062; - isa = PBXBuildFile; - settings = { - }; - }; - F5375618016C397D01DC9062 = { - fileRef = F5375594016C389901DC9062; - isa = PBXBuildFile; - settings = { - }; - }; - F5375619016C397D01DC9062 = { - fileRef = F5375595016C389901DC9062; - isa = PBXBuildFile; - settings = { - }; - }; - F537561A016C397D01DC9062 = { - fileRef = F5375596016C389901DC9062; - isa = PBXBuildFile; - settings = { - }; - }; - F537561B016C397D01DC9062 = { - fileRef = F5375597016C389901DC9062; - isa = PBXBuildFile; - settings = { - }; - }; - F537561C016C397D01DC9062 = { - fileRef = F5375598016C389901DC9062; - isa = PBXBuildFile; - settings = { - }; - }; - F537561D016C397D01DC9062 = { - fileRef = F5375599016C389901DC9062; - isa = PBXBuildFile; - settings = { - }; - }; - F537561E016C397D01DC9062 = { - fileRef = F537559A016C389901DC9062; - isa = PBXBuildFile; - settings = { - }; - }; - F537561F016C397D01DC9062 = { - fileRef = F537559B016C389901DC9062; - isa = PBXBuildFile; - settings = { - }; - }; - F5375620016C397D01DC9062 = { - fileRef = F537559C016C389901DC9062; - isa = PBXBuildFile; - settings = { - }; - }; - F5375621016C397D01DC9062 = { - fileRef = F537559D016C389901DC9062; - isa = PBXBuildFile; - settings = { - }; - }; - F5375622016C397D01DC9062 = { - fileRef = F537559E016C389901DC9062; - isa = PBXBuildFile; - settings = { - }; - }; - F5375623016C397D01DC9062 = { - fileRef = F537559F016C389901DC9062; - isa = PBXBuildFile; - settings = { - }; - }; - F5375624016C397D01DC9062 = { - fileRef = F53755A0016C389901DC9062; - isa = PBXBuildFile; - settings = { - }; - }; - F5375625016C397D01DC9062 = { - fileRef = F53755A1016C389901DC9062; - isa = PBXBuildFile; - settings = { - }; - }; - F5375626016C397D01DC9062 = { - fileRef = F53755A2016C389901DC9062; - isa = PBXBuildFile; - settings = { - }; - }; - F5375627016C397D01DC9062 = { - fileRef = F53755A3016C389901DC9062; - isa = PBXBuildFile; - settings = { - }; - }; - F5375628016C397D01DC9062 = { - fileRef = F53755A4016C389901DC9062; - isa = PBXBuildFile; - settings = { - }; - }; - F5375629016C397D01DC9062 = { - fileRef = F53755A5016C389901DC9062; - isa = PBXBuildFile; - settings = { - }; - }; - F537562A016C397D01DC9062 = { - fileRef = F53755A6016C389901DC9062; - isa = PBXBuildFile; - settings = { - }; - }; - F537562B016C397D01DC9062 = { - fileRef = F53755A7016C389901DC9062; - isa = PBXBuildFile; - settings = { - }; - }; - F537562C016C397D01DC9062 = { - fileRef = F53755A8016C389901DC9062; - isa = PBXBuildFile; - settings = { - }; - }; - F537562D016C397D01DC9062 = { - fileRef = F53755A9016C389901DC9062; - isa = PBXBuildFile; - settings = { - }; - }; - F537562E016C397D01DC9062 = { - fileRef = F53755AA016C389901DC9062; - isa = PBXBuildFile; - settings = { - }; - }; - F537562F016C397D01DC9062 = { - fileRef = F53755AB016C389901DC9062; - isa = PBXBuildFile; - settings = { - }; - }; - F5375630016C397D01DC9062 = { - fileRef = F53755AC016C389901DC9062; - isa = PBXBuildFile; - settings = { - }; - }; - F5375631016C397D01DC9062 = { - fileRef = F53755AD016C389901DC9062; - isa = PBXBuildFile; - settings = { - }; - }; - F5375632016C397D01DC9062 = { - fileRef = F53755AE016C389901DC9062; - isa = PBXBuildFile; - settings = { - }; - }; - F5375633016C397D01DC9062 = { - fileRef = F53755AF016C389901DC9062; - isa = PBXBuildFile; - settings = { - }; - }; - F5375634016C397D01DC9062 = { - fileRef = F53755B0016C389901DC9062; - isa = PBXBuildFile; - settings = { - }; - }; - F5375635016C397D01DC9062 = { - fileRef = F53755B1016C389901DC9062; - isa = PBXBuildFile; - settings = { - }; - }; - F5375636016C397D01DC9062 = { - fileRef = F53755B2016C389901DC9062; - isa = PBXBuildFile; - settings = { - }; - }; - F5375637016C397D01DC9062 = { - fileRef = F53755B3016C389901DC9062; - isa = PBXBuildFile; - settings = { - }; - }; - F5375638016C397D01DC9062 = { - fileRef = F53755B4016C389901DC9062; - isa = PBXBuildFile; - settings = { - }; - }; - F5375639016C397D01DC9062 = { - fileRef = F53755B5016C389901DC9062; - isa = PBXBuildFile; - settings = { - }; - }; - F537563A016C397D01DC9062 = { - fileRef = F53755B6016C389901DC9062; - isa = PBXBuildFile; - settings = { - }; - }; - F537563B016C397D01DC9062 = { - fileRef = F53755B7016C389901DC9062; - isa = PBXBuildFile; - settings = { - }; - }; - F537563C016C397D01DC9062 = { - fileRef = F53755B8016C389901DC9062; - isa = PBXBuildFile; - settings = { - }; - }; - F537563D016C397D01DC9062 = { - fileRef = F53755BA016C389901DC9062; - isa = PBXBuildFile; - settings = { - }; - }; - F537563F016C397D01DC9062 = { - fileRef = F53755BD016C389901DC9062; - isa = PBXBuildFile; - settings = { - }; - }; - F5375640016C397D01DC9062 = { - fileRef = F53755BE016C389901DC9062; - isa = PBXBuildFile; - settings = { - }; - }; - F5375641016C397D01DC9062 = { - fileRef = F53755BF016C389901DC9062; - isa = PBXBuildFile; - settings = { - }; - }; - F5375642016C397D01DC9062 = { - fileRef = F53755C0016C389901DC9062; - isa = PBXBuildFile; - settings = { - }; - }; - F5375643016C397D01DC9062 = { - fileRef = F53755C1016C389901DC9062; - isa = PBXBuildFile; - settings = { - }; - }; - F5375644016C397D01DC9062 = { - fileRef = F53755C2016C389901DC9062; - isa = PBXBuildFile; - settings = { - }; - }; - F5375645016C397D01DC9062 = { - fileRef = F53755C3016C389901DC9062; - isa = PBXBuildFile; - settings = { - }; - }; - F5375646016C397D01DC9062 = { - fileRef = F53755C4016C389901DC9062; - isa = PBXBuildFile; - settings = { - }; - }; - F5375647016C397D01DC9062 = { - fileRef = F53755C5016C389901DC9062; - isa = PBXBuildFile; - settings = { - }; - }; - F5375648016C397D01DC9062 = { - fileRef = F53755C6016C389901DC9062; - isa = PBXBuildFile; - settings = { - }; - }; - F5375649016C397D01DC9062 = { - fileRef = F53755C7016C389901DC9062; - isa = PBXBuildFile; - settings = { - }; - }; - F537564A016C397D01DC9062 = { - fileRef = F53755C8016C389901DC9062; - isa = PBXBuildFile; - settings = { - }; - }; - F537564D016C39A101DC9062 = { - fileRef = F5375549016C376E01DC9062; - isa = PBXBuildFile; - settings = { - }; - }; - F537564E016C39A101DC9062 = { - fileRef = F537554A016C376E01DC9062; - isa = PBXBuildFile; - settings = { - }; - }; - F537564F016C39A101DC9062 = { - fileRef = F537554B016C376E01DC9062; - isa = PBXBuildFile; - settings = { - }; - }; - F5375650016C39A101DC9062 = { - fileRef = F537554C016C376E01DC9062; - isa = PBXBuildFile; - settings = { - }; - }; - F5375651016C39A101DC9062 = { - fileRef = F537554D016C376E01DC9062; - isa = PBXBuildFile; - settings = { - }; - }; - F5375652016C39A101DC9062 = { - fileRef = F537554E016C376E01DC9062; - isa = PBXBuildFile; - settings = { - }; - }; - F5375653016C39A101DC9062 = { - fileRef = F537554F016C376E01DC9062; - isa = PBXBuildFile; - settings = { - }; - }; - F5375654016C39A101DC9062 = { - fileRef = F5375550016C376E01DC9062; - isa = PBXBuildFile; - settings = { - }; - }; - F5375655016C39A101DC9062 = { - fileRef = F5375551016C376E01DC9062; - isa = PBXBuildFile; - settings = { - }; - }; - F5375656016C39A101DC9062 = { - fileRef = F5375552016C376E01DC9062; - isa = PBXBuildFile; - settings = { - }; - }; - F5375657016C39A101DC9062 = { - fileRef = F5375553016C376E01DC9062; - isa = PBXBuildFile; - settings = { - }; - }; - F5375658016C39A101DC9062 = { - fileRef = F5375554016C376E01DC9062; - isa = PBXBuildFile; - settings = { - }; - }; - F5375659016C39A101DC9062 = { - fileRef = F5375555016C376E01DC9062; - isa = PBXBuildFile; - settings = { - }; - }; - F537565A016C39A101DC9062 = { - fileRef = F5375556016C376E01DC9062; - isa = PBXBuildFile; - settings = { - }; - }; - F537565B016C39A101DC9062 = { - fileRef = F5375557016C376E01DC9062; - isa = PBXBuildFile; - settings = { - }; - }; - F537565C016C39A101DC9062 = { - fileRef = F5375558016C376E01DC9062; - isa = PBXBuildFile; - settings = { - }; - }; - F537565D016C39A101DC9062 = { - fileRef = F5375559016C376E01DC9062; - isa = PBXBuildFile; - settings = { - }; - }; - F537565E016C39A101DC9062 = { - fileRef = F537555A016C376E01DC9062; - isa = PBXBuildFile; - settings = { - }; - }; - F537565F016C39A101DC9062 = { - fileRef = F537555B016C376E01DC9062; - isa = PBXBuildFile; - settings = { - }; - }; - F5375660016C39A101DC9062 = { - fileRef = F537555C016C376E01DC9062; - isa = PBXBuildFile; - settings = { - }; - }; - F5375661016C39A101DC9062 = { - fileRef = F537555D016C376E01DC9062; - isa = PBXBuildFile; - settings = { - }; - }; - F5375662016C39A101DC9062 = { - fileRef = F537555E016C376E01DC9062; - isa = PBXBuildFile; - settings = { - }; - }; - F5375664016C39A101DC9062 = { - fileRef = F5375560016C376E01DC9062; - isa = PBXBuildFile; - settings = { - }; - }; - F5375665016C39A101DC9062 = { - fileRef = F5375561016C376E01DC9062; - isa = PBXBuildFile; - settings = { - }; - }; - F5375666016C39A101DC9062 = { - fileRef = F5375562016C376E01DC9062; - isa = PBXBuildFile; - settings = { - }; - }; - F5375668016C39A101DC9062 = { - fileRef = F5375565016C376E01DC9062; - isa = PBXBuildFile; - settings = { - }; - }; - F537566A016C39A101DC9062 = { - fileRef = F5375567016C376E01DC9062; - isa = PBXBuildFile; - settings = { - }; - }; - F537566B016C39A101DC9062 = { - fileRef = F5375568016C376E01DC9062; - isa = PBXBuildFile; - settings = { - }; - }; - F537566C016C39F201DC9062 = { - fileRef = F53755CA016C389901DC9062; - isa = PBXBuildFile; - settings = { - }; - }; - F537566D016C39F201DC9062 = { - fileRef = F53755CB016C389901DC9062; - isa = PBXBuildFile; - settings = { - }; - }; - F537566E016C3A1F01DC9062 = { - fileRef = F53755CE016C389901DC9062; - isa = PBXBuildFile; - settings = { - ATTRIBUTES = ( - ); - }; - }; - F537566F016C3A1F01DC9062 = { - fileRef = F53755CF016C389901DC9062; - isa = PBXBuildFile; - settings = { - ATTRIBUTES = ( - ); - }; - }; - F5375670016C3A1F01DC9062 = { - fileRef = F53755D0016C389901DC9062; - isa = PBXBuildFile; - settings = { - ATTRIBUTES = ( - ); - }; - }; - F5375671016C3A1F01DC9062 = { - fileRef = F53755D1016C389901DC9062; - isa = PBXBuildFile; - settings = { - }; - }; - F5375672016C3A1F01DC9062 = { - fileRef = F53755D2016C389901DC9062; - isa = PBXBuildFile; - settings = { - }; - }; - F5375673016C3A1F01DC9062 = { - fileRef = F53755D3016C389901DC9062; - isa = PBXBuildFile; - settings = { - }; - }; - F5375674016C3A1F01DC9062 = { - fileRef = F53755D4016C389901DC9062; - isa = PBXBuildFile; - settings = { - }; - }; - F5375675016C3A1F01DC9062 = { - fileRef = F53755D5016C389901DC9062; - isa = PBXBuildFile; - settings = { - }; - }; - F5375676016C3A1F01DC9062 = { - fileRef = F53755D6016C389901DC9062; - isa = PBXBuildFile; - settings = { - }; - }; - F5375677016C3A6D01DC9062 = { - fileRef = F53755D8016C389901DC9062; - isa = PBXBuildFile; - settings = { - }; - }; - F5375678016C3A6D01DC9062 = { - fileRef = F53755D9016C389901DC9062; - isa = PBXBuildFile; - settings = { - }; - }; - F5375679016C3A6D01DC9062 = { - fileRef = F53755DA016C389901DC9062; - isa = PBXBuildFile; - settings = { - }; - }; - F537567A016C3A6D01DC9062 = { - fileRef = F53755DB016C389901DC9062; - isa = PBXBuildFile; - settings = { - }; - }; - F537567B016C3A6D01DC9062 = { - fileRef = F53755DC016C389901DC9062; - isa = PBXBuildFile; - settings = { - }; - }; F537567C016C3ADB01DC9062 = { children = ( - F50D96120196176E01DC9062, F5875C7B016FEF1D01DC9062, + F50D96120196176E01DC9062, F537567D016C3ADB01DC9062, + 95911CC7081532D8006F6BCB, ); isa = PBXGroup; name = "External Frameworks"; @@ -3069,36 +1773,6 @@ Initial MacOS X Port by Jim Ingham <jingham@apple.com> & Ian Reid, Cop refType = 0; sourceTree = "<absolute>"; }; - F537567E016C3ADB01DC9062 = { - fileRef = F537567D016C3ADB01DC9062; - isa = PBXBuildFile; - settings = { - }; - }; - F537567F016C3ADB01DC9062 = { - fileRef = F5375533016C376E01DC9062; - isa = PBXBuildFile; - settings = { - }; - }; - F5375680016C3ADB01DC9062 = { - fileRef = F5375535016C376E01DC9062; - isa = PBXBuildFile; - settings = { - }; - }; - F5375681016C3ADB01DC9062 = { - fileRef = F5375538016C376E01DC9062; - isa = PBXBuildFile; - settings = { - }; - }; - F5375682016C3ADB01DC9062 = { - fileRef = F537553A016C376E01DC9062; - isa = PBXBuildFile; - settings = { - }; - }; F5375688016C3F1001DC9062 = { children = ( F5375689016C3F1001DC9062, @@ -3197,344 +1871,6 @@ Initial MacOS X Port by Jim Ingham <jingham@apple.com> & Ian Reid, Cop refType = 2; sourceTree = SOURCE_ROOT; }; - F5375693016C3F1001DC9062 = { - fileRef = F5375689016C3F1001DC9062; - isa = PBXBuildFile; - settings = { - }; - }; - F5375694016C3F1001DC9062 = { - fileRef = F537568A016C3F1001DC9062; - isa = PBXBuildFile; - settings = { - }; - }; - F5375695016C3F1001DC9062 = { - fileRef = F537568B016C3F1001DC9062; - isa = PBXBuildFile; - settings = { - }; - }; - F5375696016C3F1001DC9062 = { - fileRef = F537568C016C3F1001DC9062; - isa = PBXBuildFile; - settings = { - }; - }; - F5375697016C3F1001DC9062 = { - fileRef = F537568D016C3F1001DC9062; - isa = PBXBuildFile; - settings = { - }; - }; - F5375698016C3F1001DC9062 = { - fileRef = F537568E016C3F1001DC9062; - isa = PBXBuildFile; - settings = { - }; - }; - F5375699016C3F1001DC9062 = { - fileRef = F537568F016C3F1001DC9062; - isa = PBXBuildFile; - settings = { - }; - }; - F537569A016C3F1001DC9062 = { - fileRef = F5375690016C3F1001DC9062; - isa = PBXBuildFile; - settings = { - }; - }; - F537569B016C3F1001DC9062 = { - fileRef = F5375691016C3F1001DC9062; - isa = PBXBuildFile; - settings = { - }; - }; - F537569C016C3F1001DC9062 = { - fileRef = F5375692016C3F1001DC9062; - isa = PBXBuildFile; - settings = { - }; - }; - F537569E016C49C301DC9062 = { - fileRef = F53755BB016C389901DC9062; - isa = PBXBuildFile; - settings = { - }; - }; - F537569F016C4DD401DC9062 = { - explicitFileType = wrapper.application; - isa = PBXFileReference; - path = "Wish Shell.app"; - refType = 3; - sourceTree = BUILT_PRODUCTS_DIR; - }; - F53756A0016C4DD401DC9062 = { - buildPhases = ( - F5877FB8031F982D016F146B, - F53756A1016C4DD401DC9062, - F53756A2016C4DD401DC9062, - F53756A4016C4DD401DC9062, - F53756A6016C4DD401DC9062, - F53756AA016C4DD401DC9062, - F5EEA7050324680B016F146B, - F55A164E032A11B1016F146B, - F5877FBD031FAC6A016F146B, - ); - buildSettings = { - APPLICATION_INSTALL_PATH = "${SYSTEM_ADMIN_APPS_DIR}"; - BINDIR = /usr/bin; - DYLIB_INSTALL_PATH = /Library/Frameworks; - FRAMEWORK_SEARCH_PATHS = "\"$(TCL_FRAMEWORK_DIR)\" \"$(SYMROOT)\""; - FRAMEWORK_VERSION = 8.4; - GLOBAL_CFLAGS = "`source \"${TCL_FRAMEWORK_DIR}/Tcl.framework/tclConfig.sh\"; echo $${}{TCL_EXTRA_CFLAGS} $${}{TCL_DEFS} | sed -e 's|\\\\\\\\\\\\\\\"|\\\"|g' -e 's|\\\\\\\\\\\\ |_|g' -e 's|TCL_WIDE_INT_TYPE|BOGUS_&|'` -U_REENTRANT"; - HEADER_SEARCH_PATHS = "\"$(TCL_FRAMEWORK_DIR)/Tcl.framework/Headers\" \"$(TCL_FRAMEWORK_DIR)/Tcl.framework/PrivateHeaders\" . ../generic ../xlib"; - INSTALL_PATH = "${APPLICATION_INSTALL_PATH}"; - LIBRARY_SEARCH_PATHS = ""; - OPTIMIZATION_CFLAGS = "-O0"; - OTHER_CFLAGS = "-DMAC_OSX_TK -DTCL_WIDE_INT_TYPE=\"long long\""; - OTHER_LDFLAGS = "-sectcreate __TEXT __info_plist \"$TEMP_DIR/Info.plist\" -headerpad_max_install_names"; - OTHER_REZFLAGS = "-i \"$(TCL_FRAMEWORK_DIR)/Tcl.framework/Headers\" -i \"../generic\""; - PRODUCT_NAME = "Wish Shell"; - SECTORDER_FLAGS = ""; - SYMROOT = "${SRCROOT}/../../build/tk"; - TCL_FRAMEWORK_DIR = "$(SYMROOT)/../tcl"; - USE_GCC3_PFE_SUPPORT = NO; - WARNING_CFLAGS = "-Wmost -Wno-four-char-constants -Wno-unknown-pragmas -Wno-deprecated-declarations"; - WRAPPER_EXTENSION = app; - }; - dependencies = ( - F53756B2016C525F01DC9062, - ); - isa = PBXApplicationTarget; - name = Wish; - productInstallPath = /Applications/Utilities; - productName = "Wish Shell"; - productReference = F537569F016C4DD401DC9062; - productSettingsXML = "<?xml version=\"1.0\" encoding=\"UTF-8\"?> -<!DOCTYPE plist PUBLIC \"-//Apple Computer//DTD PLIST 1.0//EN\" \"http://www.apple.com/DTDs/PropertyList-1.0.dtd\"> -<plist version=\"1.0\"> -<dict> - <key>CFBundleDevelopmentRegion</key> - <string>English</string> - <key>CFBundleDocumentTypes</key> - <array> - <dict> - <key>CFBundleTypeExtensions</key> - <array> - <string>*</string> - </array> - <key>CFBundleTypeName</key> - <string>NSStringPboardType</string> - <key>CFBundleTypeOSTypes</key> - <array> - <string>TEXT</string> - </array> - <key>CFBundleTypeRole</key> - <string>Viewer</string> - </dict> - </array> - <key>CFBundleExecutable</key> - <string>Wish Shell</string> - <key>CFBundleGetInfoString</key> - <string>Wish Shell 8.4, Copyright © 2005 Tcl Core Team. -Initial MacOS X Port by Jim Ingham <jingham@apple.com> & Ian Reid, Copyright © 2001-2002, Apple Computer, Inc.</string> - <key>CFBundleIconFile</key> - <string>Wish.icns</string> - <key>CFBundleIdentifier</key> - <string>com.tcltk.wish</string> - <key>CFBundleInfoDictionaryVersion</key> - <string>6.0</string> - <key>CFBundleName</key> - <string>Wish</string> - <key>CFBundlePackageType</key> - <string>APPL</string> - <key>CFBundleShortVersionString</key> - <string>8.4.12</string> - <key>CFBundleSignature</key> - <string>WiSH</string> - <key>CFBundleVersion</key> - <string>8.4.12</string> -</dict> -</plist> -"; - }; - F53756A1016C4DD401DC9062 = { - buildActionMask = 2147483647; - files = ( - F53756AC016C4E1D01DC9062, - ); - isa = PBXHeadersBuildPhase; - runOnlyForDeploymentPostprocessing = 0; - }; - F53756A2016C4DD401DC9062 = { - buildActionMask = 2147483647; - files = ( - F53756A3016C4DD401DC9062, - ); - isa = PBXResourcesBuildPhase; - runOnlyForDeploymentPostprocessing = 0; - }; - F53756A3016C4DD401DC9062 = { - fileRef = F537553B016C376E01DC9062; - isa = PBXBuildFile; - settings = { - }; - }; - F53756A4016C4DD401DC9062 = { - buildActionMask = 2147483647; - files = ( - F53756A5016C4DD401DC9062, - ); - isa = PBXSourcesBuildPhase; - runOnlyForDeploymentPostprocessing = 0; - }; - F53756A5016C4DD401DC9062 = { - fileRef = F5375548016C376E01DC9062; - isa = PBXBuildFile; - settings = { - }; - }; - F53756A6016C4DD401DC9062 = { - buildActionMask = 2147483647; - files = ( - F53756A8016C4DD401DC9062, - F5875C7D016FEF1D01DC9062, - F53756A7016C4DD401DC9062, - F50D96140196176E01DC9062, - F5877FB9031F9F49016F146B, - ); - isa = PBXFrameworksBuildPhase; - runOnlyForDeploymentPostprocessing = 0; - }; - F53756A7016C4DD401DC9062 = { - fileRef = F53755DE016C38D201DC9062; - isa = PBXBuildFile; - settings = { - }; - }; - F53756A8016C4DD401DC9062 = { - fileRef = F537567D016C3ADB01DC9062; - isa = PBXBuildFile; - settings = { - }; - }; - F53756AA016C4DD401DC9062 = { - buildActionMask = 2147483647; - files = ( - 4C3B4CF7040B18B200C916F0, - ); - isa = PBXRezBuildPhase; - runOnlyForDeploymentPostprocessing = 0; - }; - F53756AC016C4E1D01DC9062 = { - fileRef = F537556B016C37A601DC9062; - isa = PBXBuildFile; - settings = { - }; - }; - F53756B2016C525F01DC9062 = { - isa = PBXTargetDependency; - target = F53755DF016C38D201DC9062; - targetProxy = 4C9404F007F3C84D004B0BCE; - }; - F548F8C80313C9E0016F146B = { - buildActionMask = 2147483647; - dstPath = "Versions/$(FRAMEWORK_VERSION)"; - dstSubfolderSpec = 1; - files = ( - F5877FBA031F9F4B016F146B, - ); - isa = PBXCopyFilesBuildPhase; - runOnlyForDeploymentPostprocessing = 0; - }; - F548F8CA0313CEF0016F146B = { - buildActionMask = 2147483647; - files = ( - ); - isa = PBXHeadersBuildPhase; - runOnlyForDeploymentPostprocessing = 0; - }; - F548F8CB0313CEF0016F146B = { - buildActionMask = 2147483647; - files = ( - F548F8D10313CF14016F146B, - F548F8D00313CF11016F146B, - ); - isa = PBXSourcesBuildPhase; - runOnlyForDeploymentPostprocessing = 0; - }; - F548F8CC0313CEF0016F146B = { - buildActionMask = 2147483647; - files = ( - ); - isa = PBXFrameworksBuildPhase; - runOnlyForDeploymentPostprocessing = 0; - }; - F548F8CE0313CEF0016F146B = { - buildPhases = ( - F548F8CA0313CEF0016F146B, - F548F8CB0313CEF0016F146B, - F548F8CC0313CEF0016F146B, - F59D847903390D7E016F146B, - ); - buildSettings = { - GLOBAL_CFLAGS = "`source \"${TCL_FRAMEWORK_DIR}/Tcl.framework/tclConfig.sh\"; echo $${}{TCL_EXTRA_CFLAGS} $${}{TCL_DEFS} | sed -e 's|\\\\\\\\\\\\\\\"|\\\"|g' -e 's|\\\\\\\\\\\\ |_|g' -e 's|TCL_WIDE_INT_TYPE|BOGUS_&|'` -U_REENTRANT"; - HEADER_SEARCH_PATHS = "\"$(TCL_FRAMEWORK_DIR)/Tcl.framework/Headers\" \"$(TCL_FRAMEWORK_DIR)/Tcl.framework/PrivateHeaders\" . ../generic ../xlib"; - LIBRARY_STYLE = STATIC; - OPTIMIZATION_CFLAGS = "-O0"; - OTHER_CFLAGS = "-DMAC_OSX_TK -DTCL_WIDE_INT_TYPE=\"long long\""; - OTHER_LDFLAGS = ""; - OTHER_LIBTOOL_FLAGS = ""; - PRODUCT_NAME = libtkstub8.4.a; - REZ_EXECUTABLE = YES; - SECTORDER_FLAGS = ""; - SYMROOT = "${SRCROOT}/../../build/tk"; - TCL_FRAMEWORK_DIR = "$(SYMROOT)/../tcl"; - WARNING_CFLAGS = "-Wmost -Wno-four-char-constants -Wno-unknown-pragmas -Wno-deprecated-declarations"; - }; - dependencies = ( - ); - isa = PBXLibraryTarget; - name = TkStubLibrary; - productInstallPath = /usr/local/lib; - productName = TkStub; - productReference = F548F8CF0313CEF0016F146B; - }; - F548F8CF0313CEF0016F146B = { - explicitFileType = "compiled.mach-o.dylib"; - isa = PBXFileReference; - path = libtkstub8.4.a; - refType = 3; - sourceTree = BUILT_PRODUCTS_DIR; - }; - F548F8D00313CF11016F146B = { - fileRef = F53755B9016C389901DC9062; - isa = PBXBuildFile; - settings = { - }; - }; - F548F8D10313CF14016F146B = { - fileRef = F53755BB016C389901DC9062; - isa = PBXBuildFile; - settings = { - }; - }; - F548F8D20313CF93016F146B = { - isa = PBXTargetDependency; - target = F548F8CE0313CEF0016F146B; - targetProxy = 4C9404EF07F3C84D004B0BCE; - }; - F55A164E032A11B1016F146B = { - buildActionMask = 2147483647; - files = ( - ); - isa = PBXShellScriptBuildPhase; - runOnlyForDeploymentPostprocessing = 0; - shellPath = /bin/sh; - shellScript = "if [ -n \"${EMBEDDED_BUILD:-}\" ]; then\ncd \"${TARGET_BUILD_DIR}/${PRODUCT_NAME}.${WRAPPER_EXTENSION}/Contents\"\n\n# if we are embedding frameworks, copy them into the app\nrm -rf \"Frameworks\"\nmkdir -p \"Frameworks\"\nif [ \"${DEPLOYMENT_LOCATION:-}\" = \"YES\" -o \"${ACTION}\" = \"install\" ]; then\n FWKDIR=\"${INSTALL_ROOT}${DYLIB_INSTALL_PATH}\"\nelse\n FWKDIR=\"${TARGET_BUILD_DIR}\"\nfi\ncp -fpRPH \"${FWKDIR}/Tcl.framework\" \"Frameworks\"\ncp -fpRPH \"${FWKDIR}/Tk.framework\" \"Frameworks\"\n\n# fix install names when embedding\nfix_install_id ( ) {\n chmod -RH a+w \"$1\"\n install_name_tool -id $(otool -L \"$1\" | awk \"/$(basename \"$1\")\\.framework.*[^:]\\$/ {sub(\\\"^.*/Frameworks\\\",\\\"@executable_path/../Frameworks\\\",\\$1); print \\$1}\") \"$1\"\n chmod -RH a-w \"$1\" \n}\nfix_install_name ( ) {\n chmod -RH a+w \"$1\"\n install_name_tool -change $(otool -L \"$1\" | awk \"/$2\\.framework.*[^:]\\$/ {print \\$1; sub(\\\"^.*/Frameworks\\\",\\\"@executable_path/../Frameworks\\\",\\$1); print \\$1}\") \"$1\"\n chmod -RH a-w \"$1\" \n}\nfix_install_id Frameworks/Tcl.framework/Tcl\nfix_install_id Frameworks/Tk.framework/Tk\nfix_install_name \"MacOS/${PRODUCT_NAME}\" Tcl\nfix_install_name \"MacOS/${PRODUCT_NAME}\" Tk\n\nfi"; - }; F55BC46802B2D38B01DC9062 = { fileEncoding = 5; isa = PBXFileReference; @@ -3544,12 +1880,6 @@ Initial MacOS X Port by Jim Ingham <jingham@apple.com> & Ian Reid, Cop refType = 2; sourceTree = SOURCE_ROOT; }; - F55BC46902B2D38B01DC9062 = { - fileRef = F55BC46802B2D38B01DC9062; - isa = PBXBuildFile; - settings = { - }; - }; F55BC46A02B2D3F301DC9062 = { isa = PBXFileReference; lastKnownFileType = text; @@ -3558,12 +1888,6 @@ Initial MacOS X Port by Jim Ingham <jingham@apple.com> & Ian Reid, Cop refType = 2; sourceTree = SOURCE_ROOT; }; - F55BC46B02B2D3F301DC9062 = { - fileRef = F55BC46A02B2D3F301DC9062; - isa = PBXBuildFile; - settings = { - }; - }; F5875C7B016FEF1D01DC9062 = { isa = PBXFileReference; lastKnownFileType = wrapper.framework; @@ -3572,290 +1896,6 @@ Initial MacOS X Port by Jim Ingham <jingham@apple.com> & Ian Reid, Cop refType = 3; sourceTree = BUILT_PRODUCTS_DIR; }; - F5875C7D016FEF1D01DC9062 = { - fileRef = F5875C7B016FEF1D01DC9062; - isa = PBXBuildFile; - settings = { - }; - }; - F5877FB7031F97ED016F146B = { - buildActionMask = 8; - files = ( - ); - isa = PBXShellScriptBuildPhase; - runOnlyForDeploymentPostprocessing = 1; - shellPath = /bin/sh; - shellScript = "# ensure we can overwrite a previous install\nif [ -d \"${INSTALL_ROOT}${INSTALL_PATH}/${PRODUCT_NAME}.${WRAPPER_EXTENSION}\" ]; then\n chmod -RH u+w \"${INSTALL_ROOT}${INSTALL_PATH}/${PRODUCT_NAME}.${WRAPPER_EXTENSION}\"\nfi"; - }; - F5877FB8031F982D016F146B = { - buildActionMask = 8; - files = ( - ); - isa = PBXShellScriptBuildPhase; - runOnlyForDeploymentPostprocessing = 1; - shellPath = /bin/sh; - shellScript = "# ensure we can overwrite a previous install\nif [ -d \"${INSTALL_ROOT}${INSTALL_PATH}/${PRODUCT_NAME}.${WRAPPER_EXTENSION}\" ]; then\n chmod -RH u+w \"${INSTALL_ROOT}${INSTALL_PATH}/${PRODUCT_NAME}.${WRAPPER_EXTENSION}\"\nfi"; - }; - F5877FB9031F9F49016F146B = { - fileRef = F548F8CF0313CEF0016F146B; - isa = PBXBuildFile; - settings = { - }; - }; - F5877FBA031F9F4B016F146B = { - fileRef = F548F8CF0313CEF0016F146B; - isa = PBXBuildFile; - settings = { - }; - }; - F5877FBC031FA968016F146B = { - buildActionMask = 8; - files = ( - ); - isa = PBXShellScriptBuildPhase; - runOnlyForDeploymentPostprocessing = 1; - shellPath = /bin/sh; - shellScript = "# redo prebinding\ncd \"${INSTALL_ROOT}/\"\nif [ ! -d usr/lib ]; then mkdir -p usr; ln -fs /usr/lib usr/; RM_USRLIB=1; fi\nif [ ! -d System ]; then ln -fs /System .; RM_SYSTEM=1; fi\nif [ ! -d ./${DYLIB_INSTALL_PATH}/Tcl.framework ]; then ln -fs ${TCL_FRAMEWORK_DIR}/Tcl.framework ./${DYLIB_INSTALL_PATH}; RM_TCL=1; fi\nredo_prebinding -r . \"./${INSTALL_PATH}/${PRODUCT_NAME}.${WRAPPER_EXTENSION}/Versions/${FRAMEWORK_VERSION}/${PRODUCT_NAME}\"\nif [ -n \"${RM_USRLIB:-}\" ]; then rm -f usr/lib; rmdir -p usr 2>&-; fi\nif [ -n \"${RM_SYSTEM:-}\" ]; then rm -f System; fi\nif [ -n \"${RM_TCL:-}\" ]; then rm -f ./${DYLIB_INSTALL_PATH}/Tcl.framework; fi\n\n# fix permissions on uninstalled products\nchmod a+w \"${TEMP_ROOT}/UninstalledProducts\"\nchmod a+w \"${TEMP_ROOT}\"/UninstalledProducts/libtkstub*.a"; - }; - F5877FBD031FAC6A016F146B = { - buildActionMask = 8; - files = ( - ); - isa = PBXShellScriptBuildPhase; - runOnlyForDeploymentPostprocessing = 1; - shellPath = /bin/sh; - shellScript = "# redo prebinding\ncd \"${INSTALL_ROOT}/\"\nAPP_DIR=\"${PRODUCT_NAME}.${WRAPPER_EXTENSION}\"\nEXECUTABLE_DIR=\"${APP_DIR}/Contents/MacOS\"\nEXECUTABLE=\"${EXECUTABLE_DIR}/${PRODUCT_NAME}\"\nFWK_RSRC_DIR=\"${DYLIB_INSTALL_PATH}/Tk.framework/Versions/${FRAMEWORK_VERSION}/Resources\"\nif [ -z \"${EMBEDDED_BUILD:-}\" ]; then\n if [ ! -d usr/lib ]; then mkdir -p usr; ln -fs /usr/lib usr/; RM_USRLIB=1; fi\n if [ ! -d System ]; then ln -fs /System .; RM_SYSTEM=1; fi\n if [ ! -d ./${DYLIB_INSTALL_PATH}/Tcl.framework ]; then ln -fs ${TCL_FRAMEWORK_DIR}/Tcl.framework ./${DYLIB_INSTALL_PATH}; RM_TCL=1; fi\n PREBIND_OPTS=\"-r .\"\nfi\nredo_prebinding ${PREBIND_OPTS:-} -e \"./${INSTALL_PATH}/${EXECUTABLE_DIR}\" \"./${INSTALL_PATH}/${EXECUTABLE}\"\nif [ -n \"${RM_USRLIB:-}\" ]; then rm -f usr/lib; rmdir -p usr 2>&-; fi\nif [ -n \"${RM_SYSTEM:-}\" ]; then rm -f System; fi\nif [ -n \"${RM_TCL:-}\" ]; then rm -f ./${DYLIB_INSTALL_PATH}/Tcl.framework; fi\n\n# copy Wish.app into framework, install wish script & symbolic link\nif [ -z \"${EMBEDDED_BUILD:-}\" ]; then\nchmod -H a+w \"./${FWK_RSRC_DIR}\"\nif [ -e \"./${FWK_RSRC_DIR}/${APP_DIR}\" ]; then chmod -RH a+w \"./${FWK_RSRC_DIR}/${APP_DIR}\" && rm -rf \"./${FWK_RSRC_DIR}/${APP_DIR}\"; fi\ncp -fpRPH \"./${INSTALL_PATH}/${APP_DIR}\" \"./${FWK_RSRC_DIR}\"\nchmod -H ${INSTALL_MODE_FLAG} \"./${FWK_RSRC_DIR}\"\nmkdir -p \"./${BINDIR}\"\nrm -f \"./${BINDIR}/wish${FRAMEWORK_VERSION}\"\ncat > \"./${BINDIR}/wish${FRAMEWORK_VERSION}\" <<EOF\n#!/bin/sh\n\"\\$(dirname \\$0)$(echo ${BINDIR} | sed -e 's#/[^/][^/]*#/..#g')${FWK_RSRC_DIR}/${EXECUTABLE}\" \"\\$@\"\nEOF\nchmod a+x \"./${BINDIR}/wish${FRAMEWORK_VERSION}\"\nln -fs \"wish${FRAMEWORK_VERSION}\" \"./${BINDIR}/wish\"\nfi"; - }; - F59D847903390D7E016F146B = { - buildActionMask = 2147483647; - files = ( - ); - isa = PBXShellScriptBuildPhase; - runOnlyForDeploymentPostprocessing = 0; - shellPath = /bin/sh; - shellScript = "if [ \"${BUILD_STYLE}\" = \"Development\" ]; then\n\t# force Deployment build to be relinked next time\n\tif [ -f \"${OBJROOT}/Deployment.build/${PROJECT_NAME}.build/${TARGET_NAME}.build/Objects-normal/LinkFileList\" ]; then\n\t touch -t `date -r \\`expr \\\\\\`date +\"%s\"\\\\\\` + 30\\` +\"%Y%m%d%H%M.%S\"` \"${OBJROOT}/Deployment.build/${PROJECT_NAME}.build/${TARGET_NAME}.build/Objects-normal/LinkFileList\"\n\tfi\nelse\n\t# force Development build to be relinked next time\n\tif [ -f \"${OBJROOT}/Development.build/${PROJECT_NAME}.build/${TARGET_NAME}.build/Objects-normal/LinkFileList\" ]; then\n\t touch -t `date -r \\`expr \\\\\\`date +\"%s\"\\\\\\` + 30\\` +\"%Y%m%d%H%M.%S\"` \"${OBJROOT}/Development.build/${PROJECT_NAME}.build/${TARGET_NAME}.build/Objects-normal/LinkFileList\"\n\tfi\nfi"; - }; - F5B1FC08016FFE3501DC9062 = { - buildActionMask = 2147483647; - dstPath = "Versions/$(FRAMEWORK_VERSION)/Resources/Scripts"; - dstSubfolderSpec = 1; - files = ( - F5B1FC09016FFE3501DC9062, - F5B1FC0A016FFE3501DC9062, - F5B1FC0B016FFE3501DC9062, - F5B1FC0C016FFE3501DC9062, - F5B1FC0D016FFE3501DC9062, - F5B1FC0E016FFE3501DC9062, - F5B1FC0F016FFE3501DC9062, - F5B1FC10016FFE3501DC9062, - F5B1FC11016FFE3501DC9062, - F5B1FC12016FFE3501DC9062, - F5B1FC13016FFE3501DC9062, - F5B1FC14016FFE3501DC9062, - F5B1FC15016FFE3501DC9062, - F5C2EA35034D7212016F146B, - F5B1FC16016FFE3501DC9062, - F5B1FC17016FFE3501DC9062, - F5B1FC18016FFE3501DC9062, - F5B1FC19016FFE3501DC9062, - F5B1FC1A016FFE3501DC9062, - F55BC46B02B2D3F301DC9062, - F5B1FC1B016FFE3501DC9062, - F5B1FC1C016FFE3501DC9062, - F5B1FC1D016FFE3501DC9062, - F5B1FC1E016FFE3501DC9062, - F5B1FC1F016FFE3501DC9062, - F5B1FC20016FFE3501DC9062, - F5B1FC21016FFE3501DC9062, - F5B1FC22016FFE3501DC9062, - F5B1FC23016FFE3501DC9062, - F5B1FC24016FFE3501DC9062, - F5B1FC25016FFE3501DC9062, - F5B1FC26016FFE3501DC9062, - ); - isa = PBXCopyFilesBuildPhase; - runOnlyForDeploymentPostprocessing = 0; - }; - F5B1FC09016FFE3501DC9062 = { - fileRef = F5DF0928016CD3F901DC9062; - isa = PBXBuildFile; - settings = { - }; - }; - F5B1FC0A016FFE3501DC9062 = { - fileRef = F5DF0929016CD3F901DC9062; - isa = PBXBuildFile; - settings = { - }; - }; - F5B1FC0B016FFE3501DC9062 = { - fileRef = F5DF092A016CD3F901DC9062; - isa = PBXBuildFile; - settings = { - }; - }; - F5B1FC0C016FFE3501DC9062 = { - fileRef = F5DF092B016CD3F901DC9062; - isa = PBXBuildFile; - settings = { - }; - }; - F5B1FC0D016FFE3501DC9062 = { - fileRef = F5DF092C016CD3F901DC9062; - isa = PBXBuildFile; - settings = { - }; - }; - F5B1FC0E016FFE3501DC9062 = { - fileRef = F5DF092D016CD3F901DC9062; - isa = PBXBuildFile; - settings = { - }; - }; - F5B1FC0F016FFE3501DC9062 = { - fileRef = F5DF092E016CD3F901DC9062; - isa = PBXBuildFile; - settings = { - }; - }; - F5B1FC10016FFE3501DC9062 = { - fileRef = F5DF092F016CD3F901DC9062; - isa = PBXBuildFile; - settings = { - }; - }; - F5B1FC11016FFE3501DC9062 = { - fileRef = F5DF0930016CD3F901DC9062; - isa = PBXBuildFile; - settings = { - }; - }; - F5B1FC12016FFE3501DC9062 = { - fileRef = F5DF0931016CD3F901DC9062; - isa = PBXBuildFile; - settings = { - }; - }; - F5B1FC13016FFE3501DC9062 = { - fileRef = F5DF0932016CD3F901DC9062; - isa = PBXBuildFile; - settings = { - }; - }; - F5B1FC14016FFE3501DC9062 = { - fileRef = F5DF0933016CD3F901DC9062; - isa = PBXBuildFile; - settings = { - }; - }; - F5B1FC15016FFE3501DC9062 = { - fileRef = F5DF0934016CD3F901DC9062; - isa = PBXBuildFile; - settings = { - }; - }; - F5B1FC16016FFE3501DC9062 = { - fileRef = F5DF0935016CD3F901DC9062; - isa = PBXBuildFile; - settings = { - }; - }; - F5B1FC17016FFE3501DC9062 = { - fileRef = F5DF0936016CD3F901DC9062; - isa = PBXBuildFile; - settings = { - }; - }; - F5B1FC18016FFE3501DC9062 = { - fileRef = F5DF0937016CD3F901DC9062; - isa = PBXBuildFile; - settings = { - }; - }; - F5B1FC19016FFE3501DC9062 = { - fileRef = F5DF0938016CD3F901DC9062; - isa = PBXBuildFile; - settings = { - }; - }; - F5B1FC1A016FFE3501DC9062 = { - fileRef = F5DF0939016CD3F901DC9062; - isa = PBXBuildFile; - settings = { - }; - }; - F5B1FC1B016FFE3501DC9062 = { - fileRef = F5DF093A016CD3F901DC9062; - isa = PBXBuildFile; - settings = { - }; - }; - F5B1FC1C016FFE3501DC9062 = { - fileRef = F5DF093B016CD3F901DC9062; - isa = PBXBuildFile; - settings = { - }; - }; - F5B1FC1D016FFE3501DC9062 = { - fileRef = F5DF093C016CD3F901DC9062; - isa = PBXBuildFile; - settings = { - }; - }; - F5B1FC1E016FFE3501DC9062 = { - fileRef = F5DF093D016CD3F901DC9062; - isa = PBXBuildFile; - settings = { - }; - }; - F5B1FC1F016FFE3501DC9062 = { - fileRef = F5DF093E016CD3F901DC9062; - isa = PBXBuildFile; - settings = { - }; - }; - F5B1FC20016FFE3501DC9062 = { - fileRef = F5DF093F016CD3F901DC9062; - isa = PBXBuildFile; - settings = { - }; - }; - F5B1FC21016FFE3501DC9062 = { - fileRef = F5DF0940016CD3F901DC9062; - isa = PBXBuildFile; - settings = { - }; - }; - F5B1FC22016FFE3501DC9062 = { - fileRef = F5DF0941016CD3F901DC9062; - isa = PBXBuildFile; - settings = { - }; - }; - F5B1FC23016FFE3501DC9062 = { - fileRef = F5DF0942016CD3F901DC9062; - isa = PBXBuildFile; - settings = { - }; - }; - F5B1FC24016FFE3501DC9062 = { - fileRef = F5DF0943016CD3F901DC9062; - isa = PBXBuildFile; - settings = { - }; - }; - F5B1FC25016FFE3501DC9062 = { - fileRef = F5DF0944016CD3F901DC9062; - isa = PBXBuildFile; - settings = { - }; - }; - F5B1FC26016FFE3501DC9062 = { - fileRef = F5DF0945016CD3F901DC9062; - isa = PBXBuildFile; - settings = { - }; - }; F5BFE58B02F8C41501DC9062 = { fileEncoding = 5; isa = PBXFileReference; @@ -3874,18 +1914,6 @@ Initial MacOS X Port by Jim Ingham <jingham@apple.com> & Ian Reid, Cop refType = 2; sourceTree = SOURCE_ROOT; }; - F5BFE58D02F8C41501DC9062 = { - fileRef = F5BFE58B02F8C41501DC9062; - isa = PBXBuildFile; - settings = { - }; - }; - F5BFE58E02F8C41501DC9062 = { - fileRef = F5BFE58C02F8C41501DC9062; - isa = PBXBuildFile; - settings = { - }; - }; F5BFE58F02F8C45B01DC9062 = { fileEncoding = 5; isa = PBXFileReference; @@ -3895,21 +1923,6 @@ Initial MacOS X Port by Jim Ingham <jingham@apple.com> & Ian Reid, Cop refType = 2; sourceTree = SOURCE_ROOT; }; - F5BFE59002F8C45B01DC9062 = { - fileRef = F5BFE58F02F8C45B01DC9062; - isa = PBXBuildFile; - settings = { - }; - }; - F5C1D51901B88F9A01DC9062 = { - buildActionMask = 12; - files = ( - ); - isa = PBXShellScriptBuildPhase; - runOnlyForDeploymentPostprocessing = 0; - shellPath = /bin/sh; - shellScript = "# synthesize tkConfig.sh via buildTkConfig.tcl script\nexport DYLD_FRAMEWORK_PATH=\"${TCL_FRAMEWORK_DIR}\"\nTCLSH=\"${TCLSH_DIR}/tclsh${FRAMEWORK_VERSION}\"\nif [ ! -e \"${TCLSH}\" ]; then TCLSH=\"/bin/sh\"; fi\n\"${TCLSH}\" \"buildTkConfig.tcl\" \"${TCL_FRAMEWORK_DIR}/Tcl.${WRAPPER_EXTENSION}/tclConfig.sh\" \"../unix/tkConfig.sh.in\" \"${TARGET_BUILD_DIR}/${PRODUCT_NAME}.${WRAPPER_EXTENSION}/Versions/${FRAMEWORK_VERSION}/tkConfig.sh\""; - }; F5C2EA33034D71B2016F146B = { isa = PBXFileReference; lastKnownFileType = text; @@ -3918,12 +1931,6 @@ Initial MacOS X Port by Jim Ingham <jingham@apple.com> & Ian Reid, Cop refType = 2; sourceTree = SOURCE_ROOT; }; - F5C2EA35034D7212016F146B = { - fileRef = F5C2EA33034D71B2016F146B; - isa = PBXBuildFile; - settings = { - }; - }; F5C88659017D625C01DC9062 = { children = ( F5C8865A017D625C01DC9062, @@ -4234,15 +2241,6 @@ Initial MacOS X Port by Jim Ingham <jingham@apple.com> & Ian Reid, Cop refType = 2; sourceTree = SOURCE_ROOT; }; - F5EEA7050324680B016F146B = { - buildActionMask = 2147483647; - files = ( - ); - isa = PBXShellScriptBuildPhase; - runOnlyForDeploymentPostprocessing = 0; - shellPath = /bin/sh; - shellScript = "if [ \"${BUILD_STYLE}\" = \"Development\" ]; then\n\t# force Deployment build to be relinked next time\n\tif [ -f \"${OBJROOT}/Deployment.build/${PROJECT_NAME}.build/${TARGET_NAME}.build/Objects-normal/LinkFileList\" ]; then\n\t touch -t `date -r \\`expr \\\\\\`date +\"%s\"\\\\\\` + 30\\` +\"%Y%m%d%H%M.%S\"` \"${OBJROOT}/Deployment.build/${PROJECT_NAME}.build/${TARGET_NAME}.build/Objects-normal/LinkFileList\"\n\tfi\nelse\n\t# force Development build to be relinked next time\n\tif [ -f \"${OBJROOT}/Development.build/${PROJECT_NAME}.build/${TARGET_NAME}.build/Objects-normal/LinkFileList\" ]; then\n\t touch -t `date -r \\`expr \\\\\\`date +\"%s\"\\\\\\` + 30\\` +\"%Y%m%d%H%M.%S\"` \"${OBJROOT}/Development.build/${PROJECT_NAME}.build/${TARGET_NAME}.build/Objects-normal/LinkFileList\"\n\tfi\nfi\n# create symbolic link to Tcl.framework if necessary\ncd \"${SYMROOT}\"\nif [ ! -e Tcl.framework -o -L Tcl.framework ]; then\n\trm -f Tcl.framework && ln -s \"${TCL_FRAMEWORK_DIR}/Tcl.framework\" .\nfi"; - }; //F50 //F51 //F52 @@ -4253,15 +2251,6 @@ Initial MacOS X Port by Jim Ingham <jingham@apple.com> & Ian Reid, Cop //F92 //F93 //F94 - F92CCC75080CEBA800E72D64 = { - buildActionMask = 2147483647; - files = ( - ); - isa = PBXShellScriptBuildPhase; - runOnlyForDeploymentPostprocessing = 0; - shellPath = /bin/sh; - shellScript = "# extract global symbols in libtclstub so that we can unexport them from Tk.framework\nnm -gjp \"${TCL_FRAMEWORK_DIR}/Tcl.framework/libtclstub${FRAMEWORK_VERSION}${TCL_DBGX}.a\" | tail +3 > \"${TEMP_DIR}/tclstub.exp\""; - }; F92ED9910403D0F0006F146B = { fileEncoding = 5; isa = PBXFileReference; @@ -4271,14 +2260,51 @@ Initial MacOS X Port by Jim Ingham <jingham@apple.com> & Ian Reid, Cop refType = 2; sourceTree = SOURCE_ROOT; }; - F9A61D2F04C2C861006F5A0B = { - buildActionMask = 8; - files = ( + F9D6747B08E84DC100688CAA = { + buildArgumentsString = "-c \"cd \\\"${TK_SRCROOT}/macosx\\\" && ACTION=${ACTION} && gnumake \\${ACTION:+\\${ACTION/clean/distclean}-}${MAKE_TARGET} INSTALL_ROOT=\\\"${DSTROOT}\\\" INSTALL_PATH=\\\"${INSTALL_PATH}\\\" APPLICATION_INSTALL_PATH=\\\"${APPLICATION_INSTALL_PATH}\\\" PREFIX=\\\"${PREFIX}\\\" BINDIR=\\\"${BINDIR}\\\" MANDIR=\\\"${MANDIR}\\\" TCL_BUILD_DIR=\\\"${TCL_BUILD_DIR}\\\" \\${EXTRA_MAKE_FLAGS} ${ALL_SETTINGS}\""; + buildPhases = ( ); - isa = PBXShellScriptBuildPhase; - runOnlyForDeploymentPostprocessing = 1; - shellPath = /bin/sh; - shellScript = "if [ -z \"${EMBEDDED_BUILD:-}\" ]; then\nif [ \"${BUILD_STYLE}\" = \"Deployment\" ]; then\n\t# build html documentation\n\tif [ -n \"${TCLTKMAN2HTML}\" -o -e \"${TCL_FRAMEWORK_DIR}/Deployment/Makefile\" ]; then\n\t\texport DYLD_FRAMEWORK_PATH=\"${TCL_FRAMEWORK_DIR}\"\n\t\trm -fr \"${INSTALL_ROOT}${DOCDIR}/${PRODUCT_NAME}\"\n\t\tif [ -n \"${TCLTKMAN2HTML}\" ]; then\n\t\t\t\"${TCLSH_DIR}/tclsh${FRAMEWORK_VERSION}\" \"${TCLTKMAN2HTML}\" \\\n\t\t\t\t--srcdir=\"../..\" --tk \\\n\t\t\t\t--htmldir=\"${INSTALL_ROOT}${DOCDIR}/${PRODUCT_NAME}\"\n\t\telse\n\t\t\tgnumake -C \"${TCL_FRAMEWORK_DIR}/Deployment\" html-tk \\\n\t\t\t\tDISTDIR=\"${INSTALL_ROOT}${DOCDIR}\" \\\n\t\t\t\tTCL_EXE=\"${TCLSH_DIR}/tclsh${FRAMEWORK_VERSION}\"\n\t\t\tmv -f \"${INSTALL_ROOT}${DOCDIR}/html\" \\\n\t\t\t\t\"${INSTALL_ROOT}${DOCDIR}/${PRODUCT_NAME}\"\n\t\tfi\n\t\tln -fs contents.htm \\\n\t\t\t\"${INSTALL_ROOT}${DOCDIR}/${PRODUCT_NAME}/${PRODUCT_NAME}TOC.html\"\n\telse\n\t\techo \"Couldn't build html documentation!\"\n\tfi\nfi\nfi"; + buildSettings = { + APPLICATION_INSTALL_PATH = /Applications/Utilities; + BINDIR = "${PREFIX}/bin"; + INSTALL_PATH = /Library/Frameworks; + MANDIR = "${PREFIX}/man"; + PREFIX = /usr/local; + PRODUCT_NAME = Tk; + TCL_BUILD_DIR = "${SYMROOT}/../tcl/${BUILD_STYLE}"; + TCL_SRCROOT = "${SRCROOT}/../../tcl"; + TEMP_DIR = "${PROJECT_TEMP_DIR}"; + TK_SRCROOT = "${SRCROOT}/../../tk"; + }; + buildToolPath = /bin/bash; + buildWorkingDirectory = "${SRCROOT}"; + dependencies = ( + ); + isa = PBXLegacyTarget; + name = Tk; + passBuildSettingsInEnvironment = 0; + productName = Tk; + }; + F9F6B1BE08E8639A00C9CB24 = { + isa = PBXFileReference; + lastKnownFileType = wrapper.framework; + path = Tk.framework; + refType = 3; + sourceTree = BUILT_PRODUCTS_DIR; + }; + F9F6B1BF08E863B300C9CB24 = { + isa = PBXFileReference; + lastKnownFileType = wrapper.application; + path = Wish.app; + refType = 3; + sourceTree = BUILT_PRODUCTS_DIR; + }; + F9F6B1C008E863C200C9CB24 = { + isa = PBXFileReference; + lastKnownFileType = "compiled.mach-o.executable"; + path = tktest; + refType = 3; + sourceTree = BUILT_PRODUCTS_DIR; }; }; rootObject = F537552A016C352C01DC9062; diff --git a/macosx/buildTkConfig.tcl b/macosx/buildTkConfig.tcl deleted file mode 100755 index dba0c51..0000000 --- a/macosx/buildTkConfig.tcl +++ /dev/null @@ -1,44 +0,0 @@ -#!/bin/sh -# -# Synthesize tkConfig.sh for Mac OS X based -# on tclConfig.sh and tkConfig.sh.in -# -# RCS: @(#) $Id: buildTkConfig.tcl,v 1.1.2.1 2003/07/21 12:37:08 das Exp $ -# -# the next line restarts using tclsh \ -exec tclsh8.4 "$0" "$@" - -proc main {tclConfigFile tkConfigFileIn tkConfigFile} { - set in [open $tclConfigFile] - set tclConfig [read $in] - close $in - set in [open $tkConfigFileIn] - set tkConfig [read $in] - close $in - set tclconfvars [regexp -all -inline -line -- {^TCL_([^=]*)=(.*)$} $tclConfig] - lappend tclconfvars {} {XINCLUDES} \ - [lindex [regexp -inline -line -- {^TCL_INCLUDE_SPEC=(.*)$} $tclConfig] 1] - set tkconfvars [regexp -all -inline -line -- {^TK_([^=]*)=} $tkConfig] - foreach {-> var val} $tclconfvars { - regsub -all -- {([Tt])cl((?![[:alnum:]])|stub)} $val {\1k\2} val - foreach {-> tkvar} $tkconfvars { - regsub -all -- "TCL_$tkvar" $val "TK_$tkvar" val - } - regsub -line -- "^TK_$var=.*\$" $tkConfig "TK_$var=$val" tkConfig - } - regsub -line -all -- {@[^@]+@} $tkConfig {} tkConfig - regsub -line -all -- {(/tk)/(?:Development|Deployment)} $tkConfig {\1} tkConfig - regsub -line {^(TK_DEFS=')} $tkConfig {\1 -DMAC_OSX_TK} tkConfig - - set out [open $tkConfigFile w] - puts $out $tkConfig - close $out -} - -if {$argc != 3} { - puts stderr "usage: $argv0 /path/to/tclConfig.sh \ -/path/to/tkConfig.sh.in /path/to/tkConfig.sh" - exit 1 -} - -main [lindex $argv 0] [lindex $argv 1] [lindex $argv 2] diff --git a/macosx/tkMacOSXButton.c b/macosx/tkMacOSXButton.c index 909e83e..d5672cc 100644 --- a/macosx/tkMacOSXButton.c +++ b/macosx/tkMacOSXButton.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: tkMacOSXButton.c,v 1.2.2.11 2005/09/10 14:54:17 das Exp $ + * RCS: @(#) $Id: tkMacOSXButton.c,v 1.2.2.12 2005/11/27 02:36:46 das Exp $ */ #include "tkButton.h" @@ -789,7 +789,7 @@ TkpDestroyButton( *---------------------------------------------------------------------- */ -int +static int TkMacOSXInitControl ( MacButton *mbPtr, /* Mac button. */ GWorldPtr destPort, diff --git a/macosx/tkMacOSXCarbonEvents.c b/macosx/tkMacOSXCarbonEvents.c index 9b45c19..855ab7b 100644 --- a/macosx/tkMacOSXCarbonEvents.c +++ b/macosx/tkMacOSXCarbonEvents.c @@ -2,12 +2,19 @@ * tkMacOSXCarbonEvents.c -- * * This file implements functions that register for and handle - * various Carbon Events. The reason a separate set of handlers - * is necessary is that not all interesting events get delivered - * directly to the event queue through ReceiveNextEvent. Some only - * get delivered if you register a Carbon Event Handler for the event. + * various Carbon Events and Timers. Most carbon events of interest + * to TkAqua are processed in a handler registered on the dispatcher + * event target so that we get first crack at them before HIToolbox + * dispatchers/processes them further. + * As some events are sent directly to the focus or app event target + * and not dispatched normally, we also register a handler on the + * application event target. * - * Copyright 2001, Apple Computer, Inc. + * Copyright 2001, Apple Computer, Inc. + * Copyright (c) 2005 Daniel A. Steffen <das@users.sourceforge.net> + * + * See the file "license.terms" for information on usage and redistribution of + * this file, and for a DISCLAIMER OF ALL WARRANTIES. * * The following terms apply to all files originating from Apple * Computer, Inc. ("Apple") and associated with the software @@ -53,7 +60,7 @@ * software in accordance with the terms specified in this * license. * - * RCS: @(#) $Id: tkMacOSXCarbonEvents.c,v 1.3.2.4 2005/09/10 15:11:29 das Exp $ + * RCS: @(#) $Id: tkMacOSXCarbonEvents.c,v 1.3.2.5 2005/11/27 02:36:46 das Exp $ */ #include "tkInt.h" @@ -62,69 +69,83 @@ #include "tkMacOSXDebug.h" /* -#ifdef TK_MAC_DEBUG +#ifdef TK_MAC_DEBUG #define TK_MAC_DEBUG_CARBON_EVENTS #endif */ -#ifdef TK_MAC_DEBUG_CARBON_EVENTS -/* Carbon-internal event debugging routines (c.f. Technote 2124): */ -void _DebugPrintEvent(EventRef inEvent); -void _TraceEventByName(CFStringRef eventName); -#endif /* TK_MAC_DEBUG_CARBON_EVENTS */ - /* Declarations of functions used only in this file */ -static OSStatus CarbonEventHandlerProc ( - EventHandlerCallRef callRef, - EventRef inEvent, - void *userData); +static OSStatus CarbonEventHandlerProc(EventHandlerCallRef callRef, + EventRef event, void *userData); +static OSStatus InstallStandardApplicationEventHandler(); +static void ExitRaelEventHandlerProc (EventHandlerCallRef, EventRef, void*) + __attribute__ ((__noreturn__)); +static void CarbonTimerProc(EventLoopTimerRef timer, void *userData); + +/* Static data used by several functions in this file */ +static jmp_buf exitRaelJmpBuf; +static EventLoopTimerRef carbonTimer = NULL; +static int carbonTimerEnabled = 0; /* *---------------------------------------------------------------------- * * CarbonEventHandlerProc -- * - * This procedure is the handler for all registered CarbonEvents. + * This procedure is the handler for all registered CarbonEvents. * * Results: - * None. + * OS status code. * * Side effects: - * Dispatches CarbonEvents. + * Dispatches CarbonEvents. * *---------------------------------------------------------------------- */ static OSStatus CarbonEventHandlerProc ( - EventHandlerCallRef callRef, - EventRef inEvent, - void *inUserData) + EventHandlerCallRef callRef, + EventRef event, + void *userData) { - OSStatus result = eventNotHandledErr; + OSStatus result = eventNotHandledErr; TkMacOSXEvent macEvent; MacEventStatus eventStatus; + macEvent.eventRef = event; + macEvent.eClass = GetEventClass(macEvent.eventRef); + macEvent.eKind = GetEventKind(macEvent.eventRef); + macEvent.interp = (Tcl_Interp *) userData; + bzero(&eventStatus, sizeof(eventStatus)); + #ifdef TK_MAC_DEBUG_CARBON_EVENTS char buf [256]; - CarbonEventToAscii(inEvent, buf); - fprintf(stderr, "CarbonEventHandlerProc started handling %s\n", buf); - _DebugPrintEvent(inEvent); + if (macEvent.eKind != kEventMouseMoved && + macEvent.eKind != kEventMouseDragged) { + CarbonEventToAscii(event, buf); + fprintf(stderr, "CarbonEventHandlerProc started handling %s\n", buf); + TkMacOSXInitNamedSymbol(HIToolbox, void, _DebugPrintEvent, + EventRef inEvent); + if (_DebugPrintEvent) { + /* Carbon-internal event debugging (c.f. Technote 2124) */ + _DebugPrintEvent(event); + } + } #endif /* TK_MAC_DEBUG_CARBON_EVENTS */ - macEvent.eventRef = inEvent; - macEvent.eClass = GetEventClass(macEvent.eventRef); - macEvent.eKind = GetEventKind(macEvent.eventRef); - macEvent.interp = (Tcl_Interp *) inUserData; - bzero(&eventStatus, sizeof(eventStatus)); TkMacOSXProcessEvent(&macEvent,&eventStatus); if (eventStatus.stopProcessing) { - result = noErr; + result = noErr; } #ifdef TK_MAC_DEBUG_CARBON_EVENTS - fprintf(stderr, "CarbonEventHandlerProc finished handling %s: %s handled\n", buf, - eventStatus.stopProcessing ? " " : "not"); + if (macEvent.eKind != kEventMouseMoved && + macEvent.eKind != kEventMouseDragged) { + fprintf(stderr, + "CarbonEventHandlerProc finished handling %s: %s handled\n", + buf, eventStatus.stopProcessing ? " " : "not"); + } #endif /* TK_MAC_DEBUG_CARBON_EVENTS */ return result; } @@ -134,75 +155,312 @@ CarbonEventHandlerProc ( * * TkMacOSXInitCarbonEvents -- * - * This procedure initializes all CarbonEvent handlers. + * This procedure initializes all CarbonEvent handlers. * * Results: - * None. + * None. * * Side effects: - * Handlers for Carbon Events are registered. + * Handlers for Carbon Events are registered. * *---------------------------------------------------------------------- */ void TkMacOSXInitCarbonEvents ( - Tcl_Interp *interp) + Tcl_Interp *interp) { + OSStatus err; const EventTypeSpec dispatcherEventTypes[] = { - {kEventClassMouse, kEventMouseDown}, - {kEventClassMouse, kEventMouseUp}, - {kEventClassMouse, kEventMouseMoved}, - {kEventClassMouse, kEventMouseDragged}, - {kEventClassMouse, kEventMouseWheelMoved}, - {kEventClassWindow, kEventWindowUpdate}, - {kEventClassWindow, kEventWindowActivated}, - {kEventClassWindow, kEventWindowDeactivated}, - {kEventClassKeyboard, kEventRawKeyDown}, - {kEventClassKeyboard, kEventRawKeyRepeat}, - {kEventClassKeyboard, kEventRawKeyUp}, - {kEventClassKeyboard, kEventRawKeyModifiersChanged}, - {kEventClassKeyboard, kEventRawKeyRepeat}, - {kEventClassApplication, kEventAppActivated}, - {kEventClassApplication, kEventAppDeactivated}, - {kEventClassApplication, kEventAppQuit}, - {kEventClassAppleEvent, kEventAppleEvent}, + {kEventClassMouse, kEventMouseDown}, + {kEventClassMouse, kEventMouseUp}, + {kEventClassMouse, kEventMouseMoved}, + {kEventClassMouse, kEventMouseDragged}, + {kEventClassMouse, kEventMouseWheelMoved}, + {kEventClassWindow, kEventWindowUpdate}, + {kEventClassWindow, kEventWindowActivated}, + {kEventClassWindow, kEventWindowDeactivated}, + {kEventClassKeyboard, kEventRawKeyDown}, + {kEventClassKeyboard, kEventRawKeyRepeat}, + {kEventClassKeyboard, kEventRawKeyUp}, + {kEventClassKeyboard, kEventRawKeyModifiersChanged}, + {kEventClassKeyboard, kEventRawKeyRepeat}, + {kEventClassApplication, kEventAppActivated}, + {kEventClassApplication, kEventAppDeactivated}, + {kEventClassApplication, kEventAppQuit}, }; const EventTypeSpec applicationEventTypes[] = { - {kEventClassWindow, kEventWindowExpanded}, - {kEventClassApplication, kEventAppHidden}, - {kEventClassApplication, kEventAppShown}, + {kEventClassMenu, kEventMenuBeginTracking}, + {kEventClassMenu, kEventMenuEndTracking}, + {kEventClassCommand, kEventCommandProcess}, + {kEventClassWindow, kEventWindowExpanded}, + {kEventClassApplication, kEventAppHidden}, + {kEventClassApplication, kEventAppShown}, }; EventHandlerUPP handler = NewEventHandlerUPP(CarbonEventHandlerProc); - InstallEventHandler(GetEventDispatcherTarget(), handler, - GetEventTypeCount(dispatcherEventTypes), dispatcherEventTypes, - (void *) interp, NULL); - InstallEventHandler(GetApplicationEventTarget(), handler, - GetEventTypeCount(applicationEventTypes), applicationEventTypes, - (void *) interp, NULL); + err = InstallStandardApplicationEventHandler(); + if (err != noErr) { +#ifdef TK_MAC_DEBUG + fprintf(stderr, "InstallStandardApplicationEventHandler failed, %d\n", + (int) err); +#endif + } + err = InstallEventHandler(GetEventDispatcherTarget(), handler, + GetEventTypeCount(dispatcherEventTypes), dispatcherEventTypes, + (void *) interp, NULL); + if (err != noErr) { +#ifdef TK_MAC_DEBUG + fprintf(stderr, "InstallEventHandler failed, %d\n", (int) err); +#endif + } + err = InstallEventHandler(GetApplicationEventTarget(), handler, + GetEventTypeCount(applicationEventTypes), applicationEventTypes, + (void *) interp, NULL); + if (err != noErr) { +#ifdef TK_MAC_DEBUG + fprintf(stderr, "InstallEventHandler failed, %d\n", (int) err); +#endif + } + +#ifdef TK_MAC_DEBUG_CARBON_EVENTS + TkMacOSXInitNamedSymbol(HIToolbox, void, _TraceEventByName, CFStringRef); + if (_TraceEventByName) { + /* Carbon-internal event debugging (c.f. Technote 2124) */ + _TraceEventByName(CFSTR("kEventMouseDown")); + _TraceEventByName(CFSTR("kEventMouseUp")); + _TraceEventByName(CFSTR("kEventMouseWheelMoved")); + _TraceEventByName(CFSTR("kEventWindowUpdate")); + _TraceEventByName(CFSTR("kEventWindowActivated")); + _TraceEventByName(CFSTR("kEventWindowDeactivated")); + _TraceEventByName(CFSTR("kEventRawKeyDown")); + _TraceEventByName(CFSTR("kEventRawKeyRepeat")); + _TraceEventByName(CFSTR("kEventRawKeyUp")); + _TraceEventByName(CFSTR("kEventRawKeyModifiersChanged")); + _TraceEventByName(CFSTR("kEventRawKeyRepeat")); + _TraceEventByName(CFSTR("kEventAppActivated")); + _TraceEventByName(CFSTR("kEventAppDeactivated")); + _TraceEventByName(CFSTR("kEventAppQuit")); + _TraceEventByName(CFSTR("kEventMenuBeginTracking")); + _TraceEventByName(CFSTR("kEventMenuEndTracking")); + _TraceEventByName(CFSTR("kEventCommandProcess")); + _TraceEventByName(CFSTR("kEventWindowExpanded")); + _TraceEventByName(CFSTR("kEventAppHidden")); + _TraceEventByName(CFSTR("kEventAppShown")); + } +#endif /* TK_MAC_DEBUG_CARBON_EVENTS */ +} + +/* + *---------------------------------------------------------------------- + * + * InstallStandardApplicationEventHandler -- + * + * This procedure installs the carbon standard application event + * handler. + * + * Results: + * OS status code. + * + * Side effects: + * Standard handlers for application Carbon Events are registered. + * + *---------------------------------------------------------------------- + */ + +static OSStatus +InstallStandardApplicationEventHandler() +{ + /* + * This is a hack to workaround missing Carbon API to install the standard + * application event handler (InstallStandardEventHandler() does not work + * on the application target). The only way to install the standard app + * handler is to call RunApplicationEventLoop(), but since we are running + * our own event loop, we'll immediately need to break out of RAEL again: + * we do this via longjmp out of the ExitRaelEventHandlerProc event handler + * called first off from RAEL by posting a high priority dummy event. + * This workaround is derived from a similar approach in Technical Q&A 1061. + */ + enum { kExitRaelEvent = 'ExiT' }; + const EventTypeSpec exitRaelEventType = + { kExitRaelEvent, kExitRaelEvent}; + EventHandlerUPP exitRaelEventHandler; + EventHandlerRef exitRaelEventHandlerRef = NULL; + EventRef exitRaelEvent = NULL; + OSStatus err = memFullErr; + + exitRaelEventHandler = NewEventHandlerUPP( + (EventHandlerProcPtr) ExitRaelEventHandlerProc); + if (exitRaelEventHandler) { + err = InstallEventHandler(GetEventDispatcherTarget(), + exitRaelEventHandler, 1, &exitRaelEventType, NULL, + &exitRaelEventHandlerRef); + } + if (err == noErr) { + err = CreateEvent(NULL, kExitRaelEvent, kExitRaelEvent, + GetCurrentEventTime(), kEventAttributeNone, &exitRaelEvent); + } + if (err == noErr) { + err = PostEventToQueue(GetMainEventQueue(), exitRaelEvent, + kEventPriorityHigh); + } + if (err == noErr) { + if (!setjmp(exitRaelJmpBuf)) { + RunApplicationEventLoop(); + /* This point should never be reached ! */ + Tcl_Panic("RunApplicationEventLoop exited !"); + } + } + if (exitRaelEvent) { + ReleaseEvent(exitRaelEvent); + } + if (exitRaelEventHandlerRef) { + RemoveEventHandler(exitRaelEventHandlerRef); + } + if (exitRaelEventHandler) { + DisposeEventHandlerUPP(exitRaelEventHandler); + } + return err; +} + +/* + *---------------------------------------------------------------------- + * + * ExitRaelEventHandlerProc -- + * + * This procedure is the dummy event handler used to break out of + * RAEL via longjmp, it is called as the first ever event handler + * in RAEL by posting a high priority dummy event. + * + * Results: + * None. Never returns ! + * + * Side effects: + * longjmp back to InstallStandardApplicationEventHandler(). + * + *---------------------------------------------------------------------- + */ + +static void +ExitRaelEventHandlerProc ( + EventHandlerCallRef callRef, + EventRef event, void *userData) +{ + longjmp(exitRaelJmpBuf, 1); +} + +/* + *---------------------------------------------------------------------- + * + * CarbonTimerProc -- + * + * This procedure is the carbon timer handler that runs the tcl + * event loop periodically. It does not process TCL_WINDOW_EVENTS + * to avoid reentry issues with Carbon, nor TCL_IDLE_EVENTS since + * it is only intended to be called during short periods of busy + * time such as during menu tracking. + * + * Results: + * None. + * + * Side effects: + * Runs the Tcl event loop. + * + *---------------------------------------------------------------------- + */ +static void +CarbonTimerProc ( + EventLoopTimerRef timer, + void *userData) +{ + while(carbonTimerEnabled && Tcl_DoOneEvent( + TCL_FILE_EVENTS|TCL_TIMER_EVENTS|TCL_DONT_WAIT)) { #ifdef TK_MAC_DEBUG_CARBON_EVENTS - _TraceEventByName(CFSTR("kEventMouseDown")); - _TraceEventByName(CFSTR("kEventMouseUp")); - _TraceEventByName(CFSTR("kEventMouseMoved")); - _TraceEventByName(CFSTR("kEventMouseDragged")); - _TraceEventByName(CFSTR("kEventMouseWheelMoved")); - _TraceEventByName(CFSTR("kEventWindowUpdate")); - _TraceEventByName(CFSTR("kEventWindowActivated")); - _TraceEventByName(CFSTR("kEventWindowDeactivated")); - _TraceEventByName(CFSTR("kEventRawKeyDown")); - _TraceEventByName(CFSTR("kEventRawKeyRepeat")); - _TraceEventByName(CFSTR("kEventRawKeyUp")); - _TraceEventByName(CFSTR("kEventRawKeyModifiersChanged")); - _TraceEventByName(CFSTR("kEventRawKeyRepeat")); - _TraceEventByName(CFSTR("kEventAppActivated")); - _TraceEventByName(CFSTR("kEventAppDeactivated")); - _TraceEventByName(CFSTR("kEventAppQuit")); - _TraceEventByName(CFSTR("kEventAppleEvent")); - _TraceEventByName(CFSTR("kEventWindowExpanded")); - _TraceEventByName(CFSTR("kEventAppHidden")); - _TraceEventByName(CFSTR("kEventAppShown")); + fprintf(stderr, "Processed tcl event from carbon timer\n"); #endif /* TK_MAC_DEBUG_CARBON_EVENTS */ + } } + +/* + *---------------------------------------------------------------------- + * + * TkMacOSXStartTclEventLoopCarbonTimer -- + * + * This procedure installs (if necessary) and starts a carbon + * event timer that runs the tcl event loop periodically. + * It should be called whenever a nested carbon event loop is + * run by HIToolbox (e.g. during menutracking) to ensure that + * non-window non-idle tcl events are processed. + * + * Results: + * OS status code. + * + * Side effects: + * Carbon event timer is installed and started. + * + *---------------------------------------------------------------------- + */ + +OSStatus +TkMacOSXStartTclEventLoopCarbonTimer() +{ + OSStatus err; + + if(!carbonTimer) { + EventLoopTimerUPP timerUPP = NewEventLoopTimerUPP(CarbonTimerProc); + err = InstallEventLoopTimer(GetMainEventLoop(), kEventDurationNoWait, + 5 * kEventDurationMillisecond, timerUPP, NULL, &carbonTimer); + if (err != noErr) { +#ifdef TK_MAC_DEBUG + fprintf(stderr, "InstallEventLoopTimer failed, %d\n", (int) err); +#endif + } + } else { + err = SetEventLoopTimerNextFireTime(carbonTimer, kEventDurationNoWait); + if (err != noErr) { +#ifdef TK_MAC_DEBUG + fprintf(stderr, "SetEventLoopTimerNextFireTime failed, %d\n", + (int) err); +#endif + } + } + carbonTimerEnabled = 1; + return err; +} + +/* + *---------------------------------------------------------------------- + * + * TkMacOSXStopTclEventLoopCarbonTimer -- + * + * This procedure stops the carbon event timer started by + * TkMacOSXStartTclEventLoopCarbonTimer(). + * + * Results: + * OS status code. + * + * Side effects: + * Carbon event timer is stopped. + * + *---------------------------------------------------------------------- + */ + +OSStatus +TkMacOSXStopTclEventLoopCarbonTimer() +{ + OSStatus err = noErr; + if(carbonTimer) { + err = SetEventLoopTimerNextFireTime(carbonTimer, kEventDurationForever); + if (err != noErr) { +#ifdef TK_MAC_DEBUG + fprintf(stderr, "SetEventLoopTimerNextFireTime failed, %d\n", + (int) err); +#endif + } + } + carbonTimerEnabled = 0; + return err; +} + diff --git a/macosx/tkMacOSXDebug.c b/macosx/tkMacOSXDebug.c index 8651bc9..77d700d 100644 --- a/macosx/tkMacOSXDebug.c +++ b/macosx/tkMacOSXDebug.c @@ -50,7 +50,7 @@ * software in accordance with the terms specified in this * license. * - * RCS: @(#) $Id: tkMacOSXDebug.c,v 1.2.2.3 2005/09/10 14:54:17 das Exp $ + * RCS: @(#) $Id: tkMacOSXDebug.c,v 1.2.2.4 2005/11/27 02:36:46 das Exp $ */ #include "tkMacOSXDebug.h" @@ -230,7 +230,7 @@ static MyEventNameList eventNameList [] = { }; -MyEventName classicEventNames [] = { +static MyEventName classicEventNames [] = { { nullEvent,"nullEvent" }, { mouseDown,"mouseDown" }, { mouseUp,"mouseUp" }, @@ -289,7 +289,8 @@ CarbonEventToAscii(EventRef eventRef, char * buf) return iBuf; } -char * CarbonEventKindToAscii(EventRef eventRef, char * buf ) +char * +CarbonEventKindToAscii(EventRef eventRef, char * buf ) { EventClass eventClass; EventKind eventKind; @@ -324,7 +325,8 @@ char * CarbonEventKindToAscii(EventRef eventRef, char * buf ) return buf; } -char * ClassicEventToAscii(EventRecord * eventPtr, char * buf ) +char * +ClassicEventToAscii(EventRecord * eventPtr, char * buf ) { MyEventName * names = NULL; int found = 0; @@ -353,27 +355,31 @@ char * ClassicEventToAscii(EventRecord * eventPtr, char * buf ) } -void printPoint(char * tag, Point * p ) +void +printPoint(char * tag, Point * p ) { fprintf(stderr,"%s %4d %4d\n", tag,p->h,p->v ); } -void printRect(char * tag, Rect * r ) +void +printRect(char * tag, Rect * r ) { fprintf(stderr,"%s %4d %4d %4d %4d (%dx%d)\n", tag, r->left, r->top, r->right, r->bottom, r->right - r->left + 1, r->bottom - r->top + 1); } -void printRegion(char * tag, RgnHandle rgn ) +void +printRegion(char * tag, RgnHandle rgn ) { Rect r; GetRegionBounds(rgn,&r); printRect(tag,&r); } -void printWindowTitle(char * tag, WindowRef window ) +void +printWindowTitle(char * tag, WindowRef window ) { Str255 title; GetWTitle(window,title); @@ -386,7 +392,7 @@ typedef struct { char * name; } MsgName; -MsgName msgNames [] = { +static MsgName msgNames [] = { { kMenuDrawMsg, "Draw"}, { kMenuSizeMsg, "Size"}, { kMenuPopUpMsg, "PopUp"}, @@ -400,7 +406,6 @@ MsgName msgNames [] = { { -1, NULL } }; - char * TkMacOSXMenuMessageToAscii(int msg, char * s) { @@ -417,20 +422,21 @@ TkMacOSXMenuMessageToAscii(int msg, char * s) return s; } +static MsgName trackingNames [] = { + { kMouseTrackingMousePressed , "MousePressed " }, + { kMouseTrackingMouseReleased , "MouseReleased " }, + { kMouseTrackingMouseExited , "MouseExited " }, + { kMouseTrackingMouseEntered , "MouseEntered " }, + { kMouseTrackingMouseMoved , "MouseMoved " }, + { kMouseTrackingKeyModifiersChanged, "KeyModifiersChanged" }, + { kMouseTrackingUserCancelled , "UserCancelled " }, + { kMouseTrackingTimedOut , "TimedOut " }, + { -1, NULL } +}; -char * MouseTrackingResultToAscii(MouseTrackingResult r, char * buf) +char * +MouseTrackingResultToAscii(MouseTrackingResult r, char * buf) { - MsgName trackingNames [] = { - { kMouseTrackingMousePressed , "MousePressed " }, - { kMouseTrackingMouseReleased , "MouseReleased " }, - { kMouseTrackingMouseExited , "MouseExited " }, - { kMouseTrackingMouseEntered , "MouseEntered " }, - { kMouseTrackingMouseMoved , "MouseMoved " }, - { kMouseTrackingKeyModifiersChanged, "KeyModifiersChanged" }, - { kMouseTrackingUserCancelled , "UserCancelled " }, - { kMouseTrackingTimedOut , "TimedOut " }, - { -1, NULL } - }; MsgName * namePtr; for (namePtr = trackingNames; namePtr->name; namePtr++) { if (namePtr->msg == r) { diff --git a/macosx/tkMacOSXDebug.h b/macosx/tkMacOSXDebug.h index c947ef3..f57fc71 100644 --- a/macosx/tkMacOSXDebug.h +++ b/macosx/tkMacOSXDebug.h @@ -50,11 +50,16 @@ * software in accordance with the terms specified in this * license. * - * RCS: @(#) $Id: tkMacOSXDebug.h,v 1.2.2.3 2005/09/10 15:11:29 das Exp $ + * RCS: @(#) $Id: tkMacOSXDebug.h,v 1.2.2.4 2005/11/27 02:36:46 das Exp $ */ #ifndef _TKMACDEBUG #define _TKMACDEBUG + +#ifndef _TKINT +#include "tkInt.h" +#endif + #include <Carbon/Carbon.h> /* The following define enables printing of debug messages to stderr: */ diff --git a/macosx/tkMacOSXDialog.c b/macosx/tkMacOSXDialog.c index 37d07f6..e2e609d 100644 --- a/macosx/tkMacOSXDialog.c +++ b/macosx/tkMacOSXDialog.c @@ -9,7 +9,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.4.2.8 2005/09/10 14:54:17 das Exp $ + * RCS: @(#) $Id: tkMacOSXDialog.c,v 1.4.2.9 2005/11/27 02:36:46 das Exp $ */ #include <Carbon/Carbon.h> @@ -73,7 +73,7 @@ static Boolean MatchOneType _ANSI_ARGS_((StringPtr fileNamePtr, O static pascal Boolean OpenFileFilterProc(AEDesc* theItem, void* info, NavCallBackUserData callBackUD, NavFilterModes filterMode ); -pascal void OpenEventProc(NavEventCallbackMessage callBackSelector, +static pascal void OpenEventProc(NavEventCallbackMessage callBackSelector, NavCBRecPtr callBackParms, NavCallBackUserData callBackUD ); static void InitFileDialogs(); @@ -98,8 +98,8 @@ static int fileDlgInited = 0; * commands. */ -NavObjectFilterUPP openFileFilterUPP; -NavEventUPP openFileEventUPP; +static NavObjectFilterUPP openFileFilterUPP; +static NavEventUPP openFileEventUPP; /* diff --git a/macosx/tkMacOSXDraw.c b/macosx/tkMacOSXDraw.c index e02fb0c..e24eb8b 100644 --- a/macosx/tkMacOSXDraw.c +++ b/macosx/tkMacOSXDraw.c @@ -11,7 +11,7 @@ * See the file "license.terms" for information on usage and redistribution * of this file, and for a DISCLAIMER OF ALL WARRANTIES. * - * RCS: @(#) $Id: tkMacOSXDraw.c,v 1.2.2.7 2005/07/29 05:36:50 hobbs Exp $ + * RCS: @(#) $Id: tkMacOSXDraw.c,v 1.2.2.8 2005/11/27 02:36:46 das Exp $ */ #include "tclInt.h" @@ -52,10 +52,10 @@ static int useThemedFrame = 0; */ static unsigned char InvertByte _ANSI_ARGS_((unsigned char data)); -void TkMacOSXSetUpCGContext(MacDrawable *macWin, +static void TkMacOSXSetUpCGContext(MacDrawable *macWin, CGrafPtr destPort, GC gc, CGContextRef *contextPtr); -void TkMacOSXReleaseCGContext(MacDrawable *macWin, CGrafPtr destPort, - CGContextRef *context); +static void TkMacOSXReleaseCGContext(MacDrawable *macWin, CGrafPtr destPort, + CGContextRef *context); static inline double radians(double degrees) { return degrees * PI / 180.0f; } int @@ -881,6 +881,7 @@ XDrawRectangle( SetGWorld(saveWorld, saveDevice); } +#if 0 /* *---------------------------------------------------------------------- * @@ -963,6 +964,7 @@ XDrawRectangles( } SetGWorld(saveWorld, saveDevice); } +#endif /* *---------------------------------------------------------------------- @@ -1074,6 +1076,7 @@ XDrawArc( SetGWorld(saveWorld, saveDevice); } +#if 0 /* *---------------------------------------------------------------------- * @@ -1183,6 +1186,7 @@ XDrawArcs( } SetGWorld(saveWorld, saveDevice); } +#endif /* *---------------------------------------------------------------------- @@ -1328,6 +1332,7 @@ XFillArc( SetGWorld(saveWorld, saveDevice); } +#if 0 /* *---------------------------------------------------------------------- * @@ -1509,7 +1514,9 @@ XFillArcs( } SetGWorld(saveWorld, saveDevice); } +#endif +#if 0 /* *---------------------------------------------------------------------- * @@ -1522,6 +1529,7 @@ XMaxRequestSize(Display *display) { return (SHRT_MAX / 4); } +#endif /* *---------------------------------------------------------------------- @@ -1729,7 +1737,7 @@ TkMacOSXSetUpGraphicsPort( *---------------------------------------------------------------------- */ -void +static void TkMacOSXSetUpCGContext( MacDrawable *macWin, CGrafPtr destPort, @@ -1836,7 +1844,7 @@ TkMacOSXSetUpCGContext( } } -void +static void TkMacOSXReleaseCGContext( MacDrawable *macWin, CGrafPtr destPort, diff --git a/macosx/tkMacOSXEntry.c b/macosx/tkMacOSXEntry.c index 2df8dfc..d8d0504 100644 --- a/macosx/tkMacOSXEntry.c +++ b/macosx/tkMacOSXEntry.c @@ -50,7 +50,7 @@ * software in accordance with the terms specified in this * license. * - * RCS: @(#) $Id: tkMacOSXEntry.c,v 1.2.2.4 2005/08/09 07:39:55 das Exp $ + * RCS: @(#) $Id: tkMacOSXEntry.c,v 1.2.2.5 2005/11/27 02:36:46 das Exp $ */ #include "tk.h" @@ -59,7 +59,7 @@ #include "tkMacOSXDefault.h" #include "tkEntry.h" -ThemeButtonKind ComputeIncDecParameters (int height, int *width); +static ThemeButtonKind ComputeIncDecParameters (int height, int *width); /* *-------------------------------------------------------------- @@ -78,7 +78,7 @@ ThemeButtonKind ComputeIncDecParameters (int height, int *width); * *-------------------------------------------------------------- */ -ThemeButtonKind +static ThemeButtonKind ComputeIncDecParameters (int height, int *width) { static int version = 0; diff --git a/macosx/tkMacOSXEvent.c b/macosx/tkMacOSXEvent.c index 3315310..0f97852 100644 --- a/macosx/tkMacOSXEvent.c +++ b/macosx/tkMacOSXEvent.c @@ -9,7 +9,7 @@ * See the file "license.terms" for information on usage and redistribution * of this file, and for a DISCLAIMER OF ALL WARRANTIES. * - * RCS: @(#) $Id: tkMacOSXEvent.c,v 1.3.2.3 2005/09/10 14:54:17 das Exp $ + * RCS: @(#) $Id: tkMacOSXEvent.c,v 1.3.2.4 2005/11/27 02:36:46 das Exp $ */ #include <stdio.h> @@ -18,13 +18,6 @@ #include "tkMacOSXEvent.h" #include "tkMacOSXDebug.h" -/* - * Forward declarations of procedures used in this file. - */ - -static int TkMacOSXProcessAppleEvent( - TkMacOSXEvent * eventPtr, MacEventStatus * statusPtr); - /* *---------------------------------------------------------------------- * @@ -56,52 +49,6 @@ TkMacOSXFlushWindows () } } -/* - *---------------------------------------------------------------------- - * - * TkMacOSXProcessAppleEvent -- - * - * This processes Apple events - * - * Results: - * 0 on success - * -1 on failure - * - * Side effects: - * Calls the Tk high-level event handler - * - *---------------------------------------------------------------------- - */ - -static int -TkMacOSXProcessAppleEvent(TkMacOSXEvent * eventPtr, MacEventStatus * statusPtr) -{ - int err; - EventRecord eventRecord; - if (ConvertEventRefToEventRecord(eventPtr->eventRef, - &eventRecord )) { - err = TkMacOSXDoHLEvent(&eventRecord); - if (err != noErr) { -#ifdef TK_MAC_DEBUG - char buf1 [ 256 ]; - char buf2 [ 256 ]; - fprintf(stderr, - "TkMacOSXDoHLEvent failed : %s,%s,%d\n", - CarbonEventToAscii(eventPtr->eventRef, buf1), - ClassicEventToAscii(&eventRecord,buf2), err); -#endif - statusPtr->err = 1; - } - } else { -#ifdef TK_MAC_DEBUG - fprintf(stderr,"ConvertEventRefToEventRecord failed\n"); -#endif - statusPtr->err = 1; - } - return 0; -} - - /* *---------------------------------------------------------------------- * @@ -141,8 +88,11 @@ TkMacOSXProcessEvent(TkMacOSXEvent * eventPtr, MacEventStatus * statusPtr) case kEventClassApplication: TkMacOSXProcessApplicationEvent(eventPtr, statusPtr); break; - case kEventClassAppleEvent: - TkMacOSXProcessAppleEvent(eventPtr, statusPtr); + case kEventClassMenu: + TkMacOSXProcessMenuEvent(eventPtr, statusPtr); + break; + case kEventClassCommand: + TkMacOSXProcessCommandEvent(eventPtr, statusPtr); break; default: #ifdef TK_MAC_DEBUG @@ -161,6 +111,113 @@ TkMacOSXProcessEvent(TkMacOSXEvent * eventPtr, MacEventStatus * statusPtr) /* *---------------------------------------------------------------------- * + * TkMacOSXProcessMenuEvent -- + * + * This routine processes the event in eventPtr, and + * generates the appropriate Tk events from it. + * + * Results: + * True if event(s) are generated - false otherwise. + * + * Side effects: + * Additional events may be place on the Tk event queue. + * + *---------------------------------------------------------------------- + */ + +int +TkMacOSXProcessMenuEvent(TkMacOSXEvent *eventPtr, MacEventStatus * statusPtr) +{ + int menuContext; + OSStatus status; + + switch (eventPtr->eKind) { + case kEventMenuBeginTracking: + case kEventMenuEndTracking: + break; + default: + return 0; + break; + } + status = GetEventParameter(eventPtr->eventRef, + kEventParamMenuContext, + typeUInt32, NULL, + sizeof(menuContext), NULL, + &menuContext); + if (status == noErr && (menuContext & kMenuContextMenuBar)) { + static int oldMode = TCL_SERVICE_ALL; + if (eventPtr->eKind == kEventMenuBeginTracking) { + oldMode = Tcl_SetServiceMode(TCL_SERVICE_ALL); + TkMacOSXClearMenubarActive(); + + /* + * Handle -postcommand + */ + + TkMacOSXPreprocessMenu(); + } else { + Tcl_SetServiceMode(oldMode); + } + } + return 0; +} + +/* + *---------------------------------------------------------------------- + * + * TkMacOSXProcessCommandEvent -- + * + * This routine processes the event in eventPtr, and + * generates the appropriate Tk events from it. + * + * Results: + * True if event(s) are generated - false otherwise. + * + * Side effects: + * Additional events may be place on the Tk event queue. + * + *---------------------------------------------------------------------- + */ + +int +TkMacOSXProcessCommandEvent(TkMacOSXEvent *eventPtr, MacEventStatus * statusPtr) +{ + HICommand command; + int menuContext; + OSStatus status; + + switch (eventPtr->eKind) { + case kEventCommandProcess: + break; + default: + return 0; + break; + } + status = GetEventParameter(eventPtr->eventRef, + kEventParamDirectObject, + typeHICommand, NULL, + sizeof(command), NULL, + &command); + if (status == noErr && (command.attributes & kHICommandFromMenu)) { + status = GetEventParameter(eventPtr->eventRef, + kEventParamMenuContext, + typeUInt32, NULL, + sizeof(menuContext), NULL, + &menuContext); + if (status == noErr && (menuContext & kMenuContextMenuBar) && + (menuContext & kMenuContextMenuBarTracking)) { + TkMacOSXHandleMenuSelect(GetMenuID(command.menu.menuRef), + command.menu.menuItemIndex, + GetCurrentEventKeyModifiers() & optionKey); + return 1; + } + } + return 0; +} + +/* + *---------------------------------------------------------------------- + * * TkMacOSXReceiveAndProcessEvent -- * * This receives a carbon event and converts it to a Tk event @@ -193,7 +250,9 @@ TkMacOSXReceiveAndProcessEvent() if (!targetRef) { targetRef = GetEventDispatcherTarget(); } + TkMacOSXStartTclEventLoopCarbonTimer(); err = SendEventToEventTarget(eventRef,targetRef); + TkMacOSXStopTclEventLoopCarbonTimer(); #ifdef TK_MAC_DEBUG if (err != noErr && err != eventLoopTimedOutErr && err != eventNotHandledErr diff --git a/macosx/tkMacOSXEvent.h b/macosx/tkMacOSXEvent.h index 1300e91..a1d8d33 100644 --- a/macosx/tkMacOSXEvent.h +++ b/macosx/tkMacOSXEvent.h @@ -50,7 +50,7 @@ * software in accordance with the terms specified in this * license. * - * RCS: @(#) $Id: tkMacOSXEvent.h,v 1.3.2.2 2005/09/10 14:54:17 das Exp $ + * RCS: @(#) $Id: tkMacOSXEvent.h,v 1.3.2.3 2005/11/27 02:36:46 das Exp $ */ #ifndef _TKMACEVENT @@ -87,12 +87,17 @@ int TkMacOSXProcessKeyboardEvent(TkMacOSXEvent *e, MacEventStatus *statusPtr); int TkMacOSXProcessApplicationEvent(TkMacOSXEvent *e, MacEventStatus *statusPtr); - +int TkMacOSXProcessMenuEvent(TkMacOSXEvent *e, + MacEventStatus *statusPtr); +int TkMacOSXProcessCommandEvent(TkMacOSXEvent *e, + MacEventStatus *statusPtr); int TkMacOSXKeycodeToUnicode( UniChar * uniChars, int maxChars, EventKind eKind, UInt32 keycode, UInt32 modifiers, UInt32 * deadKeyStatePtr); +OSStatus TkMacOSXStartTclEventLoopCarbonTimer(); +OSStatus TkMacOSXStopTclEventLoopCarbonTimer(); #endif diff --git a/macosx/tkMacOSXFont.c b/macosx/tkMacOSXFont.c index 39a06db..953af3c 100644 --- a/macosx/tkMacOSXFont.c +++ b/macosx/tkMacOSXFont.c @@ -11,7 +11,7 @@ * See the file "license.terms" for information on usage and redistribution * of this file, and for a DISCLAIMER OF ALL WARRANTIES. * - * RCS: @(#) $Id: tkMacOSXFont.c,v 1.3.2.4 2005/08/09 07:39:55 das Exp $ + * RCS: @(#) $Id: tkMacOSXFont.c,v 1.3.2.5 2005/11/27 02:36:46 das Exp $ */ #include <Carbon/Carbon.h> @@ -255,6 +255,8 @@ static int GetFamilyOrAliasNum(CONST char *faceName, short *familyPtr); static Tcl_Encoding GetFontEncoding(int faceNum, int allowSymbol, int *isSymbolPtr); static Tk_Uid GetUtfFaceName(StringPtr faceNameStr); +void TkMacOSXInitControlFontStyle(Tk_Font tkfont, + ControlFontStylePtr fsPtr); /* *------------------------------------------------------------------------- @@ -2239,8 +2241,6 @@ TkMacOSXInitControlFontStyle(Tk_Font tkfont, ControlFontStylePtr fsPtr) *---------------------------------------------------------------------- */ -#include <mach-o/dyld.h> - /* define constants from 10.2 Quickdraw.h to enable compilation in 10.1 */ #define kQDUseTrueTypeScalerGlyphs (1 << 0) #define kQDUseCGTextRendering (1 << 1) @@ -2269,14 +2269,9 @@ TkMacOSXUseAntialiasedText(interp, enable) static UInt32 (*swaptextflags)(UInt32) = NULL; if(!initialized) { - NSSymbol nsSymbol = NULL; - if(NSIsSymbolNameDefinedWithHint("_QDSwapTextFlags", "QD")) { - nsSymbol = NSLookupAndBindSymbolWithHint("_QDSwapTextFlags", "QD"); - } else if(NSIsSymbolNameDefinedWithHint("_SwapQDTextFlags", "QD")) { - nsSymbol = NSLookupAndBindSymbolWithHint("_SwapQDTextFlags", "QD"); - } - if(nsSymbol) { - swaptextflags = NSAddressOfSymbol(nsSymbol); + swaptextflags = TkMacOSXGetNamedSymbol("QD", "_QDSwapTextFlags"); + if (!swaptextflags) { + swaptextflags = TkMacOSXGetNamedSymbol("QD", "_SwapQDTextFlags"); } initialized = TRUE; diff --git a/macosx/tkMacOSXInit.c b/macosx/tkMacOSXInit.c index 7498514..f558b4a 100644 --- a/macosx/tkMacOSXInit.c +++ b/macosx/tkMacOSXInit.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: tkMacOSXInit.c,v 1.3.2.10 2005/09/10 14:54:17 das Exp $ + * RCS: @(#) $Id: tkMacOSXInit.c,v 1.3.2.11 2005/11/27 02:36:46 das Exp $ */ #include "tkInt.h" @@ -170,9 +170,9 @@ TkpInit(interp) if (rsrc) { ReleaseResource(rsrc); } else { - struct mach_header *image; + const struct mach_header *image; char *data = NULL; - unsigned long size; + uint32_t size; int fd = -1; char fileName[L_tmpnam + 15]; int i, n; @@ -204,7 +204,7 @@ TkpInit(interp) if (fd == -1) break; fcntl(fd, F_SETFD, FD_CLOEXEC); if (write(fd, data, size) == -1) break; - err = FSPathMakeRef(fileName, &ref, NULL); + err = FSPathMakeRef((unsigned char*)fileName, &ref, NULL); if (err != noErr) break; err = FSOpenResourceFile(&ref, 0, NULL, fsRdPerm, &refNum); #ifdef TK_MAC_DEBUG @@ -286,22 +286,14 @@ TkpInit(interp) * Load the CPS SPI symbol dynamically, so that we don't break * if it every disappears or changes its name. */ - OSErr (*cpsEnableForegroundOperation)(ProcessSerialNumberPtr) = NULL; - NSSymbol nsSymbol; - if(NSIsSymbolNameDefinedWithHint( - "_CPSEnableForegroundOperation", "CoreGraphics")) { - nsSymbol = NSLookupAndBindSymbolWithHint( - "_CPSEnableForegroundOperation", "CoreGraphics"); - if(nsSymbol) { - cpsEnableForegroundOperation = NSAddressOfSymbol(nsSymbol); - } - } - if (cpsEnableForegroundOperation) { + TkMacOSXInitNamedSymbol(CoreGraphics, OSErr, \ + CPSEnableForegroundOperation, ProcessSerialNumberPtr); + if (CPSEnableForegroundOperation) { ProcessSerialNumber psn = { 0, kCurrentProcess }; /* * Let the window server know that we are a foregroundable app */ - cpsEnableForegroundOperation(&psn); + CPSEnableForegroundOperation(&psn); } } } @@ -443,3 +435,44 @@ TkMacOSXDefaultStartupScript(void) } } } + +/* + *---------------------------------------------------------------------- + * + * TkMacOSXGetNamedSymbol -- + * + * + * Dynamically acquire address of a named symbol from a loaded + * dynamic library, so that we can use API that may not be + * available on all OS versions. + * If module is non-NULL and not the empty string, use twolevel + * namespace lookup. + * + * Results: + * Address of given symbol or NULL if unavailable. + * + * Side effects: + * None. + * + *---------------------------------------------------------------------- + */ + +MODULE_SCOPE void* +TkMacOSXGetNamedSymbol(const char* module, const char* symbol) +{ + NSSymbol nsSymbol = NULL; + if (module && *module) { + if(NSIsSymbolNameDefinedWithHint(symbol, module)) { + nsSymbol = NSLookupAndBindSymbolWithHint(symbol, module); + } + } else { + if(NSIsSymbolNameDefined(symbol)) { + nsSymbol = NSLookupAndBindSymbol(symbol); + } + } + if(nsSymbol) { + return NSAddressOfSymbol(nsSymbol); + } else { + return NULL; + } +} diff --git a/macosx/tkMacOSXInt.h b/macosx/tkMacOSXInt.h index 799d957..514680a 100644 --- a/macosx/tkMacOSXInt.h +++ b/macosx/tkMacOSXInt.h @@ -9,7 +9,7 @@ * See the file "license.terms" for information on usage and redistribution * of this file, and for a DISCLAIMER OF ALL WARRANTIES. * - * RCS: @(#) $Id: tkMacOSXInt.h,v 1.3.2.5 2005/08/09 07:40:00 das Exp $ + * RCS: @(#) $Id: tkMacOSXInt.h,v 1.3.2.6 2005/11/27 02:36:46 das Exp $ */ #ifndef _TKMACINT @@ -157,6 +157,14 @@ extern int TkMacOSXInitCGDrawing(Tcl_Interp *interp, int enable, int antiAlias); extern void TkMacOSXDefaultStartupScript(void); extern int TkMacOSXGenerateFocusEvent( Window window, int activeFlag); extern WindowClass TkMacOSXWindowClass(TkWindow *winPtr); +extern void* TkMacOSXGetNamedSymbol(const char* module, const char* symbol); + +/* Macro to abstract common use of TkMacOSXGetNamedSymbol to initialize named symbols */ +#define TkMacOSXInitNamedSymbol(module, ret, symbol, ...) \ + static ret (* symbol)(__VA_ARGS__) = (void*)(-1L); \ + if (symbol == (void*)(-1L)) { \ + symbol = TkMacOSXGetNamedSymbol(STRINGIFY(module), STRINGIFY(_##symbol));\ + } #include "tkIntPlatDecls.h" diff --git a/macosx/tkMacOSXKeyEvent.c b/macosx/tkMacOSXKeyEvent.c index 10b430e..1da09ba 100644 --- a/macosx/tkMacOSXKeyEvent.c +++ b/macosx/tkMacOSXKeyEvent.c @@ -50,7 +50,7 @@ * software in accordance with the terms specified in this * license. * - * RCS: @(#) $Id: tkMacOSXKeyEvent.c,v 1.6.2.5 2005/09/10 14:54:17 das Exp $ + * RCS: @(#) $Id: tkMacOSXKeyEvent.c,v 1.6.2.6 2005/11/27 02:36:46 das Exp $ */ #include "tkMacOSXInt.h" @@ -61,7 +61,7 @@ typedef struct { WindowRef whichWindow; Point global; Point local; - int state; + unsigned int state; unsigned char ch; UInt32 keyCode; UInt32 keyModifiers; @@ -97,8 +97,6 @@ static int GenerateKeyEvent ( UInt32 savedModifiers, const UniChar * chars, int numChars); -static void KLSInit(void); - static int GetKeyboardLayout ( Ptr * resourcePtr, TextEncoding * encodingPtr); static TextEncoding GetKCHREncoding( @@ -558,23 +556,6 @@ InitKeyEvent( /* - *---------------------------------------------------------------------- - * - * KLSInit -- - * - * Dynamically initialize Keyboard Layout Services bindings. - * - * Side effects: - * Sets some function pointers (hopefully). - * - *---------------------------------------------------------------------- - */ - -#include <mach-o/dyld.h> - -static int KLSIsInitialized = false; - -/* * If we have old headers, we need to define these types and constants * ourself. We use preprocessor macros instead of enums and typedefs, * because macros work even in case of version misunderstandings, while @@ -590,35 +571,6 @@ static int KLSIsInitialized = false; #define kKLIdentifier 2 #endif -static OSStatus (*KLGetCurrentKeyboardLayoutPtr)( - KeyboardLayoutRef * oKeyboardLayout) = NULL; -static OSStatus (*KLGetKeyboardLayoutPropertyPtr)( - KeyboardLayoutRef iKeyboardLayout, - KeyboardLayoutPropertyTag iPropertyTag, - const void ** oValue) = NULL; - -static void -KLSInit(void) -{ - static const char MODULE[] = "HIToolbox"; - static const char GET_LAYOUT[] = "_KLGetCurrentKeyboardLayout"; - static const char GET_PROP[] = "_KLGetKeyboardLayoutProperty"; - - NSSymbol symbol; - - if (NSIsSymbolNameDefinedWithHint(GET_LAYOUT, MODULE)) { - symbol = NSLookupAndBindSymbolWithHint(GET_LAYOUT, MODULE); - KLGetCurrentKeyboardLayoutPtr = NSAddressOfSymbol(symbol); - } - if (NSIsSymbolNameDefinedWithHint(GET_PROP, MODULE)) { - symbol = NSLookupAndBindSymbolWithHint(GET_PROP, MODULE); - KLGetKeyboardLayoutPropertyPtr = NSAddressOfSymbol(symbol); - } - - KLSIsInitialized = true; -} - - /* *---------------------------------------------------------------------- * @@ -662,18 +614,18 @@ GetKeyboardLayout (Ptr * resourcePtr, TextEncoding * encodingPtr) currentKeyScript = GetScriptManagerVariable(smKeyScript); - if (!KLSIsInitialized) { - KLSInit(); - } - - if (KLGetCurrentKeyboardLayoutPtr != NULL) { + TkMacOSXInitNamedSymbol(HIToolbox, OSStatus, KLGetCurrentKeyboardLayout, + KeyboardLayoutRef*); + TkMacOSXInitNamedSymbol(HIToolbox, OSStatus, KLGetKeyboardLayoutProperty, + KeyboardLayoutRef, KeyboardLayoutPropertyTag, const void**); + if (KLGetCurrentKeyboardLayout && KLGetKeyboardLayoutProperty) { /* * Use the Keyboard Layout Services (these functions only exist since * 10.2). */ - (*KLGetCurrentKeyboardLayoutPtr)(¤tLayout); + KLGetCurrentKeyboardLayout(¤tLayout); if (currentLayout != NULL) { @@ -684,7 +636,7 @@ GetKeyboardLayout (Ptr * resourcePtr, TextEncoding * encodingPtr) * also change and it could still be the same layoutid. */ - (*KLGetKeyboardLayoutPropertyPtr)(currentLayout, kKLIdentifier, + KLGetKeyboardLayoutProperty(currentLayout, kKLIdentifier, (const void**)¤tLayoutId); if ((lastLayout != currentLayout) @@ -705,12 +657,12 @@ GetKeyboardLayout (Ptr * resourcePtr, TextEncoding * encodingPtr) uchr = NULL; KCHR = NULL; - if (((*KLGetKeyboardLayoutPropertyPtr)(currentLayout, + if ((KLGetKeyboardLayoutProperty(currentLayout, kKLuchrData, (const void**)&uchr) == noErr) && (uchr != NULL)) { /* done */ - } else if (((*KLGetKeyboardLayoutPropertyPtr)(currentLayout, + } else if ((KLGetKeyboardLayoutProperty(currentLayout, kKLKCHRData, (const void**)&KCHR) == noErr) && (KCHR != NULL)) { diff --git a/macosx/tkMacOSXMenu.c b/macosx/tkMacOSXMenu.c index 2b4914e..022bd86 100644 --- a/macosx/tkMacOSXMenu.c +++ b/macosx/tkMacOSXMenu.c @@ -9,7 +9,7 @@ * See the file "license.terms" for information on usage and redistribution * of this file, and for a DISCLAIMER OF ALL WARRANTIES. * - * RCS: @(#) $Id: tkMacOSXMenu.c,v 1.6.2.10 2005/09/10 14:54:17 das Exp $ + * RCS: @(#) $Id: tkMacOSXMenu.c,v 1.6.2.11 2005/11/27 02:36:46 das Exp $ */ #include "tkMacOSXInt.h" #include "tkMenubutton.h" @@ -333,7 +333,7 @@ static void AppearanceEntryDrawWrapper _ANSI_ARGS_((TkMenuEntry *mePtr, Rect * menuRectPtr, MenuTrackingData *mtdPtr, Drawable d, Tk_FontMetrics *fmPtr, Tk_Font tkfont, int x, int y, int width, int height)); -pascal void tkThemeMenuItemDrawingProc _ANSI_ARGS_ ((const Rect *inBounds, +static pascal void ThemeMenuItemDrawingProc _ANSI_ARGS_ ((const Rect *inBounds, SInt16 inDepth, Boolean inIsColorDevice, SInt32 inUserData)); @@ -543,25 +543,38 @@ TkpNewMenu( * platform structure for. */ { short menuID; - Str255 itemText; - int length; MenuRef macMenuHdl; MenuDefSpec menuDefSpec; Tcl_Obj *useMDEFObjPtr; int useMDEF; int error = TCL_OK; - int err; - + OSStatus err; + CFStringRef cfStr; error = TkMacOSXGetNewMenuID(menuPtr->interp, menuPtr, 0, &menuID); if (error != TCL_OK) { return error; } - length = strlen(Tk_PathName(menuPtr->tkwin)); - memmove(&itemText[1], Tk_PathName(menuPtr->tkwin), - (length > 230) ? 230 : length); - itemText[0] = (length > 230) ? 230 : length; - macMenuHdl = NewMenu(menuID, itemText); + err = CreateNewMenu(menuID, kMenuAttrDoNotUseUserCommandKeys, &macMenuHdl); + if (err != noErr) { + Tcl_AppendResult(menuPtr->interp, "CreateNewMenu failed.", + (char *) NULL); + return TCL_ERROR; + } + cfStr = CFStringCreateWithCString(NULL, Tk_PathName(menuPtr->tkwin), + kCFStringEncodingUTF8); + if (!cfStr) { + Tcl_AppendResult(menuPtr->interp, "CFStringCreateWithCString failed.", + (char *) NULL); + return TCL_ERROR; + } + err = SetMenuTitleWithCFString(macMenuHdl, cfStr); + CFRelease(cfStr); + if (err != noErr) { + Tcl_AppendResult(menuPtr->interp, "SetMenuTitleWithCFString failed.", + (char *) NULL); + return TCL_ERROR; + } /* * Check whether we want to use the custom mdef or not. For now @@ -577,7 +590,7 @@ TkpNewMenu( menuDefSpec.u.defProc = MenuDefProc; if ((err = SetMenuDefinition(macMenuHdl, &menuDefSpec)) != noErr) { #ifdef TK_MAC_DEBUG - fprintf(stderr, "SetMenuDefinition failed %d\n", err ); + fprintf(stderr, "SetMenuDefinition failed %d\n", (int) err); #endif } } @@ -2747,7 +2760,7 @@ AppearanceEntryDrawWrapper( /* *---------------------------------------------------------------------- * - * tkThemeMenuItemDrawingProc -- + * ThemeMenuItemDrawingProc -- * * This routine is called from the Appearance DrawThemeMenuEntry * @@ -2759,8 +2772,8 @@ AppearanceEntryDrawWrapper( * *---------------------------------------------------------------------- */ -pascal void -tkThemeMenuItemDrawingProc ( +static pascal void +ThemeMenuItemDrawingProc ( const Rect *inBounds, SInt16 inDepth, Boolean inIsColorDevice, @@ -3875,7 +3888,7 @@ TkpMenuInit(void) windowListPtr = NULL; tkThemeMenuItemDrawingUPP - = NewMenuItemDrawingUPP(tkThemeMenuItemDrawingProc); + = NewMenuItemDrawingUPP(ThemeMenuItemDrawingProc); /* * We should just hardcode the utf-8 ellipsis character into diff --git a/macosx/tkMacOSXMenubutton.c b/macosx/tkMacOSXMenubutton.c index 67d84ca..cd5b44c 100644 --- a/macosx/tkMacOSXMenubutton.c +++ b/macosx/tkMacOSXMenubutton.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: tkMacOSXMenubutton.c,v 1.2.2.3 2005/09/10 14:54:17 das Exp $ + * RCS: @(#) $Id: tkMacOSXMenubutton.c,v 1.2.2.4 2005/11/27 02:36:46 das Exp $ */ #include <Carbon/Carbon.h> @@ -87,8 +87,6 @@ static void CompareControlTitleParams( extern int TkFontGetFirstTextLayout(Tk_TextLayout layout, Tk_Font * font, char * dst); extern void TkMacOSXInitControlFontStyle(Tk_Font tkfont,ControlFontStylePtr fsPtr); -extern int tkPictureIsOpen; - /* * The structure below defines menubutton class behavior by means of * procedures that can be invoked from generic window code. @@ -603,7 +601,7 @@ MenuButtonInitControl ( Rect *cntrRect ) { - OSErr status; + OSStatus err; TkMenuButton * butPtr = ( TkMenuButton * )mbPtr; ControlRef rootControl; SInt16 procID; @@ -612,10 +610,7 @@ MenuButtonInitControl ( SInt16 minValue; SInt16 maxValue; SInt32 controlReference; - int err; short menuID; - int length; - Str255 itemText; rootControl = TkMacOSXGetRootControl(Tk_WindowId(butPtr->tkwin)); mbPtr->windowRef = GetWindowFromPort(TkMacOSXGetDrawablePort(Tk_WindowId(butPtr->tkwin))); @@ -643,10 +638,10 @@ MenuButtonInitControl ( #endif return 1; } - status = EmbedControl(mbPtr->userPane,rootControl); - if (status != noErr) { + err = EmbedControl(mbPtr->userPane,rootControl); + if (err != noErr) { #ifdef TK_MAC_DEBUG - fprintf(stderr,"Failed to embed user pane control %d\n", status); + fprintf(stderr,"Failed to embed user pane control %d\n", (int) err); #endif return 1; } @@ -674,7 +669,7 @@ MenuButtonInitControl ( err = EmbedControl(mbPtr->control,mbPtr->userPane); if (err != noErr ) { #ifdef TK_MAC_DEBUG - fprintf(stderr,"failed to embed control of type %d,%d\n",procID, err); + fprintf(stderr,"failed to embed control of type %d,%d\n",procID, (int) err); #endif return 1; } @@ -688,30 +683,47 @@ MenuButtonInitControl ( err = SetControlFontStyle(mbPtr->control,&mbPtr->titleParams.style); if (err !=noErr) { #ifdef TK_MAC_DEBUG - fprintf(stderr,"SetControlFontStyle failed %d\n", err); + fprintf(stderr,"SetControlFontStyle failed %d\n", (int) err); #endif return 1; } } } else { - CFStringRef cf; + CFStringRef cfStr; err = TkMacOSXGetNewMenuID(mbPtr->info.interp, (TkMenu *)mbPtr, 0, &menuID); if (err != TCL_OK) { - return err; + return 1; } - length = strlen(Tk_PathName(mbPtr->info.tkwin)); - memmove(&itemText[1], Tk_PathName(mbPtr->info.tkwin), - (length > 230) ? 230 : length); - itemText[0] = (length > 230) ? 230 : length; - if (!(mbPtr->menuRef = NewMenu(menuID,itemText))) { + err = CreateNewMenu(menuID, kMenuAttrDoNotUseUserCommandKeys, + &(mbPtr->menuRef)); + if (err != noErr) { +#ifdef TK_MAC_DEBUG + fprintf(stderr,"CreateNewMenu failed, %d.\n", (int) err); +#endif return 1; } - cf = CFStringCreateWithCString(NULL, + cfStr = CFStringCreateWithCString(NULL, Tk_PathName(mbPtr->info.tkwin), + kCFStringEncodingUTF8); + if (!cfStr) { +#ifdef TK_MAC_DEBUG + fprintf(stderr,"CFStringCreateWithCString failed.\n"); +#endif + return 1; + } + err = SetMenuTitleWithCFString(mbPtr->menuRef, cfStr); + CFRelease(cfStr); + if (err != noErr) { +#ifdef TK_MAC_DEBUG + fprintf(stderr,"SetMenuTitleWithCFString failed, %d.\n", (int) err); +#endif + return 1; + } + cfStr = CFStringCreateWithCString(NULL, (char*) mbPtr->titleParams.title, kCFStringEncodingUTF8); AppendMenuItemText(mbPtr->menuRef, "\px"); - if (cf != NULL) { - SetMenuItemTextWithCFString(mbPtr->menuRef, 1, cf); - CFRelease(cf); + if (cfStr) { + SetMenuItemTextWithCFString(mbPtr->menuRef, 1, cfStr); + CFRelease(cfStr); } err = SetControlData(mbPtr->control, kControlNoPart, diff --git a/macosx/tkMacOSXMenus.c b/macosx/tkMacOSXMenus.c index 4d04235..1531d2b 100644 --- a/macosx/tkMacOSXMenus.c +++ b/macosx/tkMacOSXMenus.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: tkMacOSXMenus.c,v 1.2.2.4 2005/08/09 07:40:01 das Exp $ + * RCS: @(#) $Id: tkMacOSXMenus.c,v 1.2.2.5 2005/11/27 02:36:46 das Exp $ */ #include "tk.h" @@ -64,16 +64,15 @@ static void SourceDialog _ANSI_ARGS_((void)); void TkMacOSXHandleMenuSelect( - long mResult, + MenuID theMenu, + MenuItemIndex theItem, int optionKeyPressed) { - short theItem = LoWord(mResult); - short theMenu = HiWord(mResult); Tk_Window tkwin; Window window; TkDisplay *dispPtr; - if (mResult == 0) { + if (theItem == 0) { TkMacOSXHandleTearoffMenu(); TkMacOSXClearMenubarActive(); return; @@ -150,45 +149,44 @@ void TkMacOSXInitMenus( Tcl_Interp *interp) { + OSStatus err; gInterp = interp; - /* - * At this point, InitMenus() should have already been called. - */ - - if (TkMacOSXUseMenuID(256) != TCL_OK) { - Tcl_Panic("Menu ID 256 is already in use!"); + if (TkMacOSXUseMenuID(kAppleMenu) != TCL_OK) { + Tcl_Panic("Menu ID %d is already in use!", kAppleMenu); } - tkAppleMenu = NewMenu(256, "\p\024"); - if (tkAppleMenu == NULL) { - Tcl_Panic("memory - menus"); + err = CreateNewMenu(kAppleMenu, kMenuAttrDoNotUseUserCommandKeys, + &tkAppleMenu); + if (err != noErr) { + Tcl_Panic("CreateNewMenu failed !"); } + SetMenuTitle(tkAppleMenu, "\p\024"); InsertMenu(tkAppleMenu, 0); AppendMenu(tkAppleMenu, "\pAbout Tcl & TkÉ"); AppendMenu(tkAppleMenu, "\p(-"); - /* Not necessary in Carbon: - AppendResMenu(tkAppleMenu, 'DRVR'); - */ if (TkMacOSXUseMenuID(kFileMenu) != TCL_OK) { Tcl_Panic("Menu ID %d is already in use!", kFileMenu); } - tkFileMenu = NewMenu(kFileMenu, "\pFile"); - if (tkFileMenu == NULL) { - Tcl_Panic("memory - menus"); + err = CreateNewMenu(kFileMenu, kMenuAttrDoNotUseUserCommandKeys, + &tkFileMenu); + if (err != noErr) { + Tcl_Panic("CreateNewMenu failed !"); } + SetMenuTitle(tkFileMenu, "\pFile"); InsertMenu(tkFileMenu, 0); AppendMenu(tkFileMenu, "\pSourceÉ"); AppendMenu(tkFileMenu, "\pClose/W"); - if (TkMacOSXUseMenuID(kEditMenu) != TCL_OK) { Tcl_Panic("Menu ID %d is already in use!", kEditMenu); } - tkEditMenu = NewMenu(kEditMenu, "\pEdit"); - if (tkEditMenu == NULL) { - Tcl_Panic("memory - menus"); + err = CreateNewMenu(kEditMenu, kMenuAttrDoNotUseUserCommandKeys, + &tkEditMenu); + if (err != noErr) { + Tcl_Panic("CreateNewMenu failed !"); } + SetMenuTitle(tkEditMenu, "\pEdit"); InsertMenu(tkEditMenu, 0); AppendMenu(tkEditMenu, "\pCut/X"); AppendMenu(tkEditMenu, "\pCopy/C"); diff --git a/macosx/tkMacOSXMouseEvent.c b/macosx/tkMacOSXMouseEvent.c index 1c63fdf..ef1f9be 100644 --- a/macosx/tkMacOSXMouseEvent.c +++ b/macosx/tkMacOSXMouseEvent.c @@ -4,7 +4,11 @@ * This file implements functions that decode & handle mouse events * on MacOS X. * - * Copyright 2001, Apple Computer, Inc. + * Copyright 2001, Apple Computer, Inc. + * Copyright (c) 2005 Daniel A. Steffen <das@users.sourceforge.net> + * + * See the file "license.terms" for information on usage and redistribution of + * this file, and for a DISCLAIMER OF ALL WARRANTIES. * * The following terms apply to all files originating from Apple * Computer, Inc. ("Apple") and associated with the software @@ -50,7 +54,7 @@ * software in accordance with the terms specified in this * license. * - * RCS: @(#) $Id: tkMacOSXMouseEvent.c,v 1.6.2.8 2005/09/10 14:54:17 das Exp $ + * RCS: @(#) $Id: tkMacOSXMouseEvent.c,v 1.6.2.9 2005/11/27 02:36:46 das Exp $ */ #include "tkInt.h" @@ -61,6 +65,13 @@ #include "tkPort.h" #include "tkMacOSXDebug.h" +#if !defined(MAC_OS_X_VERSION_10_3) || \ + (MAC_OS_X_VERSION_MAX_ALLOWED < MAC_OS_X_VERSION_10_3) + /* Define constants only available on Mac OS X 10.3 or later */ + #define kEventParamWindowPartCode 'wpar' + #define typeWindowPartCode 'wpar' +#endif + typedef struct { WindowRef whichWin; WindowRef activeNonFloating; @@ -76,7 +87,7 @@ typedef struct { * Declarations of static variables used in this file. */ -static int gEatButtonUp = 0; /* 1 if we need to eat the next * up event */ +static int gEatButtonUp = 0; /* 1 if we need to eat the next up event */ /* * Declarations of functions used only in this file. @@ -90,8 +101,8 @@ static int GenerateToolbarButtonEvent(MouseEventData * medPtr); static int HandleWindowTitlebarMouseDown(MouseEventData * medPtr, Tk_Window tkwin); static unsigned int ButtonModifiers2State(UInt32 buttonState, UInt32 keyModifiers); -extern int TkMacOSXGetEatButtonUp(); -extern void TkMacOSXSetEatButtonUp(int f); +static int TkMacOSXGetEatButtonUp(); +static void TkMacOSXSetEatButtonUp(int f); /* *---------------------------------------------------------------------- @@ -332,23 +343,6 @@ TkMacOSXProcessMouseEvent(TkMacOSXEvent *eventPtr, MacEventStatus * statusPtr) return GenerateButtonEvent(medPtr); } break; - case inMenuBar: { - int oldMode; - - oldMode = Tcl_SetServiceMode(TCL_SERVICE_ALL); - TkMacOSXClearMenubarActive(); - - /* - * Handle -postcommand - */ - - TkMacOSXPreprocessMenu(); - TkMacOSXHandleMenuSelect(MenuSelect(where), - medPtr->state & Mod2Mask); - Tcl_SetServiceMode(oldMode); - return true; /* TODO: may not be on event on queue. */ - break; - } default: return false; break; @@ -600,7 +594,7 @@ GenerateMouseWheelEvent(MouseEventData * medPtr) * *---------------------------------------------------------------------- */ -int +static int TkMacOSXGetEatButtonUp() { return gEatButtonUp; @@ -620,7 +614,7 @@ TkMacOSXGetEatButtonUp() * *---------------------------------------------------------------------- */ -void +static void TkMacOSXSetEatButtonUp(int f) { gEatButtonUp = f; diff --git a/macosx/tkMacOSXNotify.c b/macosx/tkMacOSXNotify.c index 78f159b..a51d666 100644 --- a/macosx/tkMacOSXNotify.c +++ b/macosx/tkMacOSXNotify.c @@ -7,11 +7,12 @@ * Copyright (c) 1995-1997 Sun Microsystems, Inc. * Copyright 2001, Apple Computer, Inc. * Copyright 2005, Tcl Core Team. + * Copyright (c) 2005 Daniel A. Steffen <das@users.sourceforge.net> * * See the file "license.terms" for information on usage and redistribution * of this file, and for a DISCLAIMER OF ALL WARRANTIES. * - * RCS: @(#) $Id: tkMacOSXNotify.c,v 1.5.2.6 2005/09/10 14:54:18 das Exp $ + * RCS: @(#) $Id: tkMacOSXNotify.c,v 1.5.2.7 2005/11/27 02:36:46 das Exp $ */ #include "tclInt.h" diff --git a/macosx/tkMacOSXPort.h b/macosx/tkMacOSXPort.h index fd157dd..97e3293 100644 --- a/macosx/tkMacOSXPort.h +++ b/macosx/tkMacOSXPort.h @@ -11,7 +11,7 @@ * See the file "license.terms" for information on usage and redistribution * of this file, and for a DISCLAIMER OF ALL WARRANTIES. * - * RCS: @(#) $Id: tkMacOSXPort.h,v 1.3.2.2 2005/08/09 07:40:01 das Exp $ + * RCS: @(#) $Id: tkMacOSXPort.h,v 1.3.2.3 2005/11/27 02:36:46 das Exp $ */ #ifndef _TKMACPORT @@ -158,8 +158,6 @@ extern int strncasecmp _ANSI_ARGS_((CONST char *s1, #define XSynchronize(display, bool) {display->request++;} #define XVisualIDFromVisual(visual) (visual->visualid) -int XSync(Display *display, Bool discard); - /* * The following functions are not used on the Mac, so we stub them out. */ diff --git a/macosx/tkMacOSXSubwindows.c b/macosx/tkMacOSXSubwindows.c index 7e7bfc0..1093a3f 100644 --- a/macosx/tkMacOSXSubwindows.c +++ b/macosx/tkMacOSXSubwindows.c @@ -9,7 +9,7 @@ * See the file "license.terms" for information on usage and redistribution * of this file, and for a DISCLAIMER OF ALL WARRANTIES. * - * RCS: @(#) $Id: tkMacOSXSubwindows.c,v 1.2.2.6 2005/08/09 07:40:01 das Exp $ + * RCS: @(#) $Id: tkMacOSXSubwindows.c,v 1.2.2.7 2005/11/27 02:36:46 das Exp $ */ #include "tkInt.h" @@ -176,7 +176,7 @@ XDestroyWindow( *---------------------------------------------------------------------- */ -void +static void FixMappingFlags (TkWindow *winPtr, int on) { TkWindow *childPtr; @@ -770,6 +770,7 @@ XRaiseWindow( } } +#if 0 /* *---------------------------------------------------------------------- * @@ -800,6 +801,7 @@ XLowerWindow( /* TODO: this should generate damage */ } } +#endif /* *---------------------------------------------------------------------- diff --git a/macosx/tkMacOSXTest.c b/macosx/tkMacOSXTest.c index 87b025b..8195cd8 100644 --- a/macosx/tkMacOSXTest.c +++ b/macosx/tkMacOSXTest.c @@ -10,11 +10,10 @@ * See the file "license.terms" for information on usage and redistribution * of this file, and for a DISCLAIMER OF ALL WARRANTIES. * - * RCS: @(#) $Id: tkMacOSXTest.c,v 1.2.2.1 2005/08/09 07:40:01 das Exp $ + * RCS: @(#) $Id: tkMacOSXTest.c,v 1.2.2.2 2005/11/27 02:36:46 das Exp $ */ -#include <tcl.h> -#include <Carbon/Carbon.h> +#include "tkMacOSXInt.h" /* * Forward declarations of procedures defined later in this file: diff --git a/macosx/tkMacOSXWindowEvent.c b/macosx/tkMacOSXWindowEvent.c index c960f10..a653b02 100644 --- a/macosx/tkMacOSXWindowEvent.c +++ b/macosx/tkMacOSXWindowEvent.c @@ -4,7 +4,11 @@ * This file defines the routines for both creating and handling * Window Manager class events for Tk. * - * Copyright 2001, Apple Computer, Inc. + * Copyright 2001, Apple Computer, Inc. + * Copyright (c) 2005 Daniel A. Steffen <das@users.sourceforge.net> + * + * See the file "license.terms" for information on usage and redistribution of + * this file, and for a DISCLAIMER OF ALL WARRANTIES. * * The following terms apply to all files originating from Apple * Computer, Inc. ("Apple") and associated with the software @@ -50,7 +54,7 @@ * software in accordance with the terms specified in this * license. * - * RCS: @(#) $Id: tkMacOSXWindowEvent.c,v 1.3.2.4 2005/09/10 14:54:18 das Exp $ + * RCS: @(#) $Id: tkMacOSXWindowEvent.c,v 1.3.2.5 2005/11/27 02:36:46 das Exp $ */ #include "tkMacOSXInt.h" @@ -63,10 +67,10 @@ * Declarations of global variables defined in this file. */ -int tkMacOSXAppInFront = true; /* Boolean variable for determining if - * we are the frontmost app. Only set - * in TkMacOSXProcessApplicationEvent - */ +static int tkMacOSXAppInFront = true; /* Boolean variable for determining if + * we are the frontmost app. Only set + * in TkMacOSXProcessApplicationEvent + */ static RgnHandle gDamageRgn; static RgnHandle visRgn; @@ -181,7 +185,7 @@ TkMacOSXProcessWindowEvent( OSStatus status; WindowRef whichWindow; Window window; - int eventFound; + int eventFound = false; switch (eventPtr->eKind) { case kEventWindowActivated: diff --git a/macosx/tkMacOSXWm.c b/macosx/tkMacOSXWm.c index 9c1c6db..48cc210 100644 --- a/macosx/tkMacOSXWm.c +++ b/macosx/tkMacOSXWm.c @@ -12,7 +12,7 @@ * See the file "license.terms" for information on usage and redistribution * of this file, and for a DISCLAIMER OF ALL WARRANTIES. * - * RCS: @(#) $Id: tkMacOSXWm.c,v 1.7.2.13 2005/09/10 14:54:18 das Exp $ + * RCS: @(#) $Id: tkMacOSXWm.c,v 1.7.2.14 2005/11/27 02:36:46 das Exp $ */ #include <Carbon/Carbon.h> @@ -3307,82 +3307,10 @@ UpdateSizeHints( TkWindow *winPtr) { WmInfo *wmPtr = winPtr->wmInfoPtr; - XSizeHints *hintsPtr; wmPtr->flags &= ~WM_UPDATE_SIZE_HINTS; - hintsPtr = XAllocSizeHints(); - if (hintsPtr == NULL) { - return; - } - - /* - * Compute the pixel-based sizes for the various fields in the - * size hints structure, based on the grid-based sizes in - * our structure. - */ - - if (wmPtr->gridWin != NULL) { - hintsPtr->base_width = winPtr->reqWidth - - (wmPtr->reqGridWidth * wmPtr->widthInc); - if (hintsPtr->base_width < 0) { - hintsPtr->base_width = 0; - } - hintsPtr->base_height = winPtr->reqHeight - - (wmPtr->reqGridHeight * wmPtr->heightInc); - if (hintsPtr->base_height < 0) { - hintsPtr->base_height = 0; - } - hintsPtr->min_width = hintsPtr->base_width - + (wmPtr->minWidth * wmPtr->widthInc); - hintsPtr->min_height = hintsPtr->base_height - + (wmPtr->minHeight * wmPtr->heightInc); - hintsPtr->max_width = hintsPtr->base_width - + (wmPtr->maxWidth * wmPtr->widthInc); - hintsPtr->max_height = hintsPtr->base_height - + (wmPtr->maxHeight * wmPtr->heightInc); - } else { - hintsPtr->min_width = wmPtr->minWidth; - hintsPtr->min_height = wmPtr->minHeight; - hintsPtr->max_width = wmPtr->maxWidth; - hintsPtr->max_height = wmPtr->maxHeight; - hintsPtr->base_width = 0; - hintsPtr->base_height = 0; - } - hintsPtr->width_inc = wmPtr->widthInc; - hintsPtr->height_inc = wmPtr->heightInc; - hintsPtr->min_aspect.x = wmPtr->minAspect.x; - hintsPtr->min_aspect.y = wmPtr->minAspect.y; - hintsPtr->max_aspect.x = wmPtr->maxAspect.x; - hintsPtr->max_aspect.y = wmPtr->maxAspect.y; - hintsPtr->win_gravity = wmPtr->gravity; - hintsPtr->flags = wmPtr->sizeHintsFlags | PMinSize | PMaxSize; - - /* - * If the window isn't supposed to be resizable, then set the - * minimum and maximum dimensions to be the same. - */ - - if (wmPtr->flags & WM_WIDTH_NOT_RESIZABLE) { - if (wmPtr->width >= 0) { - hintsPtr->min_width = wmPtr->width; - } else { - hintsPtr->min_width = winPtr->reqWidth; - } - hintsPtr->max_width = hintsPtr->min_width; - } - if (wmPtr->flags & WM_HEIGHT_NOT_RESIZABLE) { - if (wmPtr->height >= 0) { - hintsPtr->min_height = wmPtr->height; - } else { - hintsPtr->min_height = winPtr->reqHeight; - } - hintsPtr->max_height = hintsPtr->min_height; - } - - XSetWMNormalHints(winPtr->display, winPtr->window, hintsPtr); - - XFree((char *) hintsPtr); + return; } /* diff --git a/macosx/tkMacOSXXStubs.c b/macosx/tkMacOSXXStubs.c index 7942c9e..eea58fc 100644 --- a/macosx/tkMacOSXXStubs.c +++ b/macosx/tkMacOSXXStubs.c @@ -12,7 +12,7 @@ * See the file "license.terms" for information on usage and redistribution * of this file, and for a DISCLAIMER OF ALL WARRANTIES. * - * RCS: @(#) $Id: tkMacOSXXStubs.c,v 1.2.2.8 2005/09/10 14:54:18 das Exp $ + * RCS: @(#) $Id: tkMacOSXXStubs.c,v 1.2.2.9 2005/11/27 02:36:46 das Exp $ */ #include "tkInt.h" @@ -61,13 +61,13 @@ static int DefaultErrorHandler _ANSI_ARGS_((Display* display, * Other declarations */ -int TkMacOSXXDestroyImage _ANSI_ARGS_((XImage *image)); -unsigned long TkMacOSXXGetPixel _ANSI_ARGS_((XImage *image, int x, int y)); -int TkMacOSXXPutPixel _ANSI_ARGS_((XImage *image, int x, int y, +static int TkMacOSXXDestroyImage _ANSI_ARGS_((XImage *image)); +static unsigned long TkMacOSXXGetPixel _ANSI_ARGS_((XImage *image, int x, int y)); +static int TkMacOSXXPutPixel _ANSI_ARGS_((XImage *image, int x, int y, unsigned long pixel)); -XImage *TkMacOSXXSubImage _ANSI_ARGS_((XImage *image, int x, int y, +static XImage *TkMacOSXXSubImage _ANSI_ARGS_((XImage *image, int x, int y, unsigned int width, unsigned int height)); -int TkMacOSXXAddPixel _ANSI_ARGS_((XImage *image, long value)); +static int TkMacOSXXAddPixel _ANSI_ARGS_((XImage *image, long value)); int _XInitImageFuncPtrs _ANSI_ARGS_((XImage *image)); @@ -475,6 +475,7 @@ XBell( SysBeep(percent); } +#if 0 void XSetWMNormalHints( Display* display, @@ -496,6 +497,7 @@ XAllocSizeHints() return NULL; } +#endif XImage * XCreateImage( @@ -754,7 +756,7 @@ TkGetServerInfo( * Image stuff */ -int +static int TkMacOSXXDestroyImage( XImage *image) { @@ -763,7 +765,7 @@ TkMacOSXXDestroyImage( return 0; } -unsigned long +static unsigned long TkMacOSXXGetPixel( XImage *image, int x, @@ -791,7 +793,7 @@ TkMacOSXXGetPixel( return c; } -int +static int TkMacOSXXPutPixel( XImage *image, int x, @@ -822,7 +824,7 @@ TkMacOSXXPutPixel( return 0; } -XImage * +static XImage * TkMacOSXXSubImage( XImage *image, int x, @@ -834,7 +836,7 @@ TkMacOSXXSubImage( return NULL; } -int +static int TkMacOSXXAddPixel( XImage *image, long value) |