diff --git a/.clang-format b/.clang-format new file mode 100644 index 0000000..55e8236 --- /dev/null +++ b/.clang-format @@ -0,0 +1,53 @@ +--- +Language: Cpp +# BasedOnStyle: WebKit +AccessModifierOffset: -4 +ConstructorInitializerIndentWidth: 4 +AlignEscapedNewlinesLeft: false +AlignTrailingComments: false +AllowAllParametersOfDeclarationOnNextLine: true +AllowShortIfStatementsOnASingleLine: false +AllowShortLoopsOnASingleLine: false +AllowShortFunctionsOnASingleLine: All +AlwaysBreakTemplateDeclarations: false +AlwaysBreakBeforeMultilineStrings: false +BreakBeforeBinaryOperators: true +BreakBeforeTernaryOperators: true +BreakConstructorInitializersBeforeComma: true +BinPackParameters: true +ColumnLimit: 0 +ConstructorInitializerAllOnOneLineOrOnePerLine: false +DerivePointerBinding: false +ExperimentalAutoDetectBinPacking: false +IndentCaseLabels: false +MaxEmptyLinesToKeep: 2 +KeepEmptyLinesAtTheStartOfBlocks: true +NamespaceIndentation: Inner +ObjCSpaceAfterProperty: true +ObjCSpaceBeforeProtocolList: true +PenaltyBreakBeforeFirstCallParameter: 19 +PenaltyBreakComment: 300 +PenaltyBreakString: 1000 +PenaltyBreakFirstLessLess: 120 +PenaltyExcessCharacter: 1000000 +PenaltyReturnTypeOnItsOwnLine: 60 +PointerBindsToType: true +SpacesBeforeTrailingComments: 1 +Cpp11BracedListStyle: false +Standard: Cpp03 +IndentWidth: 8 +TabWidth: 8 +UseTab: Never +BreakBeforeBraces: Stroustrup +IndentFunctionDeclarationAfterType: false +SpacesInParentheses: false +SpacesInAngles: false +SpaceInEmptyParentheses: false +SpacesInCStyleCastParentheses: false +SpacesInContainerLiterals: true +SpaceBeforeAssignmentOperators: true +ContinuationIndentWidth: 20 +CommentPragmas: '^ IWYU pragma:' +ForEachMacros: [ foreach, Q_FOREACH, BOOST_FOREACH ] +SpaceBeforeParens: ControlStatements +... diff --git a/F-Script 10.9 copy-Info.plist b/F-Script 10.9 copy-Info.plist new file mode 100644 index 0000000..a9898a5 --- /dev/null +++ b/F-Script 10.9 copy-Info.plist @@ -0,0 +1,109 @@ + + + + + CFBundleDevelopmentRegion + English + CFBundleExecutable + F-Script + CFBundleGetInfoString + + CFBundleIconFile + fs.icns + CFBundleIdentifier + $(PRODUCT_BUNDLE_IDENTIFIER) + CFBundleInfoDictionaryVersion + 6.0 + CFBundleName + F-Script + CFBundlePackageType + APPL + CFBundleShortVersionString + 2.2 + CFBundleSignature + ???? + CFBundleVersion + 2.2 + LSEnvironment + + NSAppleScriptEnabled + YES + NSHumanReadableCopyright + Copyright © 1998-2010 Philippe Mougin. + NSMainNibFile + fs.nib + NSPrincipalClass + NSApplication + NSServices + + + NSMenuItem + + default + F-Script/Execute Selection + + NSMessage + execute + NSPortName + F-Script + NSReturnTypes + + NSStringPboardType + + NSSendTypes + + NSStringPboardType + + + + NSMenuItem + + default + F-Script/View/Put Command + + NSMessage + putCommand + NSPortName + F-Script + NSSendTypes + + NSStringPboardType + + + + NSMenuItem + + default + F-Script/View/Put Command (Ret=execute) + + NSMessage + putCommand + NSPortName + F-Script + NSSendTypes + + NSStringPboardType + + NSUserData + DECOMPOSE + + + NSMenuItem + + default + F-Script/View/Put Command (Ret=newline) + + NSMessage + putCommand + NSPortName + F-Script + NSSendTypes + + NSStringPboardType + + NSUserData + NO_DECOMPOSE + + + + diff --git a/F-Script/DemoAssistant.xib b/F-Script/DemoAssistant.xib index 8e6b7ca..6db3858 100644 --- a/F-Script/DemoAssistant.xib +++ b/F-Script/DemoAssistant.xib @@ -1,2976 +1,782 @@ - - - - 1060 - 12C54 - 2844 - 1187.34 - 625.00 - - com.apple.InterfaceBuilder.CocoaPlugin - 2844 - - - NSBox - NSButton - NSButtonCell - NSCustomObject - NSScrollView - NSScroller - NSTextField - NSTextFieldCell - NSTextView - NSView - NSWindowTemplate - - - com.apple.InterfaceBuilder.CocoaPlugin - - - PluginDependencyRecalculationVersion - - - - - FSDemoAssistant - - - FirstResponder - - - NSApplication - - - 15 - 2 - {{473, 420}, {260, 292}} - 536870912 - Demo Assistant - NSWindow - - - - - 256 - - - - 268 - {{20, 250}, {106, 23}} - - - YES - - -2080374784 - 134217728 - loadImage - - LucidaGrande - 13 - 1044 - - - -2033434624 - 162 - - - 400 - 75 - - NO - - - - 268 - {{12, 125}, {106, 23}} - - - YES - - -2080374784 - 134217728 - horloge - - - -2033434624 - 162 - - - 400 - 75 - - NO - - - - 268 - {{8, 87}, {114, 23}} - - - YES - - -2080374784 - 134217728 - connectToITunes - - - -2033434624 - 162 - - - 400 - 75 - - NO - - - - 268 - {{130, 87}, {114, 23}} - - YES - - -2080374784 - 134217728 - volumeRamp - - - -2033434624 - 162 - - - 400 - 75 - - NO - - - - 268 - {{134, 250}, {106, 23}} - - - YES - - -2080374784 - 134217728 - perspective - - - -2033434624 - 162 - - - 400 - 75 - - NO - - - - 268 - {{134, 221}, {106, 23}} - - - YES - - -2080374784 - 134217728 - hueAdjust - - - -2033434624 - 162 - - - 400 - 75 - - NO - - - - 268 - {{134, 192}, {106, 23}} - - - YES - - -2080374784 - 134217728 - bump - - - -2033434624 - 162 - - - 400 - 75 - - NO - - - - 268 - {{134, 163}, {106, 23}} - - - YES - - -2080374784 - 134217728 - bumpAnimate - - - -2033434624 - 162 - - - 400 - 75 - - NO - - - - 268 - {{20, 221}, {106, 23}} - - - YES - - -2080374784 - 134217728 - displayImage - - - -2033434624 - 162 - - - 400 - 75 - - NO - - - - 268 - {{20, 192}, {106, 23}} - - - YES - - -2080374784 - 134217728 - lockFocus - - - -2033434624 - 162 - - - 400 - 75 - - NO - - - - 12 - {{12, 153}, {236, 5}} - - - {0, 0} - - 67108864 - 0 - Box - - - 6 - System - textBackgroundColor - - 3 - MQA - - - - 3 - MCAwLjgwMDAwMDAxMTkAA - - - 3 - 2 - 0 - NO - - - - 12 - {{12, 115}, {236, 5}} - - - {0, 0} - - 67108864 - 0 - Box - - - - 3 - MCAwLjgwMDAwMDAxMTkAA - - - 3 - 2 - 0 - NO - - - {260, 292} - - - {{0, 0}, {1440, 878}} - {10000000000000, 10000000000000} - YES - - - 15 - 2 - {{307, 21}, {881, 848}} - 609746944 - Core Image - NSWindow - - - - - 256 - - - - 256 - - - - 2304 - - - - 2322 - - Apple HTML pasteboard type - Apple PDF pasteboard type - Apple PICT pasteboard type - Apple PNG pasteboard type - Apple URL pasteboard type - CorePasteboardFlavorType 0x6D6F6F76 - NSColor pasteboard type - NSFilenamesPboardType - NSStringPboardType - NeXT Encapsulated PostScript v1.2 pasteboard type - NeXT RTFD pasteboard type - NeXT Rich Text Format v1.0 pasteboard type - NeXT TIFF v4.0 pasteboard type - NeXT font pasteboard type - NeXT ruler pasteboard type - WebURLsWithTitlesPboardType - public.url - - {824, 32} - - - - - - - aW1hZ2UgOj0gQ0lJbWFnZSBpbWFnZVdpdGhDb250ZW50c09mVVJMOihOU1VSTCBmaWxlVVJMV2l0aFBh -dGg6Jy9MaWJyYXJ5L0Rlc2t0b3AgUGljdHVyZXMvTmF0dXJlL0Nsb3duIEZpc2guanBnJykuA - - - - Monaco - 12 - 16 - - - 3 - - - 0.0 - - - 56 - - - 112 - - - 168 - - - 224 - - - 280 - - - 336 - - - 392 - - - 448 - - - 504 - - - 560 - - - 616 - - - 672 - - - 728 - - - 784 - - - 840 - - - 896 - - - 952 - - - 1008 - - - 1064 - - - 1120 - - - 1176 - - - 1232 - - - 1288 - - - 1344 - - - 1400 - - - 1456 - - - 1512 - - - 1568 - - - 1624 - - - 1680 - - - 1736 - - - - - - - - - - 38 - - - - 824 - 1 - - - 67120099 - 0 - - - - - 6 - System - selectedTextBackgroundColor - - 3 - MC42NjY2NjY2NjY3AA - - - - 6 - System - selectedTextColor - - 3 - MAA - - - - - - - 1 - MCAwIDEAA - - - - - - 1 - - 6 - {1665, 10000000} - {824, 24} - - - - {{1, 1}, {824, 24}} - - - - - - - {4, 5} - - 12582912 - - - - - - TU0AKgAAAHCAFUqgBVKsAAAAwdVQUqwaEQeIRGJRGFlYqwWLQ+JxuOQpVRmEx2RROKwOQyOUQSPyaUym -SxqWyKXyeYxyZzWbSuJTScRCbz2Nz+gRKhUOfTqeUai0OSxiWTiBQSHSGFquGwekxyAgAAAOAQAAAwAA -AAEAEAAAAQEAAwAAAAEAEAAAAQIAAwAAAAIACAAIAQMAAwAAAAEABQAAAQYAAwAAAAEAAQAAAREABAAA -AAEAAAAIARIAAwAAAAEAAQAAARUAAwAAAAEAAgAAARYAAwAAAAEAEAAAARcABAAAAAEAAABnARwAAwAA -AAEAAQAAAT0AAwAAAAEAAgAAAVIAAwAAAAEAAQAAAVMAAwAAAAIAAQABAAAAAA - - - - - - 3 - MCAwAA - - - - 4 - - - - 256 - {{825, 1}, {15, 24}} - - - YES - NO - - _doScroller: - 0.75 - - - - -2147483392 - {{-100, -100}, {87, 18}} - - - NO - 1 - - _doScroller: - 1 - 0.94565220000000005 - - - {{20, 831}, {841, 26}} - - - - 133202 - - - - 0.25 - 4 - 1 - - - - 268 - {{17, 811}, {154, 17}} - - - YES - - 68157504 - 272630784 - Load image - - - - 6 - System - controlColor - - - - 6 - System - controlTextColor - - - - NO - - - - 256 - - - - 2304 - - - - 2322 - - Apple HTML pasteboard type - Apple PDF pasteboard type - Apple PICT pasteboard type - Apple PNG pasteboard type - Apple URL pasteboard type - CorePasteboardFlavorType 0x6D6F6F76 - NSColor pasteboard type - NSFilenamesPboardType - NSStringPboardType - NeXT Encapsulated PostScript v1.2 pasteboard type - NeXT RTFD pasteboard type - NeXT Rich Text Format v1.0 pasteboard type - NeXT TIFF v4.0 pasteboard type - NeXT font pasteboard type - NeXT ruler pasteboard type - WebURLsWithTitlesPboardType - public.url - - {824, 24} - - - - - - - aW1hZ2UgZHJhd0luUmVjdDooMTUwPD4yMDAgZXh0ZW50OjYwMDw+NDAwKSBmcm9tUmVjdDppbWFnZSBl -eHRlbnQgb3BlcmF0aW9uOk5TQ29tcG9zaXRlU291cmNlT3ZlciBmcmFjdGlvbjoxLg - - - - - 4 - - - - - - - - - 38 - - - - 824 - 1 - - - 67120099 - 0 - - - - - - - - - - - - - - 1 - - 6 - {1665, 10000000} - - - - {{1, 1}, {824, 24}} - - - - - - - 4 - - - - 256 - {{825, 1}, {15, 24}} - - - NO - - _doScroller: - 1 - 0.75 - - - - -2147483392 - {{-100, -100}, {87, 18}} - - - NO - 1 - - _doScroller: - 1 - 0.94565220000000005 - - - {{20, 772}, {841, 26}} - - - - 133138 - - - - 0.25 - 4 - 1 - - - - 268 - {{17, 752}, {154, 17}} - - - YES - - 68157504 - 272630784 - Display image - - - - - - NO - - - - 256 - - - - 2304 - - - - 2322 - - Apple HTML pasteboard type - Apple PDF pasteboard type - Apple PICT pasteboard type - Apple PNG pasteboard type - Apple URL pasteboard type - CorePasteboardFlavorType 0x6D6F6F76 - NSColor pasteboard type - NSFilenamesPboardType - NSStringPboardType - NeXT Encapsulated PostScript v1.2 pasteboard type - NeXT RTFD pasteboard type - NeXT Rich Text Format v1.0 pasteboard type - NeXT TIFF v4.0 pasteboard type - NeXT font pasteboard type - NeXT ruler pasteboard type - WebURLsWithTitlesPboardType - public.url - - {824, 24} - - - - - - - NSApplication sharedApplication mainWindow contentView lockFocus. - - - - - - - - 38 - - - - 824 - 1 - - - 67120099 - 0 - - - - - - - - - - - - - - 1 - - 6 - {1665, 10000000} - - - - {{1, 1}, {824, 24}} - - - - - - - 4 - - - - 256 - {{825, 1}, {15, 24}} - - - NO - - _doScroller: - 1 - 0.75 - - - - -2147483392 - {{-100, -100}, {87, 18}} - - - NO - 1 - - _doScroller: - 1 - 0.94565220000000005 - - - {{20, 713}, {841, 26}} - - - - 133138 - - - - 0.25 - 4 - 1 - - - - 268 - {{17, 693}, {154, 17}} - - - YES - - 68157504 - 272630784 - Lock focus - - - - - - NO - - - - 256 - - - - 2304 - - - - 2322 - - Apple HTML pasteboard type - Apple PDF pasteboard type - Apple PICT pasteboard type - Apple PNG pasteboard type - Apple URL pasteboard type - CorePasteboardFlavorType 0x6D6F6F76 - NSColor pasteboard type - NSFilenamesPboardType - NSStringPboardType - NeXT Encapsulated PostScript v1.2 pasteboard type - NeXT RTFD pasteboard type - NeXT Rich Text Format v1.0 pasteboard type - NeXT TIFF v4.0 pasteboard type - NeXT font pasteboard type - NeXT ruler pasteboard type - WebURLsWithTitlesPboardType - public.url - - {824, 182} - - - - - - - cGVyc3BlY3RpdmVGaWx0ZXIgOj0gQ0lGaWx0ZXIgZmlsdGVyV2l0aE5hbWU6J0NJUGVyc3BlY3RpdmVU -cmFuc2Zvcm0nLgoKcGVyc3BlY3RpdmVGaWx0ZXIgc2V0VmFsdWU6KENJVmVjdG9yIHZlY3RvcldpdGhY -OjUwMCAgWToxMDAwKSBmb3JLZXk6J2lucHV0VG9wTGVmdCcuCnBlcnNwZWN0aXZlRmlsdGVyIHNldFZh -bHVlOihDSVZlY3RvciB2ZWN0b3JXaXRoWDoyMDAwIFk6MTAwMCkgZm9yS2V5OidpbnB1dFRvcFJpZ2h0 -Jy4KcGVyc3BlY3RpdmVGaWx0ZXIgc2V0VmFsdWU6KENJVmVjdG9yIHZlY3RvcldpdGhYOjI1NjAgWTow -KSAgICBmb3JLZXk6J2lucHV0Qm90dG9tUmlnaHQnLgpwZXJzcGVjdGl2ZUZpbHRlciBzZXRWYWx1ZToo -Q0lWZWN0b3IgdmVjdG9yV2l0aFg6MCAgICBZOjApICAgIGZvcktleTonaW5wdXRCb3R0b21MZWZ0Jy4K -cGVyc3BlY3RpdmVGaWx0ZXIgc2V0VmFsdWU6aW1hZ2UgICAgICAgICAgICAgICAgICAgICAgICAgICAg -ICBmb3JLZXk6J2lucHV0SW1hZ2UnLgoKcGVyc3BlY3RpdmVJbWFnZSA6PSBwZXJzcGVjdGl2ZUZpbHRl -ciB2YWx1ZUZvcktleTonb3V0cHV0SW1hZ2UnLgpwZXJzcGVjdGl2ZUltYWdlIGRyYXdJblJlY3Q6KDE1 -MDw+MjAwIGV4dGVudDo2MDA8PjQwMCkgZnJvbVJlY3Q6aW1hZ2UgZXh0ZW50IG9wZXJhdGlvbjpOU0Nv -bXBvc2l0ZVNvdXJjZU92ZXIgZnJhY3Rpb246MS4 - - - - - - - - 38 - - - - 824 - 1 - - - 67120099 - 0 - - - - - - - - - - - - - - 1 - - 6 - {1665, 10000000} - - - - {{1, 1}, {824, 182}} - - - - - - - 4 - - - - 256 - {{825, 1}, {15, 182}} - - - NO - - _doScroller: - 0.7109375 - - - - -2147483392 - {{-100, -100}, {87, 18}} - - - NO - 1 - - _doScroller: - 1 - 0.94565220000000005 - - - {{20, 473}, {841, 184}} - - - - 133138 - - - - 0.25 - 4 - 1 - - - - 268 - {{17, 611}, {154, 17}} - - - YES - - 68157504 - 272630784 - Perspective - - - - - - NO - - - - 256 - - - - 2304 - - - - 2322 - - Apple HTML pasteboard type - Apple PDF pasteboard type - Apple PICT pasteboard type - Apple PNG pasteboard type - Apple URL pasteboard type - CorePasteboardFlavorType 0x6D6F6F76 - NSColor pasteboard type - NSFilenamesPboardType - NSStringPboardType - NeXT Encapsulated PostScript v1.2 pasteboard type - NeXT RTFD pasteboard type - NeXT Rich Text Format v1.0 pasteboard type - NeXT TIFF v4.0 pasteboard type - NeXT font pasteboard type - NeXT ruler pasteboard type - WebURLsWithTitlesPboardType - public.url - - {824, 119} - - - - - - - aHVlRmlsdGVyIDo9IENJRmlsdGVyIGZpbHRlcldpdGhOYW1lOidDSUh1ZUFkanVzdCcuCgpodWVGaWx0 -ZXIgc2V0VmFsdWU6Mi41ICAgZm9yS2V5OidpbnB1dEFuZ2xlJy4KaHVlRmlsdGVyIHNldFZhbHVlOmlt -YWdlIGZvcktleTonaW5wdXRJbWFnZScuCgpodWVJbWFnZSA6PSBodWVGaWx0ZXIgdmFsdWVGb3JLZXk6 -J291dHB1dEltYWdlJy4KaHVlSW1hZ2UgZHJhd0luUmVjdDooMTUwPD4yMDAgZXh0ZW50OjYwMDw+NDAw -KSBmcm9tUmVjdDppbWFnZSBleHRlbnQgb3BlcmF0aW9uOk5TQ29tcG9zaXRlU291cmNlT3ZlciBmcmFj -dGlvbjoxLg - - - - - - - - 38 - - - - 824 - 1 - - - 67120099 - 0 - - - - - - - - - - - - - - 1 - - 6 - {1665, 10000000} - - - - {{1, 1}, {824, 119}} - - - - - - - 4 - - - - 256 - {{825, 1}, {15, 119}} - - - NO - - _doScroller: - 0.7109375 - - - - -2147483392 - {{-100, -100}, {87, 18}} - - - NO - 1 - - _doScroller: - 1 - 0.94565220000000005 - - - {{20, 319}, {841, 121}} - - - - 133138 - - - - 0.25 - 4 - 1 - - - - 268 - {{17, 394}, {154, 17}} - - - YES - - 68157504 - 272630784 - Hue adjust - - - - - - NO - - - - 256 - - - - 2304 - - - - 2322 - - Apple HTML pasteboard type - Apple PDF pasteboard type - Apple PICT pasteboard type - Apple PNG pasteboard type - Apple URL pasteboard type - CorePasteboardFlavorType 0x6D6F6F76 - NSColor pasteboard type - NSFilenamesPboardType - NSStringPboardType - NeXT Encapsulated PostScript v1.2 pasteboard type - NeXT RTFD pasteboard type - NeXT Rich Text Format v1.0 pasteboard type - NeXT TIFF v4.0 pasteboard type - NeXT font pasteboard type - NeXT ruler pasteboard type - WebURLsWithTitlesPboardType - public.url - - {824, 192} - - - - - - - YnVtcEZpbHRlciA6PSBDSUZpbHRlciBmaWx0ZXJXaXRoTmFtZTonQ0lCdW1wRGlzdG9ydGlvbicuCgp2 -ZWN0b3IgOj0gQ0lWZWN0b3IgdmVjdG9yV2l0aFg6MTIwMCBZOjgwMC4KCmJ1bXBGaWx0ZXIgc2V0VmFs -dWU6dmVjdG9yIGZvcktleTonaW5wdXRDZW50ZXInLgpidW1wRmlsdGVyIHNldFZhbHVlOjkwMCAgICBm -b3JLZXk6J2lucHV0UmFkaXVzJy4KYnVtcEZpbHRlciBzZXRWYWx1ZTowLjggICAgZm9yS2V5OidpbnB1 -dFNjYWxlJy4KCmJ1bXBGaWx0ZXIgc2V0VmFsdWU6aW1hZ2UgIGZvcktleTonaW5wdXRJbWFnZScuCmJ1 -bXBJbWFnZSA6PSBidW1wRmlsdGVyIHZhbHVlRm9yS2V5OidvdXRwdXRJbWFnZScuCmJ1bXBJbWFnZSBk -cmF3SW5SZWN0OigxNTA8PjIwMCBleHRlbnQ6NjAwPD40MDApIGZyb21SZWN0OmJ1bXBJbWFnZSBleHRl -bnQgb3BlcmF0aW9uOk5TQ29tcG9zaXRlU291cmNlT3ZlciBmcmFjdGlvbjoxLg - - - - - - - - 38 - - - - 824 - 1 - - - 67120099 - 0 - - - - - - - - - - - - - - 1 - - 6 - {1665, 10000000} - {824, 107} - - - - {{1, 1}, {824, 107}} - - - - - - - 4 - - - - 256 - {{825, 1}, {15, 107}} - - - YES - NO - - _doScroller: - 0.55729166666666663 - - - - -2147483392 - {{-100, -100}, {87, 18}} - - - NO - 1 - - _doScroller: - 1 - 0.94565220000000005 - - - {{20, 177}, {841, 109}} - - - - 133202 - - - - 0.25 - 4 - 1 - - - - 268 - {{17, 240}, {154, 17}} - - - YES - - 68157504 - 272630784 - Bump - - - - - - NO - - - - 256 - - - - 2304 - - - - 2322 - - Apple HTML pasteboard type - Apple PDF pasteboard type - Apple PICT pasteboard type - Apple PNG pasteboard type - Apple URL pasteboard type - CorePasteboardFlavorType 0x6D6F6F76 - NSColor pasteboard type - NSFilenamesPboardType - NSStringPboardType - NeXT Encapsulated PostScript v1.2 pasteboard type - NeXT RTFD pasteboard type - NeXT Rich Text Format v1.0 pasteboard type - NeXT TIFF v4.0 pasteboard type - NeXT font pasteboard type - NeXT ruler pasteboard type - WebURLsWithTitlesPboardType - public.url - - {824, 224} - - - - - - - YnVtcEZpbHRlciA6PSBDSUZpbHRlciBmaWx0ZXJXaXRoTmFtZTonQ0lCdW1wRGlzdG9ydGlvbicuIApi -dW1wRmlsdGVyIHNldFZhbHVlOjkwMCAgICBmb3JLZXk6J2lucHV0UmFkaXVzJy4gCmJ1bXBGaWx0ZXIg -c2V0VmFsdWU6MC44ICAgIGZvcktleTonaW5wdXRTY2FsZScuIApidW1wRmlsdGVyIHNldFZhbHVlOmlt -YWdlICBmb3JLZXk6J2lucHV0SW1hZ2UnLiAKIAprZXlXaW5kb3cgOj0gTlNBcHBsaWNhdGlvbiBzaGFy -ZWRBcHBsaWNhdGlvbiBrZXlXaW5kb3cuCnJlY3QgOj0gKDE1MDw+MjAwIGV4dGVudDo2MDA8PjQwMCku -CgowIHRvOjI1MDAgYnk6NSBkbzoKWzppfAogICAgYnVtcEZpbHRlciBzZXRWYWx1ZTooQ0lWZWN0b3Ig -dmVjdG9yV2l0aFg6aSBZOjcwMCkgZm9yS2V5OidpbnB1dENlbnRlcicuCiAgICBidW1wZWRJbWFnZSA6 -PSBidW1wRmlsdGVyIHZhbHVlRm9yS2V5OidvdXRwdXRJbWFnZScuCiAgICBidW1wZWRJbWFnZSBkcmF3 -SW5SZWN0OnJlY3QgZnJvbVJlY3Q6aW1hZ2UgZXh0ZW50IG9wZXJhdGlvbjpOU0NvbXBvc2l0ZVNvdXJj -ZU92ZXIgZnJhY3Rpb246MS4KICAgIGtleVdpbmRvdyBmbHVzaFdpbmRvdy4KXQo - - - - Helvetica - 12 - 16 - - - 4 - - - - - - - - - 38 - - - - 824 - 1 - - - 67120099 - 0 - - - - - - - - - - - - - - 1 - - 6 - {1665, 10000000} - {824, 122} - - - - {{1, 1}, {824, 122}} - - - - - - - 4 - - - - 256 - {{825, 1}, {15, 122}} - - - YES - NO - - _doScroller: - 0.5446428571428571 - - - - -2147483392 - {{-100, -100}, {87, 18}} - - - NO - 1 - - _doScroller: - 1 - 0.94565220000000005 - - - {{20, 20}, {841, 124}} - - - - 133202 - - - - 0.25 - 4 - 1 - - - - 268 - {{17, 98}, {154, 17}} - - - YES - - 68157504 - 272630784 - Bump animate - - - - - - NO - - - {881, 848} - - - - {{0, 0}, {1440, 878}} - {10000000000000, 10000000000000} - YES - - - 15 - 2 - {{196, 283}, {518, 227}} - 611844096 - Horloge - NSWindow - - - - - 256 - - - - 256 - - - - 2304 - - - - 2322 - {476, 252} - - - - - - SG9ybG9nZSA6IE5TT2JqZWN0CnsKICB0ZXh0RmllbGQKCiAgLSB1cGRhdGU6c2VuZGVyCiAgewogICAg -dGV4dEZpZWxkIHNldE9iamVjdFZhbHVlOk5TRGF0ZSBkYXRlIAogIH0KCiAgLSBzZXRUZXh0RmllbGQ6 -dGhlVGV4dEZpZWxkCiAgewogICAgdGV4dEZpZWxkIDo9IHRoZVRleHRGaWVsZAogIH0KfS4KCk5TQnVu -ZGxlIGxvYWROaWJGaWxlOicvVXNlcnMvcG1vdWdpbi9EZXNrdG9wL1NhbXBsZS9idWlsZC9EZWJ1Zy9T -YW1wbGUuYXBwL0NvbnRlbnRzL1Jlc291cmNlcy9FbmdsaXNoLmxwcm9qL01haW5NZW51Lm5pYicgZXh0 -ZXJuYWxOYW1lVGFibGU6bmlsIHdpdGhab25lOm5pbAo - - - - - - - - 38 - - - - 476 - 1 - - - 67120099 - 0 - - - - - - - - - - - - - - 1 - - 6 - {1665, 10000000} - {476, 185} - - - - {{1, 1}, {476, 185}} - - - - - - 4 - - - - 256 - {{461, 1}, {16, 185}} - - YES - NO - - _doScroller: - 0.73412698412698407 - - - - -2147483392 - {{-100, -100}, {87, 18}} - - NO - 1 - - _doScroller: - 1 - 0.94565220000000005 - - - {{20, 20}, {478, 187}} - - - 133202 - - - - 0.25 - 4 - 1 - - - {518, 227} - - {{0, 0}, {1440, 878}} - {10000000000000, 10000000000000} - YES - - - 15 - 2 - {{337, 217}, {790, 565}} - 611844096 - SystemWideScripting - NSWindow - - - - - 256 - - - - 256 - - - - 2304 - - - - 2322 - {748, 24} - - - - - - aVR1bmVzIDo9IFNCQXBwbGljYXRpb24gYXBwbGljYXRpb25XaXRoQnVuZGxlSWRlbnRpZmllcjonY29t -LmFwcGxlLmlUdW5lcyc - - - - - - - - 38 - - - - 748 - 1 - - - 67120099 - 0 - - - - - - - - - - - - - - 1 - - 6 - {1665, 10000000} - - - - {{1, 1}, {748, 24}} - - - - - - 4 - - - - 256 - {{733, 1}, {16, 24}} - - NO - - _doScroller: - 0.75 - - - - -2147483392 - {{-100, -100}, {87, 18}} - - NO - 1 - - _doScroller: - 1 - 0.94565220000000005 - - - {{20, 489}, {750, 26}} - - - 133138 - - - - 0.25 - 4 - 1 - - - - 268 - {{-76, 451}, {154, 17}} - - YES - - 68157504 - 272630784 - Load image - - - - - - NO - - - - 268 - {{17, 528}, {154, 17}} - - YES - - 68157504 - 272630784 - Connect to iTunes - - - - - - NO - - - - 256 - - - - 2304 - - - - 2322 - {748, 448} - - - - - - aVR1bmVzIGlzUnVubmluZyBpZlRydWU6ClsKICAgIHxyYW1wVm9sdW1lIG9yaWdpbmFsVm9sdW1lfAog -IAogICAgb3JpZ2luYWxWb2x1bWUgOj0gaVR1bmVzIHNvdW5kVm9sdW1lLgogICAgaVR1bmVzIHBsYXk6 -bmlsIG9uY2U6Tk8uCiAgICByYW1wVm9sdW1lIDo9IG9yaWdpbmFsVm9sdW1lLgoKICAgIFtyYW1wVm9s -dW1lID4gMF0gd2hpbGVUcnVlOgogICAgWwogICAgICAgIGlUdW5lcyBzZXRTb3VuZFZvbHVtZTpyYW1w -Vm9sdW1lLgogICAgICAgICJQYXVzZSAxLzEwdGggb2YgYSBzZWNvbmQgYmV0d2VlbiBhZGp1c3RtZW50 -cyIKICAgICAgICBOU1RocmVhZCBzbGVlcFVudGlsRGF0ZTooTlNEYXRlIGRhdGVXaXRoVGltZUludGVy -dmFsU2luY2VOb3c6MC4yKS4KICAgICAgICByYW1wVm9sdW1lIDo9IHJhbXBWb2x1bWUgLSAob3JpZ2lu -YWxWb2x1bWUgLyAzMikuCiAgICBdLgoKCiAgICBbcmFtcFZvbHVtZSA8IG9yaWdpbmFsVm9sdW1lXSB3 -aGlsZVRydWU6CiAgICBbCiAgICAgICAgaVR1bmVzIHNldFNvdW5kVm9sdW1lOnJhbXBWb2x1bWUuCiAg -ICAgICAgIlBhdXNlIDEvMTB0aCBvZiBhIHNlY29uZCBiZXR3ZWVuIGFkanVzdG1lbnRzIgogICAgICAg -IE5TVGhyZWFkIHNsZWVwVW50aWxEYXRlOihOU0RhdGUgZGF0ZVdpdGhUaW1lSW50ZXJ2YWxTaW5jZU5v -dzowLjIpLgogICAgICAgIHJhbXBWb2x1bWUgOj0gcmFtcFZvbHVtZSArIChvcmlnaW5hbFZvbHVtZSAv -IDMyKS4KICAgIF0uCiAgICAKICAgIGlUdW5lcyBzZXRTb3VuZFZvbHVtZTpvcmlnaW5hbFZvbHVtZS4K -XQo - - - - - - - - 38 - - - - 748 - 1 - - - 67120099 - 0 - - - - - - - - - - - - - - 1 - - 6 - {1665, 10000000} - {748, 311} - - - - {{1, 1}, {748, 311}} - - - - - - 4 - - - - 256 - {{733, 1}, {16, 311}} - - YES - NO - - _doScroller: - 0.6941964285714286 - - - - -2147483392 - {{-100, -100}, {87, 18}} - - NO - 1 - - _doScroller: - 1 - 0.94565220000000005 - - - {{20, 138}, {750, 313}} - - - 133202 - - - - 0.25 - 4 - 1 - - - - 268 - {{17, 464}, {154, 17}} - - YES - - 68157504 - 272630784 - Volume ramp - - - - - - NO - - - {790, 565} - - {{0, 0}, {1440, 878}} - {10000000000000, 10000000000000} - YES - - - - - - - loadImage - - - - 25 - - - - loadCode: - - - - 26 - - - - displayImage - - - - 65 - - - - perspective - - - - 66 - - - - hueAdjust - - - - 67 - - - - bump - - - - 68 - - - - bumpAnimate - - - - 75 - - - - loadCode: - - - - 86 - - - - loadCode: - - - - 87 - - - - loadCode: - - - - 88 - - - - loadCode: - - - - 89 - - - - loadCode: - - - - 90 - - - - lockFocus - - - - 97 - - - - loadCode: - - - - 100 - - - - loadCode: - - - - 111 - - - - horloge - - - - 112 - - - - loadCode: - - - - 133 - - - - connectToITunes - - - - 134 - - - - loadCode: - - - - 143 - - - - volumeRamp - - - - 144 - - - - - - 0 - - - - - - -2 - - - File's Owner - - - -1 - - - First Responder - - - -3 - - - Application - - - 1 - - - - - - - - 2 - - - - - - - - - - - - - - - - - - - 11 - - - - - - - - 12 - - - - - 15 - - - - - - - - 16 - - - - - - - - - - - - - - - - - - - - - 21 - - - - - - - - - - 22 - - - - - 23 - - - - - 24 - - - - - 33 - - - - - - - - 34 - - - - - 35 - - - - - - - - - - 36 - - - - - - - - 37 - - - - - 38 - - - - - 39 - - - - - 40 - - - - - 41 - - - - - - - - - - 42 - - - - - - - - 43 - - - - - 44 - - - - - 45 - - - - - 46 - - - - - 47 - - - - - - - - - - 48 - - - - - - - - 49 - - - - - 50 - - - - - 51 - - - - - 52 - - - - - 59 - - - - - - - - - - 60 - - - - - - - - 61 - - - - - 62 - - - - - 63 - - - - - 64 - - - - - 69 - - - - - - - - - - 70 - - - - - - - - 71 - - - - - 72 - - - - - 73 - - - - - 74 - - - - - 76 - - - - - - - - 77 - - - - - 78 - - - - - - - - 79 - - - - - 80 - - - - - - - - 81 - - - - - 82 - - - - - - - - 83 - - - - - 84 - - - - - - - - 85 - - - - - 91 - - - - - - - - - - 92 - - - - - - - - 93 - - - - - 94 - - - - - 95 - - - - - 96 - - - - - 98 - - - - - - - - 99 - - - - - 101 - - - - - - - - 102 - - - - - - - - 103 - - - - - - - - - - 104 - - - - - 105 - - - - - 106 - - - - - 107 - - - - - 108 - - - - - - - - 109 - - - - - 113 - - - - - - - - 114 - - - - - - - - - - - - 115 - - - - - 120 - - - - - - - - - - 121 - - - - - - - - 122 - - - - - 123 - - - - - 124 - - - - - 125 - - - - - 128 - - - - - - - - 129 - - - - - 130 - - - - - - - - 131 - - - - - 135 - - - - - - - - - - 136 - - - - - - - - 137 - - - - - 138 - - - - - 139 - - - - - 140 - - - - - 141 - - - - - - - - 142 - - - - - - - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - {{875, 228}, {260, 292}} - - com.apple.InterfaceBuilder.CocoaPlugin - {{452, 493}, {518, 227}} - - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - {{207, 262}, {790, 565}} - - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - - - com.apple.InterfaceBuilder.CocoaPlugin - {{99, 104}, {881, 902}} - - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - - - - - - 144 - - - - - FSDemoAssistant - NSObject - - loadCode: - id - - - loadCode: - - loadCode: - id - - - - NSTextView - NSTextView - NSTextView - NSTextView - NSTextView - NSTextView - FSInterpreterView - NSTextView - NSTextView - NSTextView - NSTextView - - - - bump - NSTextView - - - bumpAnimate - NSTextView - - - connectToITunes - NSTextView - - - displayImage - NSTextView - - - horloge - NSTextView - - - hueAdjust - NSTextView - - - interpreterView - FSInterpreterView - - - loadImage - NSTextView - - - lockFocus - NSTextView - - - perspective - NSTextView - - - volumeRamp - NSTextView - - - - IBProjectSource - ./Classes/FSDemoAssistant.h - - - - FSInterpreterView - NSView - - IBProjectSource - ./Classes/FSInterpreterView.h - - - - - 0 - IBCocoaFramework - - com.apple.InterfaceBuilder.CocoaPlugin.macosx - - - - com.apple.InterfaceBuilder.CocoaPlugin.InterfaceBuilder3 - - - YES - 3 - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + perspectiveFilter := CIFilter filterWithName:'CIPerspectiveTransform'. + +perspectiveFilter setValue:(CIVector vectorWithX:500 Y:1000) forKey:'inputTopLeft'. +perspectiveFilter setValue:(CIVector vectorWithX:2000 Y:1000) forKey:'inputTopRight'. +perspectiveFilter setValue:(CIVector vectorWithX:2560 Y:0) forKey:'inputBottomRight'. +perspectiveFilter setValue:(CIVector vectorWithX:0 Y:0) forKey:'inputBottomLeft'. +perspectiveFilter setValue:image forKey:'inputImage'. + +perspectiveImage := perspectiveFilter valueForKey:'outputImage'. +perspectiveImage drawInRect:(150<>200 extent:600<>400) fromRect:image extent operation:NSCompositeSourceOver fraction:1. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + hueFilter := CIFilter filterWithName:'CIHueAdjust'. + +hueFilter setValue:2.5 forKey:'inputAngle'. +hueFilter setValue:image forKey:'inputImage'. + +hueImage := hueFilter valueForKey:'outputImage'. +hueImage drawInRect:(150<>200 extent:600<>400) fromRect:image extent operation:NSCompositeSourceOver fraction:1. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + bumpFilter := CIFilter filterWithName:'CIBumpDistortion'. + +vector := CIVector vectorWithX:1200 Y:800. + +bumpFilter setValue:vector forKey:'inputCenter'. +bumpFilter setValue:900 forKey:'inputRadius'. +bumpFilter setValue:0.8 forKey:'inputScale'. + +bumpFilter setValue:image forKey:'inputImage'. +bumpImage := bumpFilter valueForKey:'outputImage'. +bumpImage drawInRect:(150<>200 extent:600<>400) fromRect:bumpImage extent operation:NSCompositeSourceOver fraction:1. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + bumpFilter := CIFilter filterWithName:'CIBumpDistortion'. +bumpFilter setValue:900 forKey:'inputRadius'. +bumpFilter setValue:0.8 forKey:'inputScale'. +bumpFilter setValue:image forKey:'inputImage'. + +keyWindow := NSApplication sharedApplication keyWindow. +rect := (150<>200 extent:600<>400). + +0 to:2500 by:5 do: +[:i| + bumpFilter setValue:(CIVector vectorWithX:i Y:700) forKey:'inputCenter'. + bumpedImage := bumpFilter valueForKey:'outputImage'. + bumpedImage drawInRect:rect fromRect:image extent operation:NSCompositeSourceOver fraction:1. + keyWindow flushWindow. +] + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Horloge : NSObject +{ + textField + + - update:sender + { + textField setObjectValue:NSDate date + } + + - setTextField:theTextField + { + textField := theTextField + } +}. + +NSBundle loadNibFile:'/Users/pmougin/Desktop/Sample/build/Debug/Sample.app/Contents/Resources/English.lproj/MainMenu.nib' externalNameTable:nil withZone:nil + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + iTunes isRunning ifTrue: +[ + |rampVolume originalVolume| + + originalVolume := iTunes soundVolume. + iTunes play:nil once:NO. + rampVolume := originalVolume. + + [rampVolume > 0] whileTrue: + [ + iTunes setSoundVolume:rampVolume. + "Pause 1/10th of a second between adjustments" + NSThread sleepUntilDate:(NSDate dateWithTimeIntervalSinceNow:0.2). + rampVolume := rampVolume - (originalVolume / 32). + ]. + + + [rampVolume < originalVolume] whileTrue: + [ + iTunes setSoundVolume:rampVolume. + "Pause 1/10th of a second between adjustments" + NSThread sleepUntilDate:(NSDate dateWithTimeIntervalSinceNow:0.2). + rampVolume := rampVolume + (originalVolume / 32). + ]. + + iTunes setSoundVolume:originalVolume. +] + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/F-Script/English.lproj/fs.nib/classes.nib b/F-Script/English.lproj/fs.nib/classes.nib deleted file mode 100644 index bb4a953..0000000 --- a/F-Script/English.lproj/fs.nib/classes.nib +++ /dev/null @@ -1,161 +0,0 @@ - - - - - IBClasses - - - CLASS - FSInterpreterView - LANGUAGE - ObjC - OUTLETS - - object1 - id - object2 - id - object3 - id - object4 - id - object5 - id - object6 - id - object7 - id - object8 - id - object9 - id - - SUPERCLASS - NSView - - - CLASS - NSObject - LANGUAGE - ObjC - - - ACTIONS - - executeCurrentCommand - id - moveDown - id - moveLeft - id - moveToBeginningOfLine - id - moveToBeginningOfParagraph - id - moveToEndOfLine - id - moveToEndOfParagraph - id - moveUp - id - parenthesizeCommand - id - paste - id - saveEditedCommand - id - switchParserMode - id - - CLASS - ShellView - LANGUAGE - ObjC - OUTLETS - - commandHandler - id - - SUPERCLASS - FScriptTextView - - - ACTIONS - - enterSelection - id - findNext - id - findPrevious - id - newBigBrowser - id - orderFrontFindPanel - id - - CLASS - FirstResponder - LANGUAGE - ObjC - SUPERCLASS - NSObject - - - CLASS - FScriptTextView - LANGUAGE - ObjC - SUPERCLASS - NSTextView - - - ACTIONS - - newDemoAssistant - id - newKVBrowser - id - newObjectBrowser - id - showConsole - id - showInfoPanel - id - showPreferencePanel - id - updatePreference - id - - CLASS - FScriptAppController - LANGUAGE - ObjC - OUTLETS - - automaticallyIntrospectDeclaredPropertiesUI - NSButton - confirmWhenQuittingUI - NSButton - displayObjectBrowserAtLaunchTimeUI - NSButton - fontSizeUI - NSTextField - infoPanel - NSPanel - interpreterView - FSInterpreterView - preferencePanel - NSPanel - runWithObjCAutomaticGarbageCollectionUI - NSButton - shouldJournalUI - NSButton - - SUPERCLASS - NSObject - - - IBVersion - 1 - - diff --git a/F-Script/English.lproj/fs.nib/info.nib b/F-Script/English.lproj/fs.nib/info.nib deleted file mode 100644 index 272c224..0000000 --- a/F-Script/English.lproj/fs.nib/info.nib +++ /dev/null @@ -1,20 +0,0 @@ - - - - - IBFramework Version - 677 - IBLastKnownRelativeProjectPath - ../../FScript.xcodeproj - IBOldestOS - 5 - IBOpenObjects - - 44 - - IBSystem Version - 9J61 - targetFramework - IBCocoaFramework - - diff --git a/F-Script/English.lproj/fs.nib/keyedobjects.nib b/F-Script/English.lproj/fs.nib/keyedobjects.nib deleted file mode 100644 index 2dd9594..0000000 Binary files a/F-Script/English.lproj/fs.nib/keyedobjects.nib and /dev/null differ diff --git a/F-Script/English.lproj/fs.xib b/F-Script/English.lproj/fs.xib new file mode 100644 index 0000000..e0ab91b --- /dev/null +++ b/F-Script/English.lproj/fs.xib @@ -0,0 +1,3287 @@ + + + + 1050 + 14A379a + 941 + 1343.13 + 755.00 + + com.apple.InterfaceBuilder.CocoaPlugin + 941 + + + YES + + + YES + com.apple.InterfaceBuilder.CocoaPlugin + + + PluginDependencyRecalculationVersion + + + + YES + + NSApplication + + + FirstResponder + + + NSApplication + + + 15 + 2 + {{272, 346}, {678, 407}} + 1350041600 + F-Script + NSWindow + View + + {1.7976931348623157e+308, 1.7976931348623157e+308} + {92, 10} + + + 256 + + YES + + + 274 + {678, 407} + + FSInterpreterView + + + {678, 407} + + {{0, 0}, {1680, 1028}} + {92, 32} + {1.7976931348623157e+308, 1.7976931348623157e+308} + mainWindow + YES + + + fs + + YES + + + F-Script + + 1048576 + 2147483647 + + NSImage + NSMenuCheckmark + + + NSImage + NSMenuMixedState + + submenuAction: + + + F-Script + + YES + + + About F-Script + + 2147483647 + + + + + + YES + YES + + + 1048576 + 2147483647 + + + + + + Preferences... + , + 1048576 + 2147483647 + + + + + + YES + YES + + + 1048576 + 2147483647 + + + + + + Services + + 1048576 + 2147483647 + + + submenuAction: + + + + Services + + + YES + + _NSServicesMenu + + + + + YES + YES + + + 1048576 + 2147483647 + + + + + + Hide F-Script + h + 1048576 + 2147483647 + + + + + + Hide Others + h + 1572864 + 2147483647 + + + + + + Show All + + 2147483647 + + + + + + YES + YES + + + 1048576 + 2147483647 + + + + + + Quit F-Script + q + 1048576 + 2147483647 + + + + + _NSAppleMenu + + + + + Workspace + + 1048576 + 2147483647 + + + submenuAction: + + + Workspace + + YES + + + Open Object Browser + + 1048576 + 2147483647 + + + + + + YES + YES + + + 1048576 + 2147483647 + + + + + + Close Window + w + 1048576 + 2147483647 + + + + + + YES + YES + + + 1048576 + 2147483647 + + + + + + Page Setup... + P + 1048576 + 2147483647 + + + + + + Print... + p + 1048576 + 2147483647 + + + + + + + + + Edit + + 1048576 + 2147483647 + + + submenuAction: + + + Edit + + YES + + + Undo + z + 1048576 + 2147483647 + + + + + + Redo + Z + 1048576 + 2147483647 + + + + + + YES + YES + + + 1048576 + 2147483647 + + + + + + Cut + x + 1048576 + 2147483647 + + + + + + Copy + c + 1048576 + 2147483647 + + + + + + Paste + v + 1048576 + 2147483647 + + + + + + Delete + + 1048576 + 2147483647 + + + + + + Select All + a + 1048576 + 2147483647 + + + + + + YES + YES + + + 1048576 + 2147483647 + + + + + + Find + + 1048576 + 2147483647 + + + submenuAction: + + + + Find + + + YES + + + Find… + f + 1048576 + 2147483647 + + + 1 + + + + Find Next + g + 1048576 + 2147483647 + + + 2 + + + + Find Previous + G + 1048576 + 2147483647 + + + 3 + + + + Use Selection for Find + e + 1048576 + 2147483647 + + + 7 + + + + Jump to Selection + j + 1048576 + 2147483647 + + + + + + + + + Spelling + + 1048576 + 2147483647 + + + submenuAction: + + + Spelling + + YES + + + Spelling... + : + 1048576 + 2147483647 + + + + + + Check Spelling + ; + 1048576 + 2147483647 + + + + + + Check Spelling As You Type + + 1048576 + 2147483647 + + + + + + + + + Speech + + 1048576 + 2147483647 + + + submenuAction: + + + Speech + + YES + + + Start speaking + + 1048576 + 2147483647 + + + + + + Stop speaking + + 1048576 + 2147483647 + + + + + + + + YES + + + + + View + + 1048576 + 2147483647 + + + submenuAction: + + + View + + YES + + + Customize Toolbar... + + 1048576 + 2147483647 + + + + + + + + + Format + + 1048576 + 2147483647 + + + submenuAction: + + + + Format + + + YES + + + Font + + 1048576 + 2147483647 + + + submenuAction: + + + + Font + + + YES + + + Show Fonts + t + 1048576 + 2147483647 + + + + + + Bold + b + 1048576 + 2147483647 + + + 2 + + + + Italic + i + 1048576 + 2147483647 + + + 1 + + + + Underline + u + 1048576 + 2147483647 + + + + + + YES + YES + + + 1048576 + 2147483647 + + + + + + Bigger + + + 1048576 + 2147483647 + + + 3 + + + + Smaller + - + 1048576 + 2147483647 + + + 4 + + + + YES + YES + + + 1048576 + 2147483647 + + + + + + Kern + + 1048576 + 2147483647 + + + submenuAction: + + + + Kern + + + YES + + + Use Default + + 1048576 + 2147483647 + + + + + + Use None + + 1048576 + 2147483647 + + + + + + Tighten + + 1048576 + 2147483647 + + + + + + Loosen + + 1048576 + 2147483647 + + + + + + + + + Ligature + + 1048576 + 2147483647 + + + submenuAction: + + + + Ligature + + + YES + + + Use Default + + 1048576 + 2147483647 + + + + + + Use None + + 1048576 + 2147483647 + + + + + + Use All + + 1048576 + 2147483647 + + + + + + + + + Baseline + + 1048576 + 2147483647 + + + submenuAction: + + + + Baseline + + + YES + + + Use Default + + 1048576 + 2147483647 + + + + + + Superscript + + 1048576 + 2147483647 + + + + + + Subscript + + 1048576 + 2147483647 + + + + + + Raise + + 1048576 + 2147483647 + + + + + + Lower + + 1048576 + 2147483647 + + + + + + + + + YES + YES + + + 1048576 + 2147483647 + + + + + + Show Colors + C + 1048576 + 2147483647 + + + + + + YES + YES + + + 1048576 + 2147483647 + + + + + + Copy Style + c + 1572864 + 2147483647 + + + + + + Paste Style + v + 1572864 + 2147483647 + + + + + _NSFontMenu + + + + + Text + + 1048576 + 2147483647 + + + submenuAction: + + + + Text + + + YES + + + Align Left + { + 1048576 + 2147483647 + + + + + + Center + | + 1048576 + 2147483647 + + + + + + Justify + + 1048576 + 2147483647 + + + + + + Align Right + } + 1048576 + 2147483647 + + + + + + YES + YES + + + 1048576 + 2147483647 + + + + + + Show Ruler + + 1048576 + 2147483647 + + + + + + Copy Ruler + c + 1310720 + 2147483647 + + + + + + Paste Ruler + v + 1310720 + 2147483647 + + + + + + + + + + + + Window + + 1048576 + 2147483647 + + + submenuAction: + + + + Window + + + YES + + + Minimize + m + 1048576 + 2147483647 + + + + + + Zoom + + 1048576 + 2147483647 + + + + + + YES + YES + + + 1048576 + 2147483647 + + + + + + Bring All to Front + + 1048576 + 2147483647 + + + + + _NSWindowsMenu + + + + _NSMainMenu + YES + + + FScriptAppController + + + NSFontManager + + + + + YES + + + interpreterView + + + + 121 + + + + delegate + + + + 127 + + + + delete: + + + + 189 + + + + selectAll: + + + + 190 + + + + paste: + + + + 191 + + + + copy: + + + + 192 + + + + cut: + + + + 193 + + + + print: + + + + 311 + + + + unhideAllApplications: + + + + 344 + + + + hide: + + + + 345 + + + + hideOtherApplications: + + + + 346 + + + + terminate: + + + + 347 + + + + showInfoPanel: + + + + 348 + + + + showPreferencePanel: + + + + 349 + + + + runPageLayout: + + + + 353 + + + + checkSpelling: + + + + 400 + + + + showGuessPanel: + + + + 401 + + + + toggleContinuousSpellChecking: + + + + 402 + + + + stopSpeaking: + + + + 407 + + + + startSpeaking: + + + + 408 + + + + redo: + + + + 467 + + + + undo: + + + + 468 + + + + runToolbarCustomizationPalette: + + + + 604 + + + + initialFirstResponder + + + + 606 + + + + performFindPanelAction: + + + + 614 + + + + centerSelectionInVisibleArea: + + + + 615 + + + + performFindPanelAction: + + + + 616 + + + + performFindPanelAction: + + + + 617 + + + + performFindPanelAction: + + + + 618 + + + + copyFont: + + + + 760 + + + + pasteFont: + + + + 761 + + + + pasteRuler: + + + + 762 + + + + underline: + + + + 763 + + + + superscript: + + + + 764 + + + + alignJustified: + + + + 765 + + + + orderFrontColorPanel: + + + + 766 + + + + useStandardLigatures: + + + + 767 + + + + tightenKerning: + + + + 768 + + + + addFontTrait: + + + + 769 + + + + raiseBaseline: + + + + 770 + + + + addFontTrait: + + + + 771 + + + + orderFrontFontPanel: + + + + 772 + + + + copyRuler: + + + + 773 + + + + alignLeft: + + + + 774 + + + + unscript: + + + + 775 + + + + toggleRuler: + + + + 776 + + + + turnOffKerning: + + + + 777 + + + + turnOffLigatures: + + + + 778 + + + + subscript: + + + + 779 + + + + lowerBaseline: + + + + 780 + + + + alignCenter: + + + + 781 + + + + alignRight: + + + + 782 + + + + useAllLigatures: + + + + 783 + + + + useStandardKerning: + + + + 784 + + + + modifyFont: + + + + 785 + + + + modifyFont: + + + + 786 + + + + loosenKerning: + + + + 787 + + + + performZoom: + + + + 794 + + + + arrangeInFront: + + + + 795 + + + + performMiniaturize: + + + + 796 + + + + performClose: + + + + 832 + + + + delegate + + + + 835 + + + + newObjectBrowser: + + + + 863 + + + + + YES + + 0 + + YES + + + + + + -2 + + + File's Owner + + + -1 + + + First Responder + + + -3 + + + Application + + + 21 + + + YES + + + + MyWindow + + + 2 + + + YES + + + + + + 119 + + + + + 44 + + + YES + + + + + + + + + MainMenu + + + 175 + + + YES + + + + + + 159 + + + YES + + + + + + + + + + + + + + + + + 164 + + + + + 165 + + + + + 167 + + + + + 173 + + + + + 181 + + + + + 396 + + + YES + + + + + + 398 + + + YES + + + + + + + + 395 + + + + + 397 + + + + + 399 + + + + + 406 + + + YES + + + + + + 403 + + + YES + + + + + + + 404 + + + + + 405 + + + + + 416 + + + + + 425 + + + + + 465 + + + + + 466 + + + + + 611 + + + YES + + + + + + 607 + + + YES + + + + + + + + + + 608 + + + + + 609 + + + + + 610 + + + + + 612 + + + + + 613 + + + + + 307 + + + YES + + + + + + 309 + + + YES + + + + + + + + + + + 304 + + + + + 305 + + + + + 352 + + + + + 646 + + + + + 650 + + + + + 651 + + + + + 342 + + + YES + + + + + + 343 + + + YES + + + + + + + + + + + + + + + + 331 + + + YES + + + + + + 334 + + + + + 332 + + + + + 333 + + + + + 335 + + + + + 336 + + + + + 337 + + + + + 338 + + + + + 339 + + + + + 340 + + + + + 341 + + + + + 670 + + + + + 601 + + + YES + + + + + + 596 + + + YES + + + + + + 598 + + + + + 715 + + + YES + + + + + + 740 + + + YES + + + + + + + 727 + + + YES + + + + + + 744 + + + YES + + + + + + + + + + + + + + + + + + + + + 717 + + + + + 718 + + + YES + + + + + + 750 + + + YES + + + + + + + + 732 + + + + + 755 + + + + + 758 + + + + + 720 + + + + + 721 + + + + + 723 + + + + + 724 + + + + + 725 + + + + + 730 + + + + + 735 + + + + + 738 + + + YES + + + + + + 716 + + + YES + + + + + + + + + 726 + + + + + 737 + + + + + 745 + + + + + 753 + + + + + 739 + + + + + 741 + + + + + 743 + + + + + 746 + + + + + 752 + + + + + 756 + + + YES + + + + + + 734 + + + YES + + + + + + + + + + 729 + + + + + 731 + + + + + 747 + + + + + 754 + + + + + 757 + + + + + 733 + + + YES + + + + + + 749 + + + YES + + + + + + + + + + + + + 719 + + + + + 722 + + + + + 728 + + + + + 736 + + + + + 742 + + + + + 748 + + + + + 751 + + + + + 759 + + + + + 788 + + + YES + + + + + + 792 + + + YES + + + + + + + + + 789 + + + + + 790 + + + + + 791 + + + + + 793 + + + + + 120 + + + FScriptAppControler + + + 252 + + + Font Manager + + + + + YES + + YES + -3.IBPluginDependency + -3.ImportedFromIB2 + 119.IBPluginDependency + 119.ImportedFromIB2 + 120.ImportedFromIB2 + 159.IBPluginDependency + 159.ImportedFromIB2 + 164.IBPluginDependency + 164.ImportedFromIB2 + 165.IBPluginDependency + 165.ImportedFromIB2 + 167.IBPluginDependency + 167.ImportedFromIB2 + 173.IBPluginDependency + 173.ImportedFromIB2 + 175.IBPluginDependency + 175.ImportedFromIB2 + 181.IBPluginDependency + 181.ImportedFromIB2 + 2.IBPluginDependency + 2.ImportedFromIB2 + 21.IBPluginDependency + 21.ImportedFromIB2 + 21.NSWindowTemplate.visibleAtLaunch + 21.windowTemplate.hasMinSize + 21.windowTemplate.minSize + 252.ImportedFromIB2 + 304.IBPluginDependency + 304.ImportedFromIB2 + 305.IBPluginDependency + 305.ImportedFromIB2 + 307.IBPluginDependency + 307.ImportedFromIB2 + 309.IBPluginDependency + 309.ImportedFromIB2 + 331.IBPluginDependency + 331.ImportedFromIB2 + 332.IBPluginDependency + 332.ImportedFromIB2 + 333.IBPluginDependency + 333.ImportedFromIB2 + 334.IBPluginDependency + 334.ImportedFromIB2 + 335.IBPluginDependency + 335.ImportedFromIB2 + 336.IBPluginDependency + 336.ImportedFromIB2 + 337.IBPluginDependency + 337.ImportedFromIB2 + 338.IBPluginDependency + 338.ImportedFromIB2 + 339.IBPluginDependency + 339.ImportedFromIB2 + 340.IBPluginDependency + 340.ImportedFromIB2 + 341.IBPluginDependency + 341.ImportedFromIB2 + 342.IBPluginDependency + 342.ImportedFromIB2 + 343.IBPluginDependency + 343.ImportedFromIB2 + 352.IBPluginDependency + 352.ImportedFromIB2 + 395.IBPluginDependency + 395.ImportedFromIB2 + 396.IBPluginDependency + 396.ImportedFromIB2 + 397.IBPluginDependency + 397.ImportedFromIB2 + 398.IBPluginDependency + 398.ImportedFromIB2 + 399.IBPluginDependency + 399.ImportedFromIB2 + 403.IBPluginDependency + 403.ImportedFromIB2 + 404.IBPluginDependency + 404.ImportedFromIB2 + 405.IBPluginDependency + 405.ImportedFromIB2 + 406.IBPluginDependency + 406.ImportedFromIB2 + 416.IBPluginDependency + 416.ImportedFromIB2 + 425.IBPluginDependency + 425.ImportedFromIB2 + 44.IBPluginDependency + 44.ImportedFromIB2 + 465.IBPluginDependency + 465.ImportedFromIB2 + 466.IBPluginDependency + 466.ImportedFromIB2 + 596.IBPluginDependency + 596.ImportedFromIB2 + 598.IBPluginDependency + 598.ImportedFromIB2 + 601.IBPluginDependency + 601.ImportedFromIB2 + 607.IBPluginDependency + 607.ImportedFromIB2 + 608.IBPluginDependency + 608.ImportedFromIB2 + 609.IBPluginDependency + 609.ImportedFromIB2 + 610.IBPluginDependency + 610.ImportedFromIB2 + 611.IBPluginDependency + 611.ImportedFromIB2 + 612.IBPluginDependency + 612.ImportedFromIB2 + 613.IBPluginDependency + 613.ImportedFromIB2 + 646.IBPluginDependency + 646.ImportedFromIB2 + 650.IBPluginDependency + 650.ImportedFromIB2 + 651.IBPluginDependency + 651.ImportedFromIB2 + 670.IBPluginDependency + 670.ImportedFromIB2 + 715.IBPluginDependency + 715.ImportedFromIB2 + 716.IBPluginDependency + 716.ImportedFromIB2 + 717.IBPluginDependency + 717.ImportedFromIB2 + 718.IBPluginDependency + 718.ImportedFromIB2 + 719.IBPluginDependency + 719.ImportedFromIB2 + 720.IBPluginDependency + 720.ImportedFromIB2 + 721.IBPluginDependency + 721.ImportedFromIB2 + 722.IBPluginDependency + 722.ImportedFromIB2 + 723.IBPluginDependency + 723.ImportedFromIB2 + 724.IBPluginDependency + 724.ImportedFromIB2 + 725.IBPluginDependency + 725.ImportedFromIB2 + 726.IBPluginDependency + 726.ImportedFromIB2 + 727.IBPluginDependency + 727.ImportedFromIB2 + 728.IBPluginDependency + 728.ImportedFromIB2 + 729.IBPluginDependency + 729.ImportedFromIB2 + 730.IBPluginDependency + 730.ImportedFromIB2 + 731.IBPluginDependency + 731.ImportedFromIB2 + 732.IBPluginDependency + 732.ImportedFromIB2 + 733.IBPluginDependency + 733.ImportedFromIB2 + 734.IBPluginDependency + 734.ImportedFromIB2 + 735.IBPluginDependency + 735.ImportedFromIB2 + 736.IBPluginDependency + 736.ImportedFromIB2 + 737.IBPluginDependency + 737.ImportedFromIB2 + 738.IBPluginDependency + 738.ImportedFromIB2 + 739.IBPluginDependency + 739.ImportedFromIB2 + 740.IBPluginDependency + 740.ImportedFromIB2 + 741.IBPluginDependency + 741.ImportedFromIB2 + 742.IBPluginDependency + 742.ImportedFromIB2 + 743.IBPluginDependency + 743.ImportedFromIB2 + 744.IBPluginDependency + 744.ImportedFromIB2 + 745.IBPluginDependency + 745.ImportedFromIB2 + 746.IBPluginDependency + 746.ImportedFromIB2 + 747.IBPluginDependency + 747.ImportedFromIB2 + 748.IBPluginDependency + 748.ImportedFromIB2 + 749.IBPluginDependency + 749.ImportedFromIB2 + 750.IBPluginDependency + 750.ImportedFromIB2 + 751.IBPluginDependency + 751.ImportedFromIB2 + 752.IBPluginDependency + 752.ImportedFromIB2 + 753.IBPluginDependency + 753.ImportedFromIB2 + 754.IBPluginDependency + 754.ImportedFromIB2 + 755.IBPluginDependency + 755.ImportedFromIB2 + 756.IBPluginDependency + 756.ImportedFromIB2 + 757.IBPluginDependency + 757.ImportedFromIB2 + 758.IBPluginDependency + 758.ImportedFromIB2 + 759.IBPluginDependency + 759.ImportedFromIB2 + 788.IBPluginDependency + 788.ImportedFromIB2 + 789.IBPluginDependency + 789.ImportedFromIB2 + 790.IBPluginDependency + 790.ImportedFromIB2 + 791.IBPluginDependency + 791.ImportedFromIB2 + 792.IBPluginDependency + 792.ImportedFromIB2 + 793.IBPluginDependency + 793.ImportedFromIB2 + + + YES + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + + + {92, 10} + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + + + + YES + + + YES + + + + + YES + + + YES + + + + 871 + + + + YES + + FSInterpreterView + + YES + + YES + object1 + object2 + object3 + object4 + object5 + object6 + object7 + object8 + object9 + + + YES + id + id + id + id + id + id + id + id + id + + + + YES + + YES + object1 + object2 + object3 + object4 + object5 + object6 + object7 + object8 + object9 + + + YES + + object1 + id + + + object2 + id + + + object3 + id + + + object4 + id + + + object5 + id + + + object6 + id + + + object7 + id + + + object8 + id + + + object9 + id + + + + + IBUserSource + + + + + FScriptAppController + NSObject + + YES + + YES + newDemoAssistant: + newKVBrowser: + newObjectBrowser: + showConsole: + showInfoPanel: + showPreferencePanel: + updatePreference: + + + YES + id + id + id + id + id + id + id + + + + YES + + YES + newDemoAssistant: + newKVBrowser: + newObjectBrowser: + showConsole: + showInfoPanel: + showPreferencePanel: + updatePreference: + + + YES + + newDemoAssistant: + id + + + newKVBrowser: + id + + + newObjectBrowser: + id + + + showConsole: + id + + + showInfoPanel: + id + + + showPreferencePanel: + id + + + updatePreference: + id + + + + + YES + + YES + automaticallyIntrospectDeclaredPropertiesUI + confirmWhenQuittingUI + displayObjectBrowserAtLaunchTimeUI + fontSizeUI + infoPanel + interpreterView + preferencePanel + runWithObjCAutomaticGarbageCollectionUI + shouldJournalUI + + + YES + NSButton + NSButton + NSButton + NSTextField + NSPanel + FSInterpreterView + NSPanel + NSButton + NSButton + + + + YES + + YES + automaticallyIntrospectDeclaredPropertiesUI + confirmWhenQuittingUI + displayObjectBrowserAtLaunchTimeUI + fontSizeUI + infoPanel + interpreterView + preferencePanel + runWithObjCAutomaticGarbageCollectionUI + shouldJournalUI + + + YES + + automaticallyIntrospectDeclaredPropertiesUI + NSButton + + + confirmWhenQuittingUI + NSButton + + + displayObjectBrowserAtLaunchTimeUI + NSButton + + + fontSizeUI + NSTextField + + + infoPanel + NSPanel + + + interpreterView + FSInterpreterView + + + preferencePanel + NSPanel + + + runWithObjCAutomaticGarbageCollectionUI + NSButton + + + shouldJournalUI + NSButton + + + + + IBUserSource + + + + + FScriptTextView + NSTextView + + IBUserSource + + + + + FirstResponder + + YES + + YES + enterSelection: + findNext: + findPrevious: + newBigBrowser: + orderFrontFindPanel: + + + YES + id + id + id + id + id + + + + YES + + YES + enterSelection: + findNext: + findPrevious: + newBigBrowser: + orderFrontFindPanel: + + + YES + + enterSelection: + id + + + findNext: + id + + + findPrevious: + id + + + newBigBrowser: + id + + + orderFrontFindPanel: + id + + + + + IBUserSource + + + + + NSObject + + IBUserSource + + + + + ShellView + FScriptTextView + + YES + + YES + executeCurrentCommand: + moveDown: + moveLeft: + moveToBeginningOfLine: + moveToBeginningOfParagraph: + moveToEndOfLine: + moveToEndOfParagraph: + moveUp: + parenthesizeCommand: + paste: + saveEditedCommand: + switchParserMode: + + + YES + id + id + id + id + id + id + id + id + id + id + id + id + + + + YES + + YES + executeCurrentCommand: + moveDown: + moveLeft: + moveToBeginningOfLine: + moveToBeginningOfParagraph: + moveToEndOfLine: + moveToEndOfParagraph: + moveUp: + parenthesizeCommand: + paste: + saveEditedCommand: + switchParserMode: + + + YES + + executeCurrentCommand: + id + + + moveDown: + id + + + moveLeft: + id + + + moveToBeginningOfLine: + id + + + moveToBeginningOfParagraph: + id + + + moveToEndOfLine: + id + + + moveToEndOfParagraph: + id + + + moveUp: + id + + + parenthesizeCommand: + id + + + paste: + id + + + saveEditedCommand: + id + + + switchParserMode: + id + + + + + commandHandler + id + + + commandHandler + + commandHandler + id + + + + IBUserSource + + + + + + 0 + IBCocoaFramework + + com.apple.InterfaceBuilder.CocoaPlugin.macosx + + + + com.apple.InterfaceBuilder.CocoaPlugin.InterfaceBuilder3 + + + YES + ../../FScript.xcodeproj + 3 + + YES + + YES + NSMenuCheckmark + NSMenuMixedState + + + YES + {12, 12} + {10, 2} + + + + diff --git a/F-Script/English.lproj/fs~.xib b/F-Script/English.lproj/fs~.xib new file mode 100644 index 0000000..e2ff1f9 --- /dev/null +++ b/F-Script/English.lproj/fs~.xib @@ -0,0 +1,3052 @@ + + + + 1020 + 14A379a + 941 + 1343.13 + 755.00 + + com.apple.InterfaceBuilder.CocoaPlugin + 941 + + + YES + + + YES + com.apple.InterfaceBuilder.CocoaPlugin + + + PluginDependencyRecalculationVersion + + + + YES + + NSApplication + + + FirstResponder + + + NSApplication + + + 15 + 2 + {{272, 346}, {678, 407}} + 1350041600 + F-Script + NSWindow + View + + {1.7976931348623157e+308, 1.7976931348623157e+308} + {92, 10} + + + 256 + + YES + + + 274 + {678, 407} + + FSInterpreterView + + + {{1, 9}, {678, 407}} + + {{0, 0}, {1440, 878}} + {92, 32} + {1.7976931348623157e+308, 1.7976931348623157e+308} + mainWindow + YES + + + fs + + YES + + + F-Script + + 1048576 + 2147483647 + + NSImage + NSMenuCheckmark + + + NSImage + NSMenuMixedState + + submenuAction: + + + F-Script + + YES + + + About F-Script + + 2147483647 + + + + + + YES + YES + + + 1048576 + 2147483647 + + + + + + Preferences... + , + 1048576 + 2147483647 + + + + + + YES + YES + + + 1048576 + 2147483647 + + + + + + Services + + 1048576 + 2147483647 + + + submenuAction: + + + + Services + + + YES + + _NSServicesMenu + + + + + YES + YES + + + 1048576 + 2147483647 + + + + + + Hide F-Script + h + 1048576 + 2147483647 + + + + + + Hide Others + h + 1572864 + 2147483647 + + + + + + Show All + + 2147483647 + + + + + + YES + YES + + + 1048576 + 2147483647 + + + + + + Quit F-Script + q + 1048576 + 2147483647 + + + + + _NSAppleMenu + + + + + Workspace + + 1048576 + 2147483647 + + + submenuAction: + + + Workspace + + YES + + + Open Object Browser + + 1048576 + 2147483647 + + + + + + YES + YES + + + 1048576 + 2147483647 + + + + + + Close Window + w + 1048576 + 2147483647 + + + + + + YES + YES + + + 1048576 + 2147483647 + + + + + + Page Setup... + P + 1048576 + 2147483647 + + + + + + Print... + p + 1048576 + 2147483647 + + + + + + + + + Edit + + 1048576 + 2147483647 + + + submenuAction: + + + Edit + + YES + + + Undo + z + 1048576 + 2147483647 + + + + + + Redo + Z + 1048576 + 2147483647 + + + + + + YES + YES + + + 1048576 + 2147483647 + + + + + + Cut + x + 1048576 + 2147483647 + + + + + + Copy + c + 1048576 + 2147483647 + + + + + + Paste + v + 1048576 + 2147483647 + + + + + + Delete + + 1048576 + 2147483647 + + + + + + Select All + a + 1048576 + 2147483647 + + + + + + YES + YES + + + 1048576 + 2147483647 + + + + + + Find + + 1048576 + 2147483647 + + + submenuAction: + + + + Find + + + YES + + + Find… + f + 1048576 + 2147483647 + + + 1 + + + + Find Next + g + 1048576 + 2147483647 + + + 2 + + + + Find Previous + G + 1048576 + 2147483647 + + + 3 + + + + Use Selection for Find + e + 1048576 + 2147483647 + + + 7 + + + + Jump to Selection + j + 1048576 + 2147483647 + + + + + + + + + Spelling + + 1048576 + 2147483647 + + + submenuAction: + + + Spelling + + YES + + + Spelling... + : + 1048576 + 2147483647 + + + + + + Check Spelling + ; + 1048576 + 2147483647 + + + + + + Check Spelling As You Type + + 1048576 + 2147483647 + + + + + + + + + Speech + + 1048576 + 2147483647 + + + submenuAction: + + + Speech + + YES + + + Start speaking + + 1048576 + 2147483647 + + + + + + Stop speaking + + 1048576 + 2147483647 + + + + + + + + YES + + + + + View + + 1048576 + 2147483647 + + + submenuAction: + + + View + + YES + + + Customize Toolbar... + + 1048576 + 2147483647 + + + + + + + + + Format + + 1048576 + 2147483647 + + + submenuAction: + + + + Format + + + YES + + + Font + + 1048576 + 2147483647 + + + submenuAction: + + + + Font + + + YES + + + Show Fonts + t + 1048576 + 2147483647 + + + + + + Bold + b + 1048576 + 2147483647 + + + 2 + + + + Italic + i + 1048576 + 2147483647 + + + 1 + + + + Underline + u + 1048576 + 2147483647 + + + + + + YES + YES + + + 1048576 + 2147483647 + + + + + + Bigger + + + 1048576 + 2147483647 + + + 3 + + + + Smaller + - + 1048576 + 2147483647 + + + 4 + + + + YES + YES + + + 1048576 + 2147483647 + + + + + + Kern + + 1048576 + 2147483647 + + + submenuAction: + + + + Kern + + + YES + + + Use Default + + 1048576 + 2147483647 + + + + + + Use None + + 1048576 + 2147483647 + + + + + + Tighten + + 1048576 + 2147483647 + + + + + + Loosen + + 1048576 + 2147483647 + + + + + + + + + Ligature + + 1048576 + 2147483647 + + + submenuAction: + + + + Ligature + + + YES + + + Use Default + + 1048576 + 2147483647 + + + + + + Use None + + 1048576 + 2147483647 + + + + + + Use All + + 1048576 + 2147483647 + + + + + + + + + Baseline + + 1048576 + 2147483647 + + + submenuAction: + + + + Baseline + + + YES + + + Use Default + + 1048576 + 2147483647 + + + + + + Superscript + + 1048576 + 2147483647 + + + + + + Subscript + + 1048576 + 2147483647 + + + + + + Raise + + 1048576 + 2147483647 + + + + + + Lower + + 1048576 + 2147483647 + + + + + + + + + YES + YES + + + 1048576 + 2147483647 + + + + + + Show Colors + C + 1048576 + 2147483647 + + + + + + YES + YES + + + 1048576 + 2147483647 + + + + + + Copy Style + c + 1572864 + 2147483647 + + + + + + Paste Style + v + 1572864 + 2147483647 + + + + + _NSFontMenu + + + + + Text + + 1048576 + 2147483647 + + + submenuAction: + + + + Text + + + YES + + + Align Left + { + 1048576 + 2147483647 + + + + + + Center + | + 1048576 + 2147483647 + + + + + + Justify + + 1048576 + 2147483647 + + + + + + Align Right + } + 1048576 + 2147483647 + + + + + + YES + YES + + + 1048576 + 2147483647 + + + + + + Show Ruler + + 1048576 + 2147483647 + + + + + + Copy Ruler + c + 1310720 + 2147483647 + + + + + + Paste Ruler + v + 1310720 + 2147483647 + + + + + + + + + + + + Window + + 1048576 + 2147483647 + + + submenuAction: + + + + Window + + + YES + + + Minimize + m + 1048576 + 2147483647 + + + + + + Zoom + + 1048576 + 2147483647 + + + + + + YES + YES + + + 1048576 + 2147483647 + + + + + + Bring All to Front + + 1048576 + 2147483647 + + + + + _NSWindowsMenu + + + + _NSMainMenu + YES + + + FScriptAppControler + + + NSFontManager + + + + + YES + + + interpreterView + + + + 121 + + + + delegate + + + + 127 + + + + delete: + + + + 189 + + + + selectAll: + + + + 190 + + + + paste: + + + + 191 + + + + copy: + + + + 192 + + + + cut: + + + + 193 + + + + print: + + + + 311 + + + + unhideAllApplications: + + + + 344 + + + + hide: + + + + 345 + + + + hideOtherApplications: + + + + 346 + + + + terminate: + + + + 347 + + + + showInfoPanel: + + + + 348 + + + + showPreferencePanel: + + + + 349 + + + + runPageLayout: + + + + 353 + + + + newBigBrowser: + + + + 355 + + + + checkSpelling: + + + + 400 + + + + showGuessPanel: + + + + 401 + + + + toggleContinuousSpellChecking: + + + + 402 + + + + stopSpeaking: + + + + 407 + + + + startSpeaking: + + + + 408 + + + + redo: + + + + 467 + + + + undo: + + + + 468 + + + + runToolbarCustomizationPalette: + + + + 604 + + + + initialFirstResponder + + + + 606 + + + + performFindPanelAction: + + + + 614 + + + + centerSelectionInVisibleArea: + + + + 615 + + + + performFindPanelAction: + + + + 616 + + + + performFindPanelAction: + + + + 617 + + + + performFindPanelAction: + + + + 618 + + + + copyFont: + + + + 760 + + + + pasteFont: + + + + 761 + + + + pasteRuler: + + + + 762 + + + + underline: + + + + 763 + + + + superscript: + + + + 764 + + + + alignJustified: + + + + 765 + + + + orderFrontColorPanel: + + + + 766 + + + + useStandardLigatures: + + + + 767 + + + + tightenKerning: + + + + 768 + + + + addFontTrait: + + + + 769 + + + + raiseBaseline: + + + + 770 + + + + addFontTrait: + + + + 771 + + + + orderFrontFontPanel: + + + + 772 + + + + copyRuler: + + + + 773 + + + + alignLeft: + + + + 774 + + + + unscript: + + + + 775 + + + + toggleRuler: + + + + 776 + + + + turnOffKerning: + + + + 777 + + + + turnOffLigatures: + + + + 778 + + + + subscript: + + + + 779 + + + + lowerBaseline: + + + + 780 + + + + alignCenter: + + + + 781 + + + + alignRight: + + + + 782 + + + + useAllLigatures: + + + + 783 + + + + useStandardKerning: + + + + 784 + + + + modifyFont: + + + + 785 + + + + modifyFont: + + + + 786 + + + + loosenKerning: + + + + 787 + + + + performZoom: + + + + 794 + + + + arrangeInFront: + + + + 795 + + + + performMiniaturize: + + + + 796 + + + + performClose: + + + + 832 + + + + delegate + + + + 835 + + + + + YES + + 0 + + YES + + + + + + -2 + + + File's Owner + + + -1 + + + First Responder + + + 21 + + + YES + + + + MyWindow + + + 2 + + + YES + + + + + + 119 + + + + + 44 + + + YES + + + + + + + + + MainMenu + + + 175 + + + YES + + + + + + 159 + + + YES + + + + + + + + + + + + + + + + + 164 + + + + + 165 + + + + + 167 + + + + + 173 + + + + + 181 + + + + + 396 + + + YES + + + + + + 398 + + + YES + + + + + + + + 395 + + + + + 397 + + + + + 399 + + + + + 406 + + + YES + + + + + + 403 + + + YES + + + + + + + 404 + + + + + 405 + + + + + 416 + + + + + 425 + + + + + 465 + + + + + 466 + + + + + 611 + + + YES + + + + + + 607 + + + YES + + + + + + + + + + 608 + + + + + 609 + + + + + 610 + + + + + 612 + + + + + 613 + + + + + 307 + + + YES + + + + + + 309 + + + YES + + + + + + + + + + + 304 + + + + + 305 + + + + + 352 + + + + + 646 + + + + + 650 + + + + + 651 + + + + + 342 + + + YES + + + + + + 343 + + + YES + + + + + + + + + + + + + + + + 331 + + + YES + + + + + + 334 + + + + + 332 + + + + + 333 + + + + + 335 + + + + + 336 + + + + + 337 + + + + + 338 + + + + + 339 + + + + + 340 + + + + + 341 + + + + + 670 + + + + + 601 + + + YES + + + + + + 596 + + + YES + + + + + + 598 + + + + + 715 + + + YES + + + + + + 740 + + + YES + + + + + + + 727 + + + YES + + + + + + 744 + + + YES + + + + + + + + + + + + + + + + + + + + + 717 + + + + + 718 + + + YES + + + + + + 750 + + + YES + + + + + + + + 732 + + + + + 755 + + + + + 758 + + + + + 720 + + + + + 721 + + + + + 723 + + + + + 724 + + + + + 725 + + + + + 730 + + + + + 735 + + + + + 738 + + + YES + + + + + + 716 + + + YES + + + + + + + + + 726 + + + + + 737 + + + + + 745 + + + + + 753 + + + + + 739 + + + + + 741 + + + + + 743 + + + + + 746 + + + + + 752 + + + + + 756 + + + YES + + + + + + 734 + + + YES + + + + + + + + + + 729 + + + + + 731 + + + + + 747 + + + + + 754 + + + + + 757 + + + + + 733 + + + YES + + + + + + 749 + + + YES + + + + + + + + + + + + + 719 + + + + + 722 + + + + + 728 + + + + + 736 + + + + + 742 + + + + + 748 + + + + + 751 + + + + + 759 + + + + + 788 + + + YES + + + + + + 792 + + + YES + + + + + + + + + 789 + + + + + 790 + + + + + 791 + + + + + 793 + + + + + 120 + + + FScriptAppControler + + + 252 + + + Font Manager + + + -3 + + + Application + + + + + YES + + YES + 119.IBPluginDependency + 119.ImportedFromIB2 + 120.ImportedFromIB2 + 159.IBPluginDependency + 159.ImportedFromIB2 + 164.IBPluginDependency + 164.ImportedFromIB2 + 165.IBPluginDependency + 165.ImportedFromIB2 + 167.IBPluginDependency + 167.ImportedFromIB2 + 173.IBPluginDependency + 173.ImportedFromIB2 + 175.IBPluginDependency + 175.ImportedFromIB2 + 181.IBPluginDependency + 181.ImportedFromIB2 + 2.IBPluginDependency + 2.ImportedFromIB2 + 21.IBPluginDependency + 21.ImportedFromIB2 + 21.NSWindowTemplate.visibleAtLaunch + 21.windowTemplate.hasMinSize + 21.windowTemplate.minSize + 252.ImportedFromIB2 + 304.IBPluginDependency + 304.ImportedFromIB2 + 305.IBPluginDependency + 305.ImportedFromIB2 + 307.IBPluginDependency + 307.ImportedFromIB2 + 309.IBPluginDependency + 309.ImportedFromIB2 + 331.IBPluginDependency + 331.ImportedFromIB2 + 332.IBPluginDependency + 332.ImportedFromIB2 + 333.IBPluginDependency + 333.ImportedFromIB2 + 334.IBPluginDependency + 334.ImportedFromIB2 + 335.IBPluginDependency + 335.ImportedFromIB2 + 336.IBPluginDependency + 336.ImportedFromIB2 + 337.IBPluginDependency + 337.ImportedFromIB2 + 338.IBPluginDependency + 338.ImportedFromIB2 + 339.IBPluginDependency + 339.ImportedFromIB2 + 340.IBPluginDependency + 340.ImportedFromIB2 + 341.IBPluginDependency + 341.ImportedFromIB2 + 342.IBPluginDependency + 342.ImportedFromIB2 + 343.IBPluginDependency + 343.ImportedFromIB2 + 352.IBPluginDependency + 352.ImportedFromIB2 + 395.IBPluginDependency + 395.ImportedFromIB2 + 396.IBPluginDependency + 396.ImportedFromIB2 + 397.IBPluginDependency + 397.ImportedFromIB2 + 398.IBPluginDependency + 398.ImportedFromIB2 + 399.IBPluginDependency + 399.ImportedFromIB2 + 403.IBPluginDependency + 403.ImportedFromIB2 + 404.IBPluginDependency + 404.ImportedFromIB2 + 405.IBPluginDependency + 405.ImportedFromIB2 + 406.IBPluginDependency + 406.ImportedFromIB2 + 416.IBPluginDependency + 416.ImportedFromIB2 + 425.IBPluginDependency + 425.ImportedFromIB2 + 44.IBPluginDependency + 44.ImportedFromIB2 + 465.IBPluginDependency + 465.ImportedFromIB2 + 466.IBPluginDependency + 466.ImportedFromIB2 + 596.IBPluginDependency + 596.ImportedFromIB2 + 598.IBPluginDependency + 598.ImportedFromIB2 + 601.IBPluginDependency + 601.ImportedFromIB2 + 607.IBPluginDependency + 607.ImportedFromIB2 + 608.IBPluginDependency + 608.ImportedFromIB2 + 609.IBPluginDependency + 609.ImportedFromIB2 + 610.IBPluginDependency + 610.ImportedFromIB2 + 611.IBPluginDependency + 611.ImportedFromIB2 + 612.IBPluginDependency + 612.ImportedFromIB2 + 613.IBPluginDependency + 613.ImportedFromIB2 + 646.IBPluginDependency + 646.ImportedFromIB2 + 650.IBPluginDependency + 650.ImportedFromIB2 + 651.IBPluginDependency + 651.ImportedFromIB2 + 670.IBPluginDependency + 670.ImportedFromIB2 + 715.IBPluginDependency + 715.ImportedFromIB2 + 716.IBPluginDependency + 716.ImportedFromIB2 + 717.IBPluginDependency + 717.ImportedFromIB2 + 718.IBPluginDependency + 718.ImportedFromIB2 + 719.IBPluginDependency + 719.ImportedFromIB2 + 720.IBPluginDependency + 720.ImportedFromIB2 + 721.IBPluginDependency + 721.ImportedFromIB2 + 722.IBPluginDependency + 722.ImportedFromIB2 + 723.IBPluginDependency + 723.ImportedFromIB2 + 724.IBPluginDependency + 724.ImportedFromIB2 + 725.IBPluginDependency + 725.ImportedFromIB2 + 726.IBPluginDependency + 726.ImportedFromIB2 + 727.IBPluginDependency + 727.ImportedFromIB2 + 728.IBPluginDependency + 728.ImportedFromIB2 + 729.IBPluginDependency + 729.ImportedFromIB2 + 730.IBPluginDependency + 730.ImportedFromIB2 + 731.IBPluginDependency + 731.ImportedFromIB2 + 732.IBPluginDependency + 732.ImportedFromIB2 + 733.IBPluginDependency + 733.ImportedFromIB2 + 734.IBPluginDependency + 734.ImportedFromIB2 + 735.IBPluginDependency + 735.ImportedFromIB2 + 736.IBPluginDependency + 736.ImportedFromIB2 + 737.IBPluginDependency + 737.ImportedFromIB2 + 738.IBPluginDependency + 738.ImportedFromIB2 + 739.IBPluginDependency + 739.ImportedFromIB2 + 740.IBPluginDependency + 740.ImportedFromIB2 + 741.IBPluginDependency + 741.ImportedFromIB2 + 742.IBPluginDependency + 742.ImportedFromIB2 + 743.IBPluginDependency + 743.ImportedFromIB2 + 744.IBPluginDependency + 744.ImportedFromIB2 + 745.IBPluginDependency + 745.ImportedFromIB2 + 746.IBPluginDependency + 746.ImportedFromIB2 + 747.IBPluginDependency + 747.ImportedFromIB2 + 748.IBPluginDependency + 748.ImportedFromIB2 + 749.IBPluginDependency + 749.ImportedFromIB2 + 750.IBPluginDependency + 750.ImportedFromIB2 + 751.IBPluginDependency + 751.ImportedFromIB2 + 752.IBPluginDependency + 752.ImportedFromIB2 + 753.IBPluginDependency + 753.ImportedFromIB2 + 754.IBPluginDependency + 754.ImportedFromIB2 + 755.IBPluginDependency + 755.ImportedFromIB2 + 756.IBPluginDependency + 756.ImportedFromIB2 + 757.IBPluginDependency + 757.ImportedFromIB2 + 758.IBPluginDependency + 758.ImportedFromIB2 + 759.IBPluginDependency + 759.ImportedFromIB2 + 788.IBPluginDependency + 788.ImportedFromIB2 + 789.IBPluginDependency + 789.ImportedFromIB2 + 790.IBPluginDependency + 790.ImportedFromIB2 + 791.IBPluginDependency + 791.ImportedFromIB2 + 792.IBPluginDependency + 792.ImportedFromIB2 + 793.IBPluginDependency + 793.ImportedFromIB2 + + + YES + com.apple.InterfaceBuilder.CocoaPlugin + + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + + + {92, 10} + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + + + + YES + + + YES + + + + + YES + + + YES + + + + 836 + + + + YES + + FSInterpreterView + + IBUserSource + + + + + FScriptAppControler + NSObject + + YES + + YES + myAction: + newBigBrowser: + newKVBrowser: + showConsole: + showInfoPanel: + showPreferencePanel: + updatePreference: + + + YES + id + id + id + id + id + id + id + + + + YES + + YES + myAction: + newBigBrowser: + newKVBrowser: + showConsole: + showInfoPanel: + showPreferencePanel: + updatePreference: + + + YES + + myAction: + id + + + newBigBrowser: + id + + + newKVBrowser: + id + + + showConsole: + id + + + showInfoPanel: + id + + + showPreferencePanel: + id + + + updatePreference: + id + + + + + YES + + YES + confirmWhenQuittingUI + displayObjectBrowserAtLaunchTimeUI + fontSizeUI + infoPanel + interpreterView + preferencePanel + shouldJournalUI + + + YES + NSButton + NSButton + NSTextField + NSPanel + FSInterpreterView + NSPanel + NSButton + + + + YES + + YES + confirmWhenQuittingUI + displayObjectBrowserAtLaunchTimeUI + fontSizeUI + infoPanel + interpreterView + preferencePanel + shouldJournalUI + + + YES + + confirmWhenQuittingUI + NSButton + + + displayObjectBrowserAtLaunchTimeUI + NSButton + + + fontSizeUI + NSTextField + + + infoPanel + NSPanel + + + interpreterView + FSInterpreterView + + + preferencePanel + NSPanel + + + shouldJournalUI + NSButton + + + + + IBUserSource + + + + + FirstResponder + + YES + + YES + enterSelection: + findNext: + findPrevious: + newBigBrowser: + orderFrontFindPanel: + + + YES + id + id + id + id + id + + + + YES + + YES + enterSelection: + findNext: + findPrevious: + newBigBrowser: + orderFrontFindPanel: + + + YES + + enterSelection: + id + + + findNext: + id + + + findPrevious: + id + + + newBigBrowser: + id + + + orderFrontFindPanel: + id + + + + + IBUserSource + + + + + + 0 + IBCocoaFramework + + com.apple.InterfaceBuilder.CocoaPlugin.macosx + + + + com.apple.InterfaceBuilder.CocoaPlugin.InterfaceBuilder3 + + + YES + + 3 + + YES + + YES + NSMenuCheckmark + NSMenuMixedState + + + YES + {12, 12} + {10, 2} + + + + diff --git a/F-Script/FScriptAppPreference.nib/keyedobjects.nib b/F-Script/FScriptAppPreference.nib/keyedobjects.nib deleted file mode 100644 index 15ee95e..0000000 Binary files a/F-Script/FScriptAppPreference.nib/keyedobjects.nib and /dev/null differ diff --git a/F-Script/FScriptAppPreference.nib/designable.nib b/F-Script/FScriptAppPreference.xib similarity index 96% rename from F-Script/FScriptAppPreference.nib/designable.nib rename to F-Script/FScriptAppPreference.xib index 68f3096..d43527f 100644 --- a/F-Script/FScriptAppPreference.nib/designable.nib +++ b/F-Script/FScriptAppPreference.xib @@ -2,24 +2,15 @@ 1050 - 12C54 - 2840 - 1187.34 - 625.00 + 14A379a + 941 + 1343.13 + 755.00 com.apple.InterfaceBuilder.CocoaPlugin - 2840 + 941 - - NSButton - NSButtonCell - NSCustomObject - NSNumberFormatter - NSTextField - NSTextFieldCell - NSView - NSWindowTemplate - + com.apple.InterfaceBuilder.CocoaPlugin @@ -48,9 +39,10 @@ View + {1.7976931348623157e+308, 1.7976931348623157e+308} {297, 118} - + 256 @@ -58,16 +50,15 @@ 256 {{98, 100}, {50, 22}} - YES -1804599232 -2147482624 - LucidaGrande + .HelveticaNeueDeskInterface-Regular 13 - 1044 + 1040 @@ -109,7 +100,7 @@ - не число + NaN @@ -155,13 +146,13 @@ NO + 1 256 {{18, 78}, {137, 18}} - YES 67108864 @@ -190,7 +181,6 @@ 256 {{17, 102}, {76, 17}} - YES 67108864 @@ -215,13 +205,13 @@ NO + 1 256 {{18, 58}, {165, 18}} - YES 67108864 @@ -245,7 +235,6 @@ 256 {{18, 38}, {260, 18}} - YES 67108864 @@ -269,7 +258,6 @@ 256 {{18, 18}, {407, 18}} - YES 67108864 @@ -290,24 +278,38 @@ {443, 138} - - {{0, 0}, {1366, 746}} {297, 140} - {10000000000000, 10000000000000} + {1.7976931348623157e+308, 1.7976931348623157e+308} YES + + + updatePreference: + + + + 30 + + + + updatePreference: + + + + 31 + - confirmWhenQuittingUI + preferencePanel - + - 42 + 32 @@ -326,76 +328,60 @@ 34 - - updatePreference: - + + initialFirstResponder + - 30 - - - - updatePreference: - - - - 71 + 39 - preferencePanel + confirmWhenQuittingUI - + - 32 + 42 updatePreference: - + - 31 + 43 - automaticallyIntrospectDeclaredPropertiesUI + displayObjectBrowserAtLaunchTimeUI - + - 72 + 50 updatePreference: - + - 43 + 51 updatePreference: - + - 51 + 71 - displayObjectBrowserAtLaunchTimeUI + automaticallyIntrospectDeclaredPropertiesUI - - - 50 - - - - initialFirstResponder - - + - 39 + 72 @@ -539,6 +525,8 @@ com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin + + {297, 118} com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin @@ -645,6 +633,7 @@ YES + 3 NSSwitch diff --git a/FSTest1/MainMenu.xib b/FSTest1/MainMenu.xib new file mode 100644 index 0000000..395701a --- /dev/null +++ b/FSTest1/MainMenu.xib @@ -0,0 +1,1615 @@ + + + + 1060 + 14A379a + 941 + 1343.13 + 755.00 + + com.apple.InterfaceBuilder.CocoaPlugin + 941 + + + YES + + + YES + com.apple.InterfaceBuilder.CocoaPlugin + + + PluginDependencyRecalculationVersion + + + + YES + + + NSApplication + + + + FirstResponder + + + NSApplication + + + 15 + 2 + {{320, 267}, {480, 360}} + 1886912512 + Window + NSWindow + + View + + + {1.7976931348623157e+308, 1.7976931348623157e+308} + {213, 107} + + + 256 + + YES + + {{1, 9}, {480, 360}} + + {{0, 0}, {1152, 746}} + {213, 129} + {1.7976931348623157e+308, 1.7976931348623157e+308} + YES + + + MainMenu + + YES + + + NewApplication + + 1048576 + 2147483647 + + NSImage + NSMenuCheckmark + + + NSImage + NSMenuMixedState + + submenuAction: + + + + Info + + + YES + + + About NewApplication + + 2147483647 + + + + + + YES + YES + + + 1048576 + 2147483647 + + + + + + Preferences... + + 1048576 + 2147483647 + + + + + + YES + YES + + + 1048576 + 2147483647 + + + + + + Services + + 1048576 + 2147483647 + + + submenuAction: + + + + Services + + + YES + + _NSServicesMenu + + + + + YES + YES + + + 1048576 + 2147483647 + + + + + + Hide NewApplication + h + 1048576 + 2147483647 + + + + + + Hide Others + + 1048576 + 2147483647 + + + + + + Show All + + 1048576 + 2147483647 + + + + + + YES + YES + + + 1048576 + 2147483647 + + + + + + Quit NewApplication + q + 1048576 + 2147483647 + + + + + _NSAppleMenu + + + + + File + + 1048576 + 2147483647 + + + submenuAction: + + + + File + + + YES + + + New + n + 1048576 + 2147483647 + + + + + + Open... + o + 1048576 + 2147483647 + + + + + + Open Recent + + 1048576 + 2147483647 + + + submenuAction: + + + + Open Recent + + + YES + + + YES + Clear Menu + + 1048576 + 2147483647 + + + + + _NSRecentDocumentsMenu + + + + + YES + YES + + + 1048576 + 2147483647 + + + + + + Close + w + 1048576 + 2147483647 + + + + + + Save + s + 1048576 + 2147483647 + + + + + + Save As... + S + 1048576 + 2147483647 + + + + + + Revert + + 2147483647 + + + + + + YES + YES + + + 1048576 + 2147483647 + + + + + + Page Setup... + P + 1048576 + 2147483647 + + + + + + Print... + p + 1048576 + 2147483647 + + + + + + + + + Edit + + 1048576 + 2147483647 + + + submenuAction: + + + + Edit + + + YES + + + Undo + z + 1048576 + 2147483647 + + + + + + Redo + Z + 1048576 + 2147483647 + + + + + + YES + YES + + + 1048576 + 2147483647 + + + + + + Cut + x + 1048576 + 2147483647 + + + + + + Copy + c + 1048576 + 2147483647 + + + + + + Paste + v + 1048576 + 2147483647 + + + + + + Clear + + 1048576 + 2147483647 + + + + + + Select All + a + 1048576 + 2147483647 + + + + + + YES + YES + + + 1048576 + 2147483647 + + + + + + Find + + 1048576 + 2147483647 + + + submenuAction: + + + + Find + + + YES + + + Find... + f + 1048576 + 2147483647 + + + + + + Find Next + g + 1048576 + 2147483647 + + + + + + Find Previous + d + 1048576 + 2147483647 + + + + + + Use Selection for Find + e + 1048576 + 2147483647 + + + + + + Scroll to Selection + j + 1048576 + 2147483647 + + + + + + + + + Spelling + + 1048576 + 2147483647 + + + submenuAction: + + + Spelling + + YES + + + Spelling... + : + 1048576 + 2147483647 + + + + + + Check Spelling + ; + 1048576 + 2147483647 + + + + + + Check Spelling As You Type + + 1048576 + 2147483647 + + + + + + + + + + + + Window + + 1048576 + 2147483647 + + + submenuAction: + + + + Window + + + YES + + + Minimize + m + 1048576 + 2147483647 + + + + + + YES + YES + + + 1048576 + 2147483647 + + + + + + Bring All to Front + + 1048576 + 2147483647 + + + + + _NSWindowsMenu + + + + + Help + + 1048576 + 2147483647 + + + submenuAction: + + + + Help + + + YES + + + MyApp Help + ? + 1048576 + 2147483647 + + + + + + + + _NSMainMenu + + + + + YES + + + performMiniaturize: + + + + 37 + + + + arrangeInFront: + + + + 39 + + + + print: + + + + 86 + + + + runPageLayout: + + + + 87 + + + + showHelp: + + + + 122 + + + + clearRecentDocuments: + + + + 127 + + + + terminate: + + + + 139 + + + + orderFrontStandardAboutPanel: + + + + 142 + + + + hideOtherApplications: + + + + 146 + + + + hide: + + + + 152 + + + + unhideAllApplications: + + + + 153 + + + + cut: + + + + 175 + + + + paste: + + + + 176 + + + + redo: + + + + 178 + + + + selectAll: + + + + 179 + + + + undo: + + + + 180 + + + + copy: + + + + 181 + + + + clear: + + + + 183 + + + + showGuessPanel: + + + + 188 + + + + checkSpelling: + + + + 190 + + + + toggleContinuousSpellChecking: + + + + 192 + + + + performClose: + + + + 193 + + + + + YES + + 0 + + YES + + + + + + -2 + + + File's Owner + + + -1 + + + First Responder + + + 21 + + + YES + + + + Window + + + 2 + + + + + 29 + + + YES + + + + + + + + MainMenu + + + 19 + + + YES + + + + + + 24 + + + YES + + + + + + + + 5 + + + + + 23 + + + + + 92 + + + + + 56 + + + YES + + + + + + 57 + + + YES + + + + + + + + + + + + + + + + 58 + + + + + 129 + + + + + 131 + + + YES + + + + + + 130 + + + + + 134 + + + + + 136 + + + + + 143 + + + + + 144 + + + + + 145 + + + + + 149 + + + + + 150 + + + + + 194 + + + + + 83 + + + YES + + + + + + 81 + + + YES + + + + + + + + + + + + + + + + 72 + + + + + 73 + + + + + 74 + + + + + 75 + + + + + 77 + + + + + 78 + + + + + 79 + + + + + 80 + + + + + 82 + + + + + 112 + + + + + 124 + + + YES + + + + + + 125 + + + YES + + + + + + 126 + + + + + 103 + + + YES + + + + + + 106 + + + YES + + + + + + 111 + + + + + 163 + + + YES + + + + + + 169 + + + YES + + + + + + + + + + + + + + + + 156 + + + + + 157 + + + + + 158 + + + + + 160 + + + + + 164 + + + + + 168 + + + YES + + + + + + 159 + + + YES + + + + + + + + + + 154 + + + + + 155 + + + + + 161 + + + + + 162 + + + + + 167 + + + + + 171 + + + + + 172 + + + + + 173 + + + + + 174 + + + + + 184 + + + YES + + + + + + 185 + + + YES + + + + + + + + 187 + + + + + 189 + + + + + 191 + + + + + -3 + + + Application + + + + + YES + + YES + 103.IBPluginDependency + 103.ImportedFromIB2 + 106.IBPluginDependency + 106.ImportedFromIB2 + 111.IBPluginDependency + 111.ImportedFromIB2 + 112.IBPluginDependency + 112.ImportedFromIB2 + 124.IBPluginDependency + 124.ImportedFromIB2 + 125.IBPluginDependency + 125.ImportedFromIB2 + 126.IBPluginDependency + 126.ImportedFromIB2 + 129.IBPluginDependency + 129.ImportedFromIB2 + 130.IBPluginDependency + 130.ImportedFromIB2 + 131.IBPluginDependency + 131.ImportedFromIB2 + 134.IBPluginDependency + 134.ImportedFromIB2 + 136.IBPluginDependency + 136.ImportedFromIB2 + 143.IBPluginDependency + 143.ImportedFromIB2 + 144.IBPluginDependency + 144.ImportedFromIB2 + 145.IBPluginDependency + 145.ImportedFromIB2 + 149.IBPluginDependency + 149.ImportedFromIB2 + 150.IBPluginDependency + 150.ImportedFromIB2 + 154.IBPluginDependency + 154.ImportedFromIB2 + 155.IBPluginDependency + 155.ImportedFromIB2 + 156.IBPluginDependency + 156.ImportedFromIB2 + 157.IBPluginDependency + 157.ImportedFromIB2 + 158.IBPluginDependency + 158.ImportedFromIB2 + 159.IBPluginDependency + 159.ImportedFromIB2 + 160.IBPluginDependency + 160.ImportedFromIB2 + 161.IBPluginDependency + 161.ImportedFromIB2 + 162.IBPluginDependency + 162.ImportedFromIB2 + 163.IBPluginDependency + 163.ImportedFromIB2 + 164.IBPluginDependency + 164.ImportedFromIB2 + 167.IBPluginDependency + 167.ImportedFromIB2 + 168.IBPluginDependency + 168.ImportedFromIB2 + 169.IBPluginDependency + 169.ImportedFromIB2 + 171.IBPluginDependency + 171.ImportedFromIB2 + 172.IBPluginDependency + 172.ImportedFromIB2 + 173.IBPluginDependency + 173.ImportedFromIB2 + 174.IBPluginDependency + 174.ImportedFromIB2 + 184.IBPluginDependency + 184.ImportedFromIB2 + 185.IBPluginDependency + 185.ImportedFromIB2 + 187.IBPluginDependency + 187.ImportedFromIB2 + 189.IBPluginDependency + 189.ImportedFromIB2 + 19.IBPluginDependency + 19.ImportedFromIB2 + 191.IBPluginDependency + 191.ImportedFromIB2 + 194.IBPluginDependency + 194.ImportedFromIB2 + 2.IBPluginDependency + 2.ImportedFromIB2 + 21.IBPluginDependency + 21.ImportedFromIB2 + 21.NSWindowTemplate.visibleAtLaunch + 21.windowTemplate.hasMinSize + 21.windowTemplate.minSize + 23.IBPluginDependency + 23.ImportedFromIB2 + 24.IBPluginDependency + 24.ImportedFromIB2 + 29.IBPluginDependency + 29.ImportedFromIB2 + 5.IBPluginDependency + 5.ImportedFromIB2 + 56.IBPluginDependency + 56.ImportedFromIB2 + 57.IBPluginDependency + 57.ImportedFromIB2 + 58.IBPluginDependency + 58.ImportedFromIB2 + 72.IBPluginDependency + 72.ImportedFromIB2 + 73.IBPluginDependency + 73.ImportedFromIB2 + 74.IBPluginDependency + 74.ImportedFromIB2 + 75.IBPluginDependency + 75.ImportedFromIB2 + 77.IBPluginDependency + 77.ImportedFromIB2 + 78.IBPluginDependency + 78.ImportedFromIB2 + 79.IBPluginDependency + 79.ImportedFromIB2 + 80.IBPluginDependency + 80.ImportedFromIB2 + 81.IBPluginDependency + 81.ImportedFromIB2 + 82.IBPluginDependency + 82.ImportedFromIB2 + 83.IBPluginDependency + 83.ImportedFromIB2 + 92.IBPluginDependency + 92.ImportedFromIB2 + + + YES + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + + + {213, 107} + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + + + + YES + + + YES + + + + + YES + + + YES + + + + 195 + + + + YES + + FirstResponder + + IBUserSource + + + + + + 0 + IBCocoaFramework + + com.apple.InterfaceBuilder.CocoaPlugin.macosx + + + + com.apple.InterfaceBuilder.CocoaPlugin.InterfaceBuilder3 + + + YES + + 3 + + YES + + YES + NSMenuCheckmark + NSMenuMixedState + + + YES + {12, 12} + {10, 2} + + + + diff --git a/FSTest2/DOCustom.h b/FSTest2/DOCustom.h deleted file mode 100644 index d4a1578..0000000 --- a/FSTest2/DOCustom.h +++ /dev/null @@ -1,14 +0,0 @@ -/* DOCustom.h Copyright (c) 1998-2009 Philippe Mougin. */ -/* This software is open source. See the license. */ - -#import - - -@interface DOCustom : NSObject -{ - NSInteger i; -} - -- (NSInteger) getValue; - -@end diff --git a/FSTest2/DOCustom.m b/FSTest2/DOCustom.m deleted file mode 100644 index d9e88b6..0000000 --- a/FSTest2/DOCustom.m +++ /dev/null @@ -1,73 +0,0 @@ - -#import -#import "DOCustom.h" - -@implementation DOCustom : NSObject - --(NSInteger)echoInt:(NSInteger)arg -{ - return arg; -} - -- (NSInteger) getValue -{ - return i; -} - -- (byref NSArray*)getNSArrayByRef -{ - return [NSArray arrayWithObjects:[NSScanner scannerWithString:@"hello"], [NSProcessInfo processInfo], nil]; -} - -- (byref NSNumber*)getNSNumberByRef -{ - return [NSNumber numberWithDouble:30]; -} - -- (byref NSString*)getNSStringByRef -{ - return @"I am an NSString passed by ref"; -} - -- (void) incr -{ - i++; -} - --(BOOL)isEqual:(id)object -{ - return [object isKindOfClass:[DOCustom class]] && i == [object getValue]; -} - --(id)perform:(SEL)selector on:(id)target with:(id)argument -{ - return [target performSelector:selector withObject:argument]; -} - --(oneway void) quit -{ - exit(0); -} - --(void) setValue:(NSInteger)value -{ - i = value; -} - -- testTimeout -{ - while(1); -} - -- (id) testStr -{ - return @"toto"; -} - --(SEL) test2 -{ - return @selector(class); -} - -@end - diff --git a/FSTest2/MainMenu.nib/classes.nib b/FSTest2/MainMenu.nib/classes.nib deleted file mode 100644 index b9b4b09..0000000 --- a/FSTest2/MainMenu.nib/classes.nib +++ /dev/null @@ -1,4 +0,0 @@ -{ - IBClasses = ({CLASS = FirstResponder; LANGUAGE = ObjC; SUPERCLASS = NSObject; }); - IBVersion = 1; -} \ No newline at end of file diff --git a/FSTest2/MainMenu.nib/info.nib b/FSTest2/MainMenu.nib/info.nib deleted file mode 100644 index 5b75dbf..0000000 --- a/FSTest2/MainMenu.nib/info.nib +++ /dev/null @@ -1,18 +0,0 @@ - - - - - IBFramework Version - 205.0 - IBUserGuides - - Window - - guideLocations - - guidesLocked - NO - - - - diff --git a/FSTest2/MainMenu.nib/objects.nib b/FSTest2/MainMenu.nib/objects.nib deleted file mode 100644 index a68caa7..0000000 Binary files a/FSTest2/MainMenu.nib/objects.nib and /dev/null differ diff --git a/FSTest2/main.m b/FSTest2/main.m deleted file mode 100644 index c9c440a..0000000 --- a/FSTest2/main.m +++ /dev/null @@ -1,29 +0,0 @@ -#import -#import "DOCustom.h" - -int main(int argc, const char *argv[]) -{ - NSAutoreleasePool *pool = [[NSAutoreleasePool alloc] init]; - NSString *o1 = @"hello"; - DOCustom *o2 = [[DOCustom alloc] init]; - NSConnection *connection1 = [[NSConnection alloc] init]; - NSConnection *connection2 = [[NSConnection alloc] init]; - - [connection1 setRootObject:o1]; - if ([connection1 registerName:@"FSTest2_o1"] == NO) - { - [connection1 release]; - NSLog(@"FSTest2 error: unable to register the object"); - } - - [connection2 setRootObject:o2]; - if ([connection2 registerName:@"FSTest2_o2"] == NO) - { - [connection2 release]; - NSLog(@"FSTest2 error: unable to register the object"); - } - - [pool release]; - - return NSApplicationMain(argc, argv); -} diff --git a/FScript.xcodeproj/project.pbxproj b/FScript.xcodeproj/project.pbxproj index 5b48fc0..c2f9770 100644 --- a/FScript.xcodeproj/project.pbxproj +++ b/FScript.xcodeproj/project.pbxproj @@ -7,12 +7,70 @@ objects = { /* Begin PBXBuildFile section */ - 8F0B64C905C5370D0099180D /* FSConsole.nib in Resources */ = {isa = PBXBuildFile; fileRef = 8F0B64C805C5370D0099180D /* FSConsole.nib */; }; - 8F0B64CA05C5370D0099180D /* FSConsole.nib in Resources */ = {isa = PBXBuildFile; fileRef = 8F0B64C805C5370D0099180D /* FSConsole.nib */; }; - 8F0B64CC05C5370E0099180D /* FSConsole.nib in Resources */ = {isa = PBXBuildFile; fileRef = 8F0B64C805C5370D0099180D /* FSConsole.nib */; }; - 8F0B665005C557A40099180D /* FScriptPreferences.nib in Resources */ = {isa = PBXBuildFile; fileRef = 8F0B664F05C557A40099180D /* FScriptPreferences.nib */; }; - 8F0B665105C557A40099180D /* FScriptPreferences.nib in Resources */ = {isa = PBXBuildFile; fileRef = 8F0B664F05C557A40099180D /* FScriptPreferences.nib */; }; - 8F0B665305C557A40099180D /* FScriptPreferences.nib in Resources */ = {isa = PBXBuildFile; fileRef = 8F0B664F05C557A40099180D /* FScriptPreferences.nib */; }; + 0B7388FC1B397B90005BD678 /* FScriptAppPreference.xib in Resources */ = {isa = PBXBuildFile; fileRef = 0B7388FB1B397B90005BD678 /* FScriptAppPreference.xib */; }; + 0B7388FD1B397B90005BD678 /* FScriptAppPreference.xib in Resources */ = {isa = PBXBuildFile; fileRef = 0B7388FB1B397B90005BD678 /* FScriptAppPreference.xib */; }; + 0B7388FE1B397B90005BD678 /* FScriptAppPreference.xib in Resources */ = {isa = PBXBuildFile; fileRef = 0B7388FB1B397B90005BD678 /* FScriptAppPreference.xib */; }; + 0B7388FF1B397B90005BD678 /* FScriptAppPreference.xib in Resources */ = {isa = PBXBuildFile; fileRef = 0B7388FB1B397B90005BD678 /* FScriptAppPreference.xib */; }; + 0B7389021B397C4F005BD678 /* fs.xib in Resources */ = {isa = PBXBuildFile; fileRef = 0B7389001B397C4F005BD678 /* fs.xib */; }; + 0B7389031B397C4F005BD678 /* fs.xib in Resources */ = {isa = PBXBuildFile; fileRef = 0B7389001B397C4F005BD678 /* fs.xib */; }; + 0B7389041B397C4F005BD678 /* fs.xib in Resources */ = {isa = PBXBuildFile; fileRef = 0B7389001B397C4F005BD678 /* fs.xib */; }; + 0B7389051B397C4F005BD678 /* fs.xib in Resources */ = {isa = PBXBuildFile; fileRef = 0B7389001B397C4F005BD678 /* fs.xib */; }; + 0B7389071B397CD5005BD678 /* blockInspector.xib in Resources */ = {isa = PBXBuildFile; fileRef = 0B7389061B397CD5005BD678 /* blockInspector.xib */; }; + 0B7389081B397CD5005BD678 /* blockInspector.xib in Resources */ = {isa = PBXBuildFile; fileRef = 0B7389061B397CD5005BD678 /* blockInspector.xib */; }; + 0B7389091B397CD5005BD678 /* blockInspector.xib in Resources */ = {isa = PBXBuildFile; fileRef = 0B7389061B397CD5005BD678 /* blockInspector.xib */; }; + 0B73890A1B397CD5005BD678 /* blockInspector.xib in Resources */ = {isa = PBXBuildFile; fileRef = 0B7389061B397CD5005BD678 /* blockInspector.xib */; }; + 0B73890B1B397CD5005BD678 /* blockInspector.xib in Resources */ = {isa = PBXBuildFile; fileRef = 0B7389061B397CD5005BD678 /* blockInspector.xib */; }; + 0B73890C1B397CD5005BD678 /* blockInspector.xib in Resources */ = {isa = PBXBuildFile; fileRef = 0B7389061B397CD5005BD678 /* blockInspector.xib */; }; + 0B73890D1B397CD5005BD678 /* blockInspector.xib in Resources */ = {isa = PBXBuildFile; fileRef = 0B7389061B397CD5005BD678 /* blockInspector.xib */; }; + 0B73890E1B397CD5005BD678 /* blockInspector.xib in Resources */ = {isa = PBXBuildFile; fileRef = 0B7389061B397CD5005BD678 /* blockInspector.xib */; }; + 0B7389101B397CE6005BD678 /* ArrayTableView.xib in Resources */ = {isa = PBXBuildFile; fileRef = 0B73890F1B397CE6005BD678 /* ArrayTableView.xib */; }; + 0B7389111B397CE6005BD678 /* ArrayTableView.xib in Resources */ = {isa = PBXBuildFile; fileRef = 0B73890F1B397CE6005BD678 /* ArrayTableView.xib */; }; + 0B7389121B397CE6005BD678 /* ArrayTableView.xib in Resources */ = {isa = PBXBuildFile; fileRef = 0B73890F1B397CE6005BD678 /* ArrayTableView.xib */; }; + 0B7389131B397CE6005BD678 /* ArrayTableView.xib in Resources */ = {isa = PBXBuildFile; fileRef = 0B73890F1B397CE6005BD678 /* ArrayTableView.xib */; }; + 0B7389141B397CE6005BD678 /* ArrayTableView.xib in Resources */ = {isa = PBXBuildFile; fileRef = 0B73890F1B397CE6005BD678 /* ArrayTableView.xib */; }; + 0B7389151B397CE6005BD678 /* ArrayTableView.xib in Resources */ = {isa = PBXBuildFile; fileRef = 0B73890F1B397CE6005BD678 /* ArrayTableView.xib */; }; + 0B7389161B397CE6005BD678 /* ArrayTableView.xib in Resources */ = {isa = PBXBuildFile; fileRef = 0B73890F1B397CE6005BD678 /* ArrayTableView.xib */; }; + 0B7389171B397CE6005BD678 /* ArrayTableView.xib in Resources */ = {isa = PBXBuildFile; fileRef = 0B73890F1B397CE6005BD678 /* ArrayTableView.xib */; }; + 0B7389191B397D0A005BD678 /* FSAttributedStringInspector.xib in Resources */ = {isa = PBXBuildFile; fileRef = 0B7389181B397D0A005BD678 /* FSAttributedStringInspector.xib */; }; + 0B73891A1B397D0A005BD678 /* FSAttributedStringInspector.xib in Resources */ = {isa = PBXBuildFile; fileRef = 0B7389181B397D0A005BD678 /* FSAttributedStringInspector.xib */; }; + 0B73891B1B397D0A005BD678 /* FSAttributedStringInspector.xib in Resources */ = {isa = PBXBuildFile; fileRef = 0B7389181B397D0A005BD678 /* FSAttributedStringInspector.xib */; }; + 0B73891C1B397D0A005BD678 /* FSAttributedStringInspector.xib in Resources */ = {isa = PBXBuildFile; fileRef = 0B7389181B397D0A005BD678 /* FSAttributedStringInspector.xib */; }; + 0B73891D1B397D0A005BD678 /* FSAttributedStringInspector.xib in Resources */ = {isa = PBXBuildFile; fileRef = 0B7389181B397D0A005BD678 /* FSAttributedStringInspector.xib */; }; + 0B73891E1B397D0A005BD678 /* FSAttributedStringInspector.xib in Resources */ = {isa = PBXBuildFile; fileRef = 0B7389181B397D0A005BD678 /* FSAttributedStringInspector.xib */; }; + 0B73891F1B397D0A005BD678 /* FSAttributedStringInspector.xib in Resources */ = {isa = PBXBuildFile; fileRef = 0B7389181B397D0A005BD678 /* FSAttributedStringInspector.xib */; }; + 0B7389201B397D0A005BD678 /* FSAttributedStringInspector.xib in Resources */ = {isa = PBXBuildFile; fileRef = 0B7389181B397D0A005BD678 /* FSAttributedStringInspector.xib */; }; + 0B7389221B397D1E005BD678 /* FSCollectionInspector.xib in Resources */ = {isa = PBXBuildFile; fileRef = 0B7389211B397D1E005BD678 /* FSCollectionInspector.xib */; }; + 0B7389231B397D1E005BD678 /* FSCollectionInspector.xib in Resources */ = {isa = PBXBuildFile; fileRef = 0B7389211B397D1E005BD678 /* FSCollectionInspector.xib */; }; + 0B7389241B397D1E005BD678 /* FSCollectionInspector.xib in Resources */ = {isa = PBXBuildFile; fileRef = 0B7389211B397D1E005BD678 /* FSCollectionInspector.xib */; }; + 0B7389251B397D1E005BD678 /* FSCollectionInspector.xib in Resources */ = {isa = PBXBuildFile; fileRef = 0B7389211B397D1E005BD678 /* FSCollectionInspector.xib */; }; + 0B7389261B397D1E005BD678 /* FSCollectionInspector.xib in Resources */ = {isa = PBXBuildFile; fileRef = 0B7389211B397D1E005BD678 /* FSCollectionInspector.xib */; }; + 0B7389271B397D1E005BD678 /* FSCollectionInspector.xib in Resources */ = {isa = PBXBuildFile; fileRef = 0B7389211B397D1E005BD678 /* FSCollectionInspector.xib */; }; + 0B7389281B397D1E005BD678 /* FSCollectionInspector.xib in Resources */ = {isa = PBXBuildFile; fileRef = 0B7389211B397D1E005BD678 /* FSCollectionInspector.xib */; }; + 0B7389291B397D1E005BD678 /* FSCollectionInspector.xib in Resources */ = {isa = PBXBuildFile; fileRef = 0B7389211B397D1E005BD678 /* FSCollectionInspector.xib */; }; + 0B73892B1B397D2E005BD678 /* FSCollectionInspectorView.xib in Resources */ = {isa = PBXBuildFile; fileRef = 0B73892A1B397D2E005BD678 /* FSCollectionInspectorView.xib */; }; + 0B73892C1B397D2E005BD678 /* FSCollectionInspectorView.xib in Resources */ = {isa = PBXBuildFile; fileRef = 0B73892A1B397D2E005BD678 /* FSCollectionInspectorView.xib */; }; + 0B73892D1B397D2E005BD678 /* FSCollectionInspectorView.xib in Resources */ = {isa = PBXBuildFile; fileRef = 0B73892A1B397D2E005BD678 /* FSCollectionInspectorView.xib */; }; + 0B73892E1B397D2E005BD678 /* FSCollectionInspectorView.xib in Resources */ = {isa = PBXBuildFile; fileRef = 0B73892A1B397D2E005BD678 /* FSCollectionInspectorView.xib */; }; + 0B73892F1B397D2E005BD678 /* FSCollectionInspectorView.xib in Resources */ = {isa = PBXBuildFile; fileRef = 0B73892A1B397D2E005BD678 /* FSCollectionInspectorView.xib */; }; + 0B7389301B397D2E005BD678 /* FSCollectionInspectorView.xib in Resources */ = {isa = PBXBuildFile; fileRef = 0B73892A1B397D2E005BD678 /* FSCollectionInspectorView.xib */; }; + 0B7389311B397D2E005BD678 /* FSCollectionInspectorView.xib in Resources */ = {isa = PBXBuildFile; fileRef = 0B73892A1B397D2E005BD678 /* FSCollectionInspectorView.xib */; }; + 0B7389321B397D2E005BD678 /* FSCollectionInspectorView.xib in Resources */ = {isa = PBXBuildFile; fileRef = 0B73892A1B397D2E005BD678 /* FSCollectionInspectorView.xib */; }; + 0B7389341B397D43005BD678 /* FSImageInspector.xib in Resources */ = {isa = PBXBuildFile; fileRef = 0B7389331B397D43005BD678 /* FSImageInspector.xib */; }; + 0B7389351B397D43005BD678 /* FSImageInspector.xib in Resources */ = {isa = PBXBuildFile; fileRef = 0B7389331B397D43005BD678 /* FSImageInspector.xib */; }; + 0B7389361B397D43005BD678 /* FSImageInspector.xib in Resources */ = {isa = PBXBuildFile; fileRef = 0B7389331B397D43005BD678 /* FSImageInspector.xib */; }; + 0B7389371B397D43005BD678 /* FSImageInspector.xib in Resources */ = {isa = PBXBuildFile; fileRef = 0B7389331B397D43005BD678 /* FSImageInspector.xib */; }; + 0B7389381B397D43005BD678 /* FSImageInspector.xib in Resources */ = {isa = PBXBuildFile; fileRef = 0B7389331B397D43005BD678 /* FSImageInspector.xib */; }; + 0B7389391B397D43005BD678 /* FSImageInspector.xib in Resources */ = {isa = PBXBuildFile; fileRef = 0B7389331B397D43005BD678 /* FSImageInspector.xib */; }; + 0B73893A1B397D43005BD678 /* FSImageInspector.xib in Resources */ = {isa = PBXBuildFile; fileRef = 0B7389331B397D43005BD678 /* FSImageInspector.xib */; }; + 0B73893B1B397D43005BD678 /* FSImageInspector.xib in Resources */ = {isa = PBXBuildFile; fileRef = 0B7389331B397D43005BD678 /* FSImageInspector.xib */; }; + 0B73893D1B397D62005BD678 /* FSManagedObjectContextInspector.xib in Resources */ = {isa = PBXBuildFile; fileRef = 0B73893C1B397D62005BD678 /* FSManagedObjectContextInspector.xib */; }; + 0B73893E1B397D62005BD678 /* FSManagedObjectContextInspector.xib in Resources */ = {isa = PBXBuildFile; fileRef = 0B73893C1B397D62005BD678 /* FSManagedObjectContextInspector.xib */; }; + 0B73893F1B397D62005BD678 /* FSManagedObjectContextInspector.xib in Resources */ = {isa = PBXBuildFile; fileRef = 0B73893C1B397D62005BD678 /* FSManagedObjectContextInspector.xib */; }; + 0B7389401B397D62005BD678 /* FSManagedObjectContextInspector.xib in Resources */ = {isa = PBXBuildFile; fileRef = 0B73893C1B397D62005BD678 /* FSManagedObjectContextInspector.xib */; }; + 0B7389411B397D62005BD678 /* FSManagedObjectContextInspector.xib in Resources */ = {isa = PBXBuildFile; fileRef = 0B73893C1B397D62005BD678 /* FSManagedObjectContextInspector.xib */; }; + 0B7389421B397D62005BD678 /* FSManagedObjectContextInspector.xib in Resources */ = {isa = PBXBuildFile; fileRef = 0B73893C1B397D62005BD678 /* FSManagedObjectContextInspector.xib */; }; + 0B7389431B397D62005BD678 /* FSManagedObjectContextInspector.xib in Resources */ = {isa = PBXBuildFile; fileRef = 0B73893C1B397D62005BD678 /* FSManagedObjectContextInspector.xib */; }; + 0B7389441B397D62005BD678 /* FSManagedObjectContextInspector.xib in Resources */ = {isa = PBXBuildFile; fileRef = 0B73893C1B397D62005BD678 /* FSManagedObjectContextInspector.xib */; }; 8F0B66FD05C5639E0099180D /* FScriptMenuItem.h in Headers */ = {isa = PBXBuildFile; fileRef = 8F0B66FB05C5639E0099180D /* FScriptMenuItem.h */; }; 8F0B66FE05C5639E0099180D /* FScriptMenuItem.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F0B66FC05C5639E0099180D /* FScriptMenuItem.m */; }; 8F0B66FF05C5639E0099180D /* FScriptMenuItem.h in Headers */ = {isa = PBXBuildFile; fileRef = 8F0B66FB05C5639E0099180D /* FScriptMenuItem.h */; settings = {ATTRIBUTES = (Public, ); }; }; @@ -24,7 +82,7 @@ 8F0CBBEA0BDB94AD002B0AD7 /* ArrayRepEmpty.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E31A00D7DFE17BE9C1BD /* ArrayRepEmpty.m */; }; 8F0CBBEB0BDB94AD002B0AD7 /* ArrayRepId.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E31C00D7DFE17BE9C1BD /* ArrayRepId.m */; }; 8F0CBBEC0BDB94AD002B0AD7 /* FSCollectionInspector.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E31E00D7DFE17BE9C1BD /* FSCollectionInspector.m */; }; - 8F0CBBED0BDB94AD002B0AD7 /* FSObjectBrowser.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E32100D7DFE17BE9C1BD /* FSObjectBrowser.m */; }; + 8F0CBBED0BDB94AD002B0AD7 /* FSObjectBrowser.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E32100D7DFE17BE9C1BD /* FSObjectBrowser.m */; settings = {COMPILER_FLAGS = "-fobjc-arc"; }; }; 8F0CBBEE0BDB94AD002B0AD7 /* FSObjectBrowserCell.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E32300D7DFE17BE9C1BD /* FSObjectBrowserCell.m */; }; 8F0CBBEF0BDB94AD002B0AD7 /* FSBlock.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E32700D7DFE17BE9C1BD /* FSBlock.m */; }; 8F0CBBF00BDB94AD002B0AD7 /* BlockInspector.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E32900D7DFE17BE9C1BD /* BlockInspector.m */; }; @@ -102,7 +160,7 @@ 8F0CBC420BDB94AD002B0AD7 /* FSNSAttributedString.m in Sources */ = {isa = PBXBuildFile; fileRef = 8FDCCDC005C0A23000747C0A /* FSNSAttributedString.m */; }; 8F0CBC430BDB94AD002B0AD7 /* FScriptMenuItem.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F0B66FC05C5639E0099180D /* FScriptMenuItem.m */; }; 8F0CBC440BDB94AD002B0AD7 /* FSNSFont.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F658B2805C9694F0040FB24 /* FSNSFont.m */; }; - 8F0CBC450BDB94AD002B0AD7 /* FSObjectBrowserMatrix.m in Sources */ = {isa = PBXBuildFile; fileRef = 8FB5060005D53C8600153B33 /* FSObjectBrowserMatrix.m */; }; + 8F0CBC450BDB94AD002B0AD7 /* FSObjectBrowserMatrix.m in Sources */ = {isa = PBXBuildFile; fileRef = 8FB5060005D53C8600153B33 /* FSObjectBrowserMatrix.m */; settings = {COMPILER_FLAGS = "-fobjc-arc"; }; }; 8F0CBC460BDB94AD002B0AD7 /* FSSymbolTable.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F17C07E06B1309C00F07862 /* FSSymbolTable.m */; }; 8F0CBC480BDB94AD002B0AD7 /* FSObjectBrowserViewObjectInfo.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F4E294D075B8E5600F8DCDB /* FSObjectBrowserViewObjectInfo.m */; }; 8F0CBC490BDB94AD002B0AD7 /* FSCollectionInspectorView.m in Sources */ = {isa = PBXBuildFile; fileRef = 8FA8EDD307735B3B001BEC7B /* FSCollectionInspectorView.m */; }; @@ -119,26 +177,16 @@ 8F0CBC540BDB94AD002B0AD7 /* FSObjectBrowserSearchField.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F585F6F059B23F100C12B6F /* FSObjectBrowserSearchField.m */; }; 8F0CBC550BDB94AD002B0AD7 /* FSBlockCompilationResult.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F90A2F0096DB0660064F4BC /* FSBlockCompilationResult.m */; }; 8F0CBC560BDB94AD002B0AD7 /* FSReturnSignal.m in Sources */ = {isa = PBXBuildFile; fileRef = 8FD7D4A70975B377009B2685 /* FSReturnSignal.m */; }; - 8F0CBC610BDB9519002B0AD7 /* FSCollectionInspector.nib in Resources */ = {isa = PBXBuildFile; fileRef = 0CD4E31F00D7DFE17BE9C1BD /* FSCollectionInspector.nib */; }; - 8F0CBC620BDB9519002B0AD7 /* blockInspector.nib in Resources */ = {isa = PBXBuildFile; fileRef = 0CD4E32A00D7DFE17BE9C1BD /* blockInspector.nib */; }; 8F0CBC630BDB9519002B0AD7 /* FlightTutorial.txt in Resources */ = {isa = PBXBuildFile; fileRef = 0CD4E34400D7DFE17BE9C1BD /* FlightTutorial.txt */; }; 8F0CBC640BDB9519002B0AD7 /* genObjInspector.nib in Resources */ = {isa = PBXBuildFile; fileRef = 0CD4E37900D7DFE17BE9C1BD /* genObjInspector.nib */; }; 8F0CBC650BDB9519002B0AD7 /* KTest.txt in Resources */ = {isa = PBXBuildFile; fileRef = 0CD4E37D00D7DFE17BE9C1BD /* KTest.txt */; }; 8F0CBC660BDB9519002B0AD7 /* license.txt in Resources */ = {isa = PBXBuildFile; fileRef = 0CD4E37E00D7DFE17BE9C1BD /* license.txt */; }; 8F0CBC670BDB9519002B0AD7 /* fs.scriptSuite in Resources */ = {isa = PBXBuildFile; fileRef = F538EF6E0279FD3C01345511 /* fs.scriptSuite */; }; 8F0CBC680BDB9519002B0AD7 /* fs.scriptTerminology in Resources */ = {isa = PBXBuildFile; fileRef = F538EF6F0279FD3C01345511 /* fs.scriptTerminology */; }; - 8F0CBC6A0BDB9519002B0AD7 /* FSObjectBrowserButtonsInspector.nib in Resources */ = {isa = PBXBuildFile; fileRef = F5F9569002B272A30121B3BA /* FSObjectBrowserButtonsInspector.nib */; }; - 8F0CBC6B0BDB9519002B0AD7 /* FSImageInspector.nib in Resources */ = {isa = PBXBuildFile; fileRef = F54B55C3036B48690140C608 /* FSImageInspector.nib */; }; 8F0CBC6C0BDB9519002B0AD7 /* ReadMe.txt in Resources */ = {isa = PBXBuildFile; fileRef = F58090EB0375648201AED2EF /* ReadMe.txt */; }; - 8F0CBC6D0BDB9519002B0AD7 /* ArrayTableView.nib in Resources */ = {isa = PBXBuildFile; fileRef = F58090FC03756D2401AED2EF /* ArrayTableView.nib */; }; 8F0CBC6E0BDB9519002B0AD7 /* constantsDictionary in Resources */ = {isa = PBXBuildFile; fileRef = 8F92F0380463F2A400F4C61F /* constantsDictionary */; }; - 8F0CBC6F0BDB9519002B0AD7 /* FSAttributedStringInspector.nib in Resources */ = {isa = PBXBuildFile; fileRef = 8FDCCD7A05C0A0A000747C0A /* FSAttributedStringInspector.nib */; }; - 8F0CBC700BDB9519002B0AD7 /* FSConsole.nib in Resources */ = {isa = PBXBuildFile; fileRef = 8F0B64C805C5370D0099180D /* FSConsole.nib */; }; - 8F0CBC710BDB9519002B0AD7 /* FScriptPreferences.nib in Resources */ = {isa = PBXBuildFile; fileRef = 8F0B664F05C557A40099180D /* FScriptPreferences.nib */; }; 8F0CBC720BDB9519002B0AD7 /* run.tiff in Resources */ = {isa = PBXBuildFile; fileRef = 8F2D066F05CED9B9007EA81B /* run.tiff */; }; 8F0CBC730BDB9519002B0AD7 /* build.tiff in Resources */ = {isa = PBXBuildFile; fileRef = 8F56036505CF22660044FA65 /* build.tiff */; }; - 8F0CBC750BDB9519002B0AD7 /* FSCollectionInspectorView.nib in Resources */ = {isa = PBXBuildFile; fileRef = 8FA8EF9107739FD4001BEC7B /* FSCollectionInspectorView.nib */; }; - 8F0CBC770BDB9519002B0AD7 /* FSManagedObjectContextInspector.nib in Resources */ = {isa = PBXBuildFile; fileRef = 8FCA6B79078E0E4F005FC6B2 /* FSManagedObjectContextInspector.nib */; }; 8F0E3B82059F3DBB003F6CE9 /* FSNamedNumber.h in Headers */ = {isa = PBXBuildFile; fileRef = 8F0E3B7E059F3DBB003F6CE9 /* FSNamedNumber.h */; }; 8F0E3B83059F3DBB003F6CE9 /* FSNamedNumber.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F0E3B7F059F3DBB003F6CE9 /* FSNamedNumber.m */; }; 8F0E3B84059F3DBB003F6CE9 /* FSNamedNumber.h in Headers */ = {isa = PBXBuildFile; fileRef = 8F0E3B7E059F3DBB003F6CE9 /* FSNamedNumber.h */; }; @@ -154,6 +202,7 @@ 8F17C08206B1309C00F07862 /* FSSymbolTable.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F17C07E06B1309C00F07862 /* FSSymbolTable.m */; }; 8F17C08506B1309C00F07862 /* FSSymbolTable.h in Headers */ = {isa = PBXBuildFile; fileRef = 8F17C07D06B1309C00F07862 /* FSSymbolTable.h */; }; 8F17C08606B1309C00F07862 /* FSSymbolTable.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F17C07E06B1309C00F07862 /* FSSymbolTable.m */; }; + 8F18731A0B99C7AA003974F2 /* QuartzCore.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 8F1873160B99C7AA003974F2 /* QuartzCore.framework */; }; 8F2D067005CED9B9007EA81B /* run.tiff in Resources */ = {isa = PBXBuildFile; fileRef = 8F2D066F05CED9B9007EA81B /* run.tiff */; }; 8F2D067105CED9B9007EA81B /* run.tiff in Resources */ = {isa = PBXBuildFile; fileRef = 8F2D066F05CED9B9007EA81B /* run.tiff */; }; 8F2D067305CED9B9007EA81B /* run.tiff in Resources */ = {isa = PBXBuildFile; fileRef = 8F2D066F05CED9B9007EA81B /* run.tiff */; }; @@ -209,6 +258,7 @@ 8F3C139E0C65E66400948776 /* FSMethod.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F3C13990C65E66400948776 /* FSMethod.m */; }; 8F3C139F0C65E66400948776 /* FSMethod.h in Headers */ = {isa = PBXBuildFile; fileRef = 8F3C13980C65E66400948776 /* FSMethod.h */; }; 8F3C13A00C65E66400948776 /* FSMethod.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F3C13990C65E66400948776 /* FSMethod.m */; }; + 8F42D4100A0F8CC30032461E /* Cocoa.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 8F85274707F6016900E706F5 /* Cocoa.framework */; }; 8F44270D116549C700E88F21 /* FSNSMutableDictionary.h in Headers */ = {isa = PBXBuildFile; fileRef = 8F44270B116549C700E88F21 /* FSNSMutableDictionary.h */; settings = {ATTRIBUTES = (Public, ); }; }; 8F44270E116549C700E88F21 /* FSNSMutableDictionary.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F44270C116549C700E88F21 /* FSNSMutableDictionary.m */; }; 8F44270F116549C700E88F21 /* FSNSMutableDictionary.h in Headers */ = {isa = PBXBuildFile; fileRef = 8F44270B116549C700E88F21 /* FSNSMutableDictionary.h */; }; @@ -234,6 +284,7 @@ 8F4E294F075B8E5600F8DCDB /* FSObjectBrowserViewObjectInfo.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F4E294D075B8E5600F8DCDB /* FSObjectBrowserViewObjectInfo.m */; }; 8F4E2950075B8E5600F8DCDB /* FSObjectBrowserViewObjectInfo.h in Headers */ = {isa = PBXBuildFile; fileRef = 8F4E294C075B8E5600F8DCDB /* FSObjectBrowserViewObjectInfo.h */; }; 8F4E2951075B8E5600F8DCDB /* FSObjectBrowserViewObjectInfo.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F4E294D075B8E5600F8DCDB /* FSObjectBrowserViewObjectInfo.m */; }; + 8F552A7A0C00A6D4002B6067 /* CalendarStore.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 8F552A780C00A6D4002B6067 /* CalendarStore.framework */; }; 8F553BF90585222700A92293 /* FSNSValue.h in Headers */ = {isa = PBXBuildFile; fileRef = 8F553BF70585222700A92293 /* FSNSValue.h */; settings = {ATTRIBUTES = (Public, ); }; }; 8F553BFA0585222700A92293 /* FSNSValue.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F553BF80585222700A92293 /* FSNSValue.m */; }; 8F553BFB0585222700A92293 /* FSNSValue.h in Headers */ = {isa = PBXBuildFile; fileRef = 8F553BF70585222700A92293 /* FSNSValue.h */; }; @@ -243,6 +294,9 @@ 8F56036705CF22660044FA65 /* build.tiff in Resources */ = {isa = PBXBuildFile; fileRef = 8F56036505CF22660044FA65 /* build.tiff */; }; 8F56036805CF22660044FA65 /* build.tiff in Resources */ = {isa = PBXBuildFile; fileRef = 8F56036505CF22660044FA65 /* build.tiff */; }; 8F56036905CF22660044FA65 /* build.tiff in Resources */ = {isa = PBXBuildFile; fileRef = 8F56036505CF22660044FA65 /* build.tiff */; }; + 8F589B620CE38B3B00C1D756 /* AudioUnit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 8F589B600CE38B3B00C1D756 /* AudioUnit.framework */; }; + 8F589B820CE38B7100C1D756 /* Automator.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 8F589B800CE38B7100C1D756 /* Automator.framework */; }; + 8F589B9A0CE38CAB00C1D756 /* InputMethodKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 8F589B980CE38CAB00C1D756 /* InputMethodKit.framework */; }; 8F5900150D9468FC003A8B17 /* FSCNCascade.h in Headers */ = {isa = PBXBuildFile; fileRef = 8F5900130D9468FC003A8B17 /* FSCNCascade.h */; }; 8F5900160D9468FC003A8B17 /* FSCNCascade.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F5900140D9468FC003A8B17 /* FSCNCascade.m */; }; 8F5900170D9468FC003A8B17 /* FSCNCascade.h in Headers */ = {isa = PBXBuildFile; fileRef = 8F5900130D9468FC003A8B17 /* FSCNCascade.h */; }; @@ -289,8 +343,6 @@ 8F658B2E05C9694F0040FB24 /* FSNSFont.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F658B2805C9694F0040FB24 /* FSNSFont.m */; }; 8F658B2F05C9694F0040FB24 /* FSNSFont.h in Headers */ = {isa = PBXBuildFile; fileRef = 8F658B2705C9694F0040FB24 /* FSNSFont.h */; settings = {ATTRIBUTES = (Public, ); }; }; 8F658B3005C9694F0040FB24 /* FSNSFont.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F658B2805C9694F0040FB24 /* FSNSFont.m */; }; - 8F6597B60C37F061006CDCA0 /* FScriptMenuItem.png in Resources */ = {isa = PBXBuildFile; fileRef = 8F6597B50C37F061006CDCA0 /* FScriptMenuItem.png */; }; - 8F6598150C381250006CDCA0 /* FSInterpreterView.classdescription in Resources */ = {isa = PBXBuildFile; fileRef = 8F6597D90C381103006CDCA0 /* FSInterpreterView.classdescription */; }; 8F6631CC0C4A26E600FA798A /* FSQTMovie.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F573F90056B780500F2796A /* FSQTMovie.m */; }; 8F6631CD0C4A26E700FA798A /* FSQTMovie.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F573F90056B780500F2796A /* FSQTMovie.m */; }; 8F6631CE0C4A26F100FA798A /* FSMovieInspector.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F573F7E056B754B00F2796A /* FSMovieInspector.m */; }; @@ -306,7 +358,6 @@ 8F67A7A10C497C4600A707A7 /* FSConstantsDictionaryGenerator.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F92F0350463F03300F4C61F /* FSConstantsDictionaryGenerator.m */; }; 8F6937F206B6E03D00AEAC6A /* TestFS.h in Headers */ = {isa = PBXBuildFile; fileRef = 8FBB10A4044E28FD00181279 /* TestFS.h */; }; 8F6B34B206E27E4600B3943E /* TestFS.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E3A000D7DFE17BE9C1BD /* TestFS.m */; }; - 8F6DA5E0055FC6980050409A /* DOCustom.h in Headers */ = {isa = PBXBuildFile; fileRef = F5F1AAB7022E9E90011160FE /* DOCustom.h */; }; 8F6DA5E1055FC6980050409A /* FSAirplane.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E30F00D7DFE17BE9C1BD /* FSAirplane.h */; }; 8F6DA5E3055FC6980050409A /* ArrayPrivate.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E31300D7DFE17BE9C1BD /* ArrayPrivate.h */; }; 8F6DA5E4055FC6980050409A /* ArrayRep.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E31400D7DFE17BE9C1BD /* ArrayRep.h */; }; @@ -397,26 +448,18 @@ 8F6DA649055FC6980050409A /* ArrayRepBoolean.h in Headers */ = {isa = PBXBuildFile; fileRef = F5D4BE29038511FF01461810 /* ArrayRepBoolean.h */; }; 8F6DA64A055FC6980050409A /* FSArrayEnumerator.h in Headers */ = {isa = PBXBuildFile; fileRef = 8FA3AE55044D4D6700CF7A3A /* FSArrayEnumerator.h */; }; 8F6DA64B055FC6980050409A /* FSNSMutableArray.h in Headers */ = {isa = PBXBuildFile; fileRef = 8F66F85404666E8100AFC811 /* FSNSMutableArray.h */; }; - 8F6DA64F055FC6980050409A /* MainMenu.nib in Resources */ = {isa = PBXBuildFile; fileRef = F5F1AABA022E9E90011160FE /* MainMenu.nib */; }; - 8F6DA650055FC6980050409A /* FSCollectionInspector.nib in Resources */ = {isa = PBXBuildFile; fileRef = 0CD4E31F00D7DFE17BE9C1BD /* FSCollectionInspector.nib */; }; - 8F6DA651055FC6980050409A /* blockInspector.nib in Resources */ = {isa = PBXBuildFile; fileRef = 0CD4E32A00D7DFE17BE9C1BD /* blockInspector.nib */; }; 8F6DA653055FC6980050409A /* FlightTutorial.txt in Resources */ = {isa = PBXBuildFile; fileRef = 0CD4E34400D7DFE17BE9C1BD /* FlightTutorial.txt */; }; 8F6DA655055FC6980050409A /* KTest.txt in Resources */ = {isa = PBXBuildFile; fileRef = 0CD4E37D00D7DFE17BE9C1BD /* KTest.txt */; }; 8F6DA656055FC6980050409A /* license.txt in Resources */ = {isa = PBXBuildFile; fileRef = 0CD4E37E00D7DFE17BE9C1BD /* license.txt */; }; 8F6DA657055FC6980050409A /* genObjInspector.nib in Resources */ = {isa = PBXBuildFile; fileRef = 0CD4E37900D7DFE17BE9C1BD /* genObjInspector.nib */; }; 8F6DA658055FC6980050409A /* fs.scriptSuite in Resources */ = {isa = PBXBuildFile; fileRef = F538EF6E0279FD3C01345511 /* fs.scriptSuite */; }; 8F6DA659055FC6980050409A /* fs.scriptTerminology in Resources */ = {isa = PBXBuildFile; fileRef = F538EF6F0279FD3C01345511 /* fs.scriptTerminology */; }; - 8F6DA65B055FC6980050409A /* FSObjectBrowserButtonsInspector.nib in Resources */ = {isa = PBXBuildFile; fileRef = F5F9569002B272A30121B3BA /* FSObjectBrowserButtonsInspector.nib */; }; - 8F6DA65D055FC6980050409A /* FSImageInspector.nib in Resources */ = {isa = PBXBuildFile; fileRef = F54B55C3036B48690140C608 /* FSImageInspector.nib */; }; - 8F6DA65F055FC6980050409A /* ArrayTableView.nib in Resources */ = {isa = PBXBuildFile; fileRef = F58090FC03756D2401AED2EF /* ArrayTableView.nib */; }; - 8F6DA661055FC6980050409A /* DOCustom.m in Sources */ = {isa = PBXBuildFile; fileRef = F5F1AAB8022E9E90011160FE /* DOCustom.m */; }; - 8F6DA662055FC6980050409A /* main.m in Sources */ = {isa = PBXBuildFile; fileRef = F5F1AAB9022E9E90011160FE /* main.m */; }; 8F6DA663055FC6980050409A /* FSAirplane.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E31000D7DFE17BE9C1BD /* FSAirplane.m */; }; 8F6DA665055FC6980050409A /* ArrayRepDouble.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E31800D7DFE17BE9C1BD /* ArrayRepDouble.m */; }; 8F6DA666055FC6980050409A /* ArrayRepEmpty.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E31A00D7DFE17BE9C1BD /* ArrayRepEmpty.m */; }; 8F6DA667055FC6980050409A /* ArrayRepId.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E31C00D7DFE17BE9C1BD /* ArrayRepId.m */; }; 8F6DA668055FC6980050409A /* FSCollectionInspector.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E31E00D7DFE17BE9C1BD /* FSCollectionInspector.m */; }; - 8F6DA669055FC6980050409A /* FSObjectBrowser.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E32100D7DFE17BE9C1BD /* FSObjectBrowser.m */; }; + 8F6DA669055FC6980050409A /* FSObjectBrowser.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E32100D7DFE17BE9C1BD /* FSObjectBrowser.m */; settings = {COMPILER_FLAGS = "-fobjc-arc"; }; }; 8F6DA66A055FC6980050409A /* FSObjectBrowserArgumentPanel.m in Sources */ = {isa = PBXBuildFile; fileRef = F5FA8A6D0215D44C01AFEEFD /* FSObjectBrowserArgumentPanel.m */; }; 8F6DA66B055FC6980050409A /* FSObjectBrowserCell.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E32300D7DFE17BE9C1BD /* FSObjectBrowserCell.m */; }; 8F6DA66C055FC6980050409A /* FSObjectBrowserView.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E32500D7DFE17BE9C1BD /* FSObjectBrowserView.m */; }; @@ -486,6 +529,11 @@ 8F6DA6BD055FC6980050409A /* ArrayRepBoolean.m in Sources */ = {isa = PBXBuildFile; fileRef = F5D4BE2A038511FF01461810 /* ArrayRepBoolean.m */; }; 8F6DA6BE055FC6980050409A /* FSArrayEnumerator.m in Sources */ = {isa = PBXBuildFile; fileRef = 8FA3AE56044D4D6700CF7A3A /* FSArrayEnumerator.m */; }; 8F6DA6BF055FC6980050409A /* FSNSMutableArray.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F66F85504666E8100AFC811 /* FSNSMutableArray.m */; }; + 8F6DA6C4055FC6980050409A /* JavaVM.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 0CD4E46900D7E1F17BE9C1BD /* JavaVM.framework */; }; + 8F6DA6C5055FC6980050409A /* ExceptionHandling.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = F51B24640271980D01DB4759 /* ExceptionHandling.framework */; }; + 8F6DA6C8055FC6980050409A /* DiscRecording.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = F55D42D903583F2601B9E934 /* DiscRecording.framework */; }; + 8F6DA6CA055FC6980050409A /* IOBluetooth.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = F55D431803583F8501B9E934 /* IOBluetooth.framework */; }; + 8F6DA6CB055FC6980050409A /* IOBluetoothUI.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = F55D431903583F8501B9E934 /* IOBluetoothUI.framework */; }; 8F6DA6DA055FC6C80050409A /* DOCustom.h in Headers */ = {isa = PBXBuildFile; fileRef = F5F1AAAE022E9E4F011160FE /* DOCustom.h */; }; 8F6DA6DB055FC6C80050409A /* FSNSObjectPrivate.h in Headers */ = {isa = PBXBuildFile; fileRef = 8F63CC08044B95DB00B84480 /* FSNSObjectPrivate.h */; }; 8F6DA6DC055FC6C80050409A /* TestFS.h in Headers */ = {isa = PBXBuildFile; fileRef = 8FBB10A4044E28FD00181279 /* TestFS.h */; }; @@ -583,27 +631,20 @@ 8F6DA85F055FC70C0050409A /* FSNSMutableArray.h in Headers */ = {isa = PBXBuildFile; fileRef = 8F66F85404666E8100AFC811 /* FSNSMutableArray.h */; }; 8F6DA861055FC70C0050409A /* FSObjectBrowserButtonsInspector.h in Headers */ = {isa = PBXBuildFile; fileRef = F5F9569602B272FB0121B3BA /* FSObjectBrowserButtonsInspector.h */; }; 8F6DA862055FC70C0050409A /* ArrayRepBoolean.h in Headers */ = {isa = PBXBuildFile; fileRef = F5D4BE29038511FF01461810 /* ArrayRepBoolean.h */; }; - 8F6DA865055FC70C0050409A /* FSCollectionInspector.nib in Resources */ = {isa = PBXBuildFile; fileRef = 0CD4E31F00D7DFE17BE9C1BD /* FSCollectionInspector.nib */; }; - 8F6DA866055FC70C0050409A /* blockInspector.nib in Resources */ = {isa = PBXBuildFile; fileRef = 0CD4E32A00D7DFE17BE9C1BD /* blockInspector.nib */; }; 8F6DA869055FC70C0050409A /* FlightTutorial.txt in Resources */ = {isa = PBXBuildFile; fileRef = 0CD4E34400D7DFE17BE9C1BD /* FlightTutorial.txt */; }; 8F6DA86A055FC70C0050409A /* genObjInspector.nib in Resources */ = {isa = PBXBuildFile; fileRef = 0CD4E37900D7DFE17BE9C1BD /* genObjInspector.nib */; }; 8F6DA86B055FC70C0050409A /* KTest.txt in Resources */ = {isa = PBXBuildFile; fileRef = 0CD4E37D00D7DFE17BE9C1BD /* KTest.txt */; }; 8F6DA86C055FC70C0050409A /* license.txt in Resources */ = {isa = PBXBuildFile; fileRef = 0CD4E37E00D7DFE17BE9C1BD /* license.txt */; }; 8F6DA86D055FC70C0050409A /* fs.icns in Resources */ = {isa = PBXBuildFile; fileRef = F5F1A9F7022E9A96011160FE /* fs.icns */; }; - 8F6DA86E055FC70C0050409A /* FScriptAppPreference.nib in Resources */ = {isa = PBXBuildFile; fileRef = F5F1A9FB022E9A96011160FE /* FScriptAppPreference.nib */; }; - 8F6DA870055FC70C0050409A /* fs.nib in Resources */ = {isa = PBXBuildFile; fileRef = F598CDB7025CF7E5011B2E41 /* fs.nib */; }; 8F6DA871055FC70C0050409A /* fs.scriptSuite in Resources */ = {isa = PBXBuildFile; fileRef = F538EF6E0279FD3C01345511 /* fs.scriptSuite */; }; 8F6DA872055FC70C0050409A /* fs.scriptTerminology in Resources */ = {isa = PBXBuildFile; fileRef = F538EF6F0279FD3C01345511 /* fs.scriptTerminology */; }; - 8F6DA874055FC70C0050409A /* FSObjectBrowserButtonsInspector.nib in Resources */ = {isa = PBXBuildFile; fileRef = F5F9569002B272A30121B3BA /* FSObjectBrowserButtonsInspector.nib */; }; - 8F6DA876055FC70C0050409A /* FSImageInspector.nib in Resources */ = {isa = PBXBuildFile; fileRef = F54B55C3036B48690140C608 /* FSImageInspector.nib */; }; - 8F6DA878055FC70C0050409A /* ArrayTableView.nib in Resources */ = {isa = PBXBuildFile; fileRef = F58090FC03756D2401AED2EF /* ArrayTableView.nib */; }; 8F6DA879055FC70C0050409A /* constantsDictionary in Resources */ = {isa = PBXBuildFile; fileRef = 8F92F0380463F2A400F4C61F /* constantsDictionary */; }; 8F6DA87B055FC70C0050409A /* FSAirplane.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E31000D7DFE17BE9C1BD /* FSAirplane.m */; }; 8F6DA87D055FC70C0050409A /* ArrayRepDouble.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E31800D7DFE17BE9C1BD /* ArrayRepDouble.m */; }; 8F6DA87E055FC70C0050409A /* ArrayRepEmpty.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E31A00D7DFE17BE9C1BD /* ArrayRepEmpty.m */; }; 8F6DA87F055FC70C0050409A /* ArrayRepId.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E31C00D7DFE17BE9C1BD /* ArrayRepId.m */; }; 8F6DA880055FC70C0050409A /* FSCollectionInspector.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E31E00D7DFE17BE9C1BD /* FSCollectionInspector.m */; }; - 8F6DA881055FC70C0050409A /* FSObjectBrowser.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E32100D7DFE17BE9C1BD /* FSObjectBrowser.m */; }; + 8F6DA881055FC70C0050409A /* FSObjectBrowser.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E32100D7DFE17BE9C1BD /* FSObjectBrowser.m */; settings = {COMPILER_FLAGS = "-fobjc-arc"; }; }; 8F6DA882055FC70C0050409A /* FSObjectBrowserArgumentPanel.m in Sources */ = {isa = PBXBuildFile; fileRef = F5FA8A6D0215D44C01AFEEFD /* FSObjectBrowserArgumentPanel.m */; }; 8F6DA883055FC70C0050409A /* FSObjectBrowserCell.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E32300D7DFE17BE9C1BD /* FSObjectBrowserCell.m */; }; 8F6DA884055FC70C0050409A /* FSObjectBrowserView.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E32500D7DFE17BE9C1BD /* FSObjectBrowserView.m */; }; @@ -766,25 +807,20 @@ 8F6DA95E055FC71F0050409A /* FSArrayEnumerator.h in Headers */ = {isa = PBXBuildFile; fileRef = 8FA3AE55044D4D6700CF7A3A /* FSArrayEnumerator.h */; }; 8F6DA95F055FC71F0050409A /* TestFS.h in Headers */ = {isa = PBXBuildFile; fileRef = 8FBB10A4044E28FD00181279 /* TestFS.h */; }; 8F6DA960055FC71F0050409A /* FSNSMutableArray.h in Headers */ = {isa = PBXBuildFile; fileRef = 8F66F85404666E8100AFC811 /* FSNSMutableArray.h */; settings = {ATTRIBUTES = (Public, ); }; }; - 8F6DA964055FC71F0050409A /* FSCollectionInspector.nib in Resources */ = {isa = PBXBuildFile; fileRef = 0CD4E31F00D7DFE17BE9C1BD /* FSCollectionInspector.nib */; }; - 8F6DA965055FC71F0050409A /* blockInspector.nib in Resources */ = {isa = PBXBuildFile; fileRef = 0CD4E32A00D7DFE17BE9C1BD /* blockInspector.nib */; }; 8F6DA968055FC71F0050409A /* FlightTutorial.txt in Resources */ = {isa = PBXBuildFile; fileRef = 0CD4E34400D7DFE17BE9C1BD /* FlightTutorial.txt */; }; 8F6DA969055FC71F0050409A /* genObjInspector.nib in Resources */ = {isa = PBXBuildFile; fileRef = 0CD4E37900D7DFE17BE9C1BD /* genObjInspector.nib */; }; 8F6DA96A055FC71F0050409A /* KTest.txt in Resources */ = {isa = PBXBuildFile; fileRef = 0CD4E37D00D7DFE17BE9C1BD /* KTest.txt */; }; 8F6DA96B055FC71F0050409A /* license.txt in Resources */ = {isa = PBXBuildFile; fileRef = 0CD4E37E00D7DFE17BE9C1BD /* license.txt */; }; 8F6DA96D055FC71F0050409A /* fs.scriptSuite in Resources */ = {isa = PBXBuildFile; fileRef = F538EF6E0279FD3C01345511 /* fs.scriptSuite */; }; 8F6DA96E055FC71F0050409A /* fs.scriptTerminology in Resources */ = {isa = PBXBuildFile; fileRef = F538EF6F0279FD3C01345511 /* fs.scriptTerminology */; }; - 8F6DA970055FC71F0050409A /* FSObjectBrowserButtonsInspector.nib in Resources */ = {isa = PBXBuildFile; fileRef = F5F9569002B272A30121B3BA /* FSObjectBrowserButtonsInspector.nib */; }; - 8F6DA972055FC71F0050409A /* FSImageInspector.nib in Resources */ = {isa = PBXBuildFile; fileRef = F54B55C3036B48690140C608 /* FSImageInspector.nib */; }; 8F6DA973055FC71F0050409A /* ReadMe.txt in Resources */ = {isa = PBXBuildFile; fileRef = F58090EB0375648201AED2EF /* ReadMe.txt */; }; - 8F6DA974055FC71F0050409A /* ArrayTableView.nib in Resources */ = {isa = PBXBuildFile; fileRef = F58090FC03756D2401AED2EF /* ArrayTableView.nib */; }; 8F6DA975055FC71F0050409A /* constantsDictionary in Resources */ = {isa = PBXBuildFile; fileRef = 8F92F0380463F2A400F4C61F /* constantsDictionary */; }; 8F6DA977055FC71F0050409A /* FSAirplane.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E31000D7DFE17BE9C1BD /* FSAirplane.m */; }; 8F6DA979055FC71F0050409A /* ArrayRepDouble.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E31800D7DFE17BE9C1BD /* ArrayRepDouble.m */; }; 8F6DA97A055FC71F0050409A /* ArrayRepEmpty.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E31A00D7DFE17BE9C1BD /* ArrayRepEmpty.m */; }; 8F6DA97B055FC71F0050409A /* ArrayRepId.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E31C00D7DFE17BE9C1BD /* ArrayRepId.m */; }; 8F6DA97C055FC71F0050409A /* FSCollectionInspector.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E31E00D7DFE17BE9C1BD /* FSCollectionInspector.m */; }; - 8F6DA97D055FC71F0050409A /* FSObjectBrowser.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E32100D7DFE17BE9C1BD /* FSObjectBrowser.m */; }; + 8F6DA97D055FC71F0050409A /* FSObjectBrowser.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E32100D7DFE17BE9C1BD /* FSObjectBrowser.m */; settings = {COMPILER_FLAGS = "-fobjc-arc"; }; }; 8F6DA97E055FC71F0050409A /* FSObjectBrowserCell.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E32300D7DFE17BE9C1BD /* FSObjectBrowserCell.m */; }; 8F6DA97F055FC71F0050409A /* FSBlock.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E32700D7DFE17BE9C1BD /* FSBlock.m */; }; 8F6DA980055FC71F0050409A /* BlockInspector.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E32900D7DFE17BE9C1BD /* BlockInspector.m */; }; @@ -853,6 +889,7 @@ 8F6DA9D0055FC71F0050409A /* ArrayRepBoolean.m in Sources */ = {isa = PBXBuildFile; fileRef = F5D4BE2A038511FF01461810 /* ArrayRepBoolean.m */; }; 8F6DA9D1055FC71F0050409A /* FSArrayEnumerator.m in Sources */ = {isa = PBXBuildFile; fileRef = 8FA3AE56044D4D6700CF7A3A /* FSArrayEnumerator.m */; }; 8F6DA9D2055FC71F0050409A /* FSNSMutableArray.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F66F85504666E8100AFC811 /* FSNSMutableArray.m */; }; + 8F6DA9D9055FC71F0050409A /* ExceptionHandling.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = F51B24640271980D01DB4759 /* ExceptionHandling.framework */; }; 8F71F72405C43A7D00C34794 /* FSInterpreterViewPrivate.h in Headers */ = {isa = PBXBuildFile; fileRef = 8F71F72205C43A7D00C34794 /* FSInterpreterViewPrivate.h */; }; 8F71F72505C43A7D00C34794 /* FSInterpreterViewPrivate.h in Headers */ = {isa = PBXBuildFile; fileRef = 8F71F72205C43A7D00C34794 /* FSInterpreterViewPrivate.h */; }; 8F71F72605C43A7D00C34794 /* FSInterpreterViewPrivate.h in Headers */ = {isa = PBXBuildFile; fileRef = 8F71F72205C43A7D00C34794 /* FSInterpreterViewPrivate.h */; }; @@ -902,6 +939,9 @@ 8F8112F60D85E58200CB3407 /* FSCNCategory.h in Headers */ = {isa = PBXBuildFile; fileRef = 8F8112F00D85E58200CB3407 /* FSCNCategory.h */; }; 8F8112F70D85E58200CB3407 /* FSCNCategory.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F8112F10D85E58200CB3407 /* FSCNCategory.m */; }; 8F8112F80D85E58200CB3407 /* FSCNCategory.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F8112F10D85E58200CB3407 /* FSCNCategory.m */; }; + 8F85274B07F6016900E706F5 /* Cocoa.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 8F85274707F6016900E706F5 /* Cocoa.framework */; }; + 8F8607E50CF9827600D2DC99 /* ScriptingBridge.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 8F6584F80C484A5100C8A3FC /* ScriptingBridge.framework */; }; + 8F86086C0CF9F0AB00D2DC99 /* ScriptingBridge.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 8F6584F80C484A5100C8A3FC /* ScriptingBridge.framework */; }; 8F86923A07F19BA8000D20A4 /* FSObjectBrowserNamedObjectWrapper.h in Headers */ = {isa = PBXBuildFile; fileRef = 8F86923607F19BA8000D20A4 /* FSObjectBrowserNamedObjectWrapper.h */; }; 8F86923B07F19BA8000D20A4 /* FSObjectBrowserNamedObjectWrapper.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F86923707F19BA8000D20A4 /* FSObjectBrowserNamedObjectWrapper.m */; }; 8F86923C07F19BA8000D20A4 /* FSObjectBrowserNamedObjectWrapper.h in Headers */ = {isa = PBXBuildFile; fileRef = 8F86923607F19BA8000D20A4 /* FSObjectBrowserNamedObjectWrapper.h */; }; @@ -946,22 +986,16 @@ 8F90A2F6096DB0660064F4BC /* FSBlockCompilationResult.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F90A2F0096DB0660064F4BC /* FSBlockCompilationResult.m */; }; 8F90A2F7096DB0660064F4BC /* FSBlockCompilationResult.h in Headers */ = {isa = PBXBuildFile; fileRef = 8F90A2EF096DB0660064F4BC /* FSBlockCompilationResult.h */; }; 8F90A2F8096DB0660064F4BC /* FSBlockCompilationResult.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F90A2F0096DB0660064F4BC /* FSBlockCompilationResult.m */; }; - 8F913FD20BDB92EE001685EA /* FScriptIBPlugin.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F913FD00BDB92EE001685EA /* FScriptIBPlugin.m */; }; - 8F913FDC0BDB92FC001685EA /* FScriptIBPluginInspector.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F913FD50BDB92FC001685EA /* FScriptIBPluginInspector.m */; }; - 8F913FDF0BDB92FC001685EA /* Info.plist in Resources */ = {isa = PBXBuildFile; fileRef = 8F913FD90BDB92FC001685EA /* Info.plist */; }; - 8F913FE00BDB92FC001685EA /* version.plist in Resources */ = {isa = PBXBuildFile; fileRef = 8F913FDA0BDB92FC001685EA /* version.plist */; }; 8F917E20095F5DE3000932D0 /* FSObjectBrowserSearchField.h in Headers */ = {isa = PBXBuildFile; fileRef = 8F585F6E059B23F100C12B6F /* FSObjectBrowserSearchField.h */; }; 8F917E21095F5DE3000932D0 /* FSObjectBrowserSearchField.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F585F6F059B23F100C12B6F /* FSObjectBrowserSearchField.m */; }; 8F917E28095F5DE5000932D0 /* FSObjectBrowserSearchField.h in Headers */ = {isa = PBXBuildFile; fileRef = 8F585F6E059B23F100C12B6F /* FSObjectBrowserSearchField.h */; }; 8F917E29095F5DE5000932D0 /* FSObjectBrowserSearchField.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F585F6F059B23F100C12B6F /* FSObjectBrowserSearchField.m */; }; 8F917E2C095F5DE7000932D0 /* FSObjectBrowserSearchField.h in Headers */ = {isa = PBXBuildFile; fileRef = 8F585F6E059B23F100C12B6F /* FSObjectBrowserSearchField.h */; }; 8F917E2D095F5DE7000932D0 /* FSObjectBrowserSearchField.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F585F6F059B23F100C12B6F /* FSObjectBrowserSearchField.m */; }; - 8F936BEF082E8D9F00A04EBF /* FSManagedObjectContextInspector.nib in Resources */ = {isa = PBXBuildFile; fileRef = 8FCA6B79078E0E4F005FC6B2 /* FSManagedObjectContextInspector.nib */; }; 8F936BF0082E8DA100A04EBF /* FSManagedObjectContextInspector.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F37AEC3078B7E900083565D /* FSManagedObjectContextInspector.m */; }; 8F936BF1082E8DA400A04EBF /* FSManagedObjectContextInspector.h in Headers */ = {isa = PBXBuildFile; fileRef = 8F37AEC2078B7E900083565D /* FSManagedObjectContextInspector.h */; }; 8F936BF5082E8DBA00A04EBF /* FSManagedObjectContextInspector.h in Headers */ = {isa = PBXBuildFile; fileRef = 8F37AEC2078B7E900083565D /* FSManagedObjectContextInspector.h */; }; 8F936BF6082E8DBD00A04EBF /* FSManagedObjectContextInspector.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F37AEC3078B7E900083565D /* FSManagedObjectContextInspector.m */; }; - 8F936BF7082E8DC300A04EBF /* FSManagedObjectContextInspector.nib in Resources */ = {isa = PBXBuildFile; fileRef = 8FCA6B79078E0E4F005FC6B2 /* FSManagedObjectContextInspector.nib */; }; 8F936BF9082E8E4F00A04EBF /* FSNSManagedObjectContext.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F5189E807F072EA00A50735 /* FSNSManagedObjectContext.m */; }; 8F936BFA082E8E5000A04EBF /* FSNSManagedObjectContext.h in Headers */ = {isa = PBXBuildFile; fileRef = 8F5189E707F072EA00A50735 /* FSNSManagedObjectContext.h */; }; 8F936BFB082E8E5900A04EBF /* FSNSManagedObjectContext.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F5189E807F072EA00A50735 /* FSNSManagedObjectContext.m */; }; @@ -1004,9 +1038,6 @@ 8FA8EDEC07735B3B001BEC7B /* FSCollectionInspectorView.m in Sources */ = {isa = PBXBuildFile; fileRef = 8FA8EDD307735B3B001BEC7B /* FSCollectionInspectorView.m */; }; 8FA8EDED07735B3B001BEC7B /* FSCollectionInspectorView.h in Headers */ = {isa = PBXBuildFile; fileRef = 8FA8EDC607735B3B001BEC7B /* FSCollectionInspectorView.h */; }; 8FA8EDEE07735B3B001BEC7B /* FSCollectionInspectorView.m in Sources */ = {isa = PBXBuildFile; fileRef = 8FA8EDD307735B3B001BEC7B /* FSCollectionInspectorView.m */; }; - 8FA8EF9F07739FD4001BEC7B /* FSCollectionInspectorView.nib in Resources */ = {isa = PBXBuildFile; fileRef = 8FA8EF9107739FD4001BEC7B /* FSCollectionInspectorView.nib */; }; - 8FA8EFA007739FD5001BEC7B /* FSCollectionInspectorView.nib in Resources */ = {isa = PBXBuildFile; fileRef = 8FA8EF9107739FD4001BEC7B /* FSCollectionInspectorView.nib */; }; - 8FA8EFA307739FD5001BEC7B /* FSCollectionInspectorView.nib in Resources */ = {isa = PBXBuildFile; fileRef = 8FA8EF9107739FD4001BEC7B /* FSCollectionInspectorView.nib */; }; 8FAE79AC0DA0ED5D00CB6E14 /* FSCNBlock.m in Sources */ = {isa = PBXBuildFile; fileRef = 8FAE79AB0DA0ED5D00CB6E14 /* FSCNBlock.m */; }; 8FAE79AD0DA0ED5D00CB6E14 /* FSCNBlock.h in Headers */ = {isa = PBXBuildFile; fileRef = 8FAE79AA0DA0ED5D00CB6E14 /* FSCNBlock.h */; }; 8FAE79AE0DA0ED5D00CB6E14 /* FSCNBlock.m in Sources */ = {isa = PBXBuildFile; fileRef = 8FAE79AB0DA0ED5D00CB6E14 /* FSCNBlock.m */; }; @@ -1022,13 +1053,13 @@ 8FAE79F80DA109C500CB6E14 /* FSCNAssignment.h in Headers */ = {isa = PBXBuildFile; fileRef = 8FAE79F10DA109C500CB6E14 /* FSCNAssignment.h */; }; 8FAE79F90DA109C500CB6E14 /* FSCNAssignment.m in Sources */ = {isa = PBXBuildFile; fileRef = 8FAE79F20DA109C500CB6E14 /* FSCNAssignment.m */; }; 8FB5060305D53C8600153B33 /* FSObjectBrowserMatrix.h in Headers */ = {isa = PBXBuildFile; fileRef = 8FB505FF05D53C8600153B33 /* FSObjectBrowserMatrix.h */; }; - 8FB5060405D53C8600153B33 /* FSObjectBrowserMatrix.m in Sources */ = {isa = PBXBuildFile; fileRef = 8FB5060005D53C8600153B33 /* FSObjectBrowserMatrix.m */; }; + 8FB5060405D53C8600153B33 /* FSObjectBrowserMatrix.m in Sources */ = {isa = PBXBuildFile; fileRef = 8FB5060005D53C8600153B33 /* FSObjectBrowserMatrix.m */; settings = {COMPILER_FLAGS = "-fobjc-arc"; }; }; 8FB5060505D53C8600153B33 /* FSObjectBrowserMatrix.h in Headers */ = {isa = PBXBuildFile; fileRef = 8FB505FF05D53C8600153B33 /* FSObjectBrowserMatrix.h */; }; - 8FB5060605D53C8600153B33 /* FSObjectBrowserMatrix.m in Sources */ = {isa = PBXBuildFile; fileRef = 8FB5060005D53C8600153B33 /* FSObjectBrowserMatrix.m */; }; + 8FB5060605D53C8600153B33 /* FSObjectBrowserMatrix.m in Sources */ = {isa = PBXBuildFile; fileRef = 8FB5060005D53C8600153B33 /* FSObjectBrowserMatrix.m */; settings = {COMPILER_FLAGS = "-fobjc-arc"; }; }; 8FB5060705D53C8600153B33 /* FSObjectBrowserMatrix.h in Headers */ = {isa = PBXBuildFile; fileRef = 8FB505FF05D53C8600153B33 /* FSObjectBrowserMatrix.h */; }; - 8FB5060805D53C8600153B33 /* FSObjectBrowserMatrix.m in Sources */ = {isa = PBXBuildFile; fileRef = 8FB5060005D53C8600153B33 /* FSObjectBrowserMatrix.m */; }; - 8FB524190C2205C20028B297 /* FScriptIBPluginInspector.nib in Resources */ = {isa = PBXBuildFile; fileRef = 8FB524150C2205C20028B297 /* FScriptIBPluginInspector.nib */; }; - 8FB5241A0C2205C20028B297 /* FScriptIBPluginLibrary.nib in Resources */ = {isa = PBXBuildFile; fileRef = 8FB524170C2205C20028B297 /* FScriptIBPluginLibrary.nib */; }; + 8FB5060805D53C8600153B33 /* FSObjectBrowserMatrix.m in Sources */ = {isa = PBXBuildFile; fileRef = 8FB5060005D53C8600153B33 /* FSObjectBrowserMatrix.m */; settings = {COMPILER_FLAGS = "-fobjc-arc"; }; }; + 8FB523970C21FE030028B297 /* Cocoa.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 8F85274707F6016900E706F5 /* Cocoa.framework */; }; + 8FB5239B0C21FE330028B297 /* ExceptionHandling.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = F51B24640271980D01DB4759 /* ExceptionHandling.framework */; }; 8FB9D5990F1CEE2100E10274 /* FSGlobalScope.m in Sources */ = {isa = PBXBuildFile; fileRef = 8FB9D5980F1CEE2100E10274 /* FSGlobalScope.m */; }; 8FB9D59A0F1CEE2100E10274 /* FSGlobalScope.h in Headers */ = {isa = PBXBuildFile; fileRef = 8FB9D5970F1CEE2100E10274 /* FSGlobalScope.h */; }; 8FB9D59B0F1CEE2100E10274 /* FSGlobalScope.m in Sources */ = {isa = PBXBuildFile; fileRef = 8FB9D5980F1CEE2100E10274 /* FSGlobalScope.m */; }; @@ -1049,6 +1080,10 @@ 8FBC289B077B7D5200F9B4A2 /* ArrayRepFetchRequest.m in Sources */ = {isa = PBXBuildFile; fileRef = 8FBC2884077B7D5200F9B4A2 /* ArrayRepFetchRequest.m */; }; 8FBC289D077B7D5200F9B4A2 /* ArrayRepFetchRequest.h in Headers */ = {isa = PBXBuildFile; fileRef = 8FBC2877077B7D5200F9B4A2 /* ArrayRepFetchRequest.h */; }; 8FBC289F077B7D5200F9B4A2 /* ArrayRepFetchRequest.m in Sources */ = {isa = PBXBuildFile; fileRef = 8FBC2884077B7D5200F9B4A2 /* ArrayRepFetchRequest.m */; }; + 8FC20AA00CEE3AEE00D9871F /* AppKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 8FC20A9F0CEE3AEE00D9871F /* AppKit.framework */; }; + 8FC20AA10CEE3AEE00D9871F /* AppKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 8FC20A9F0CEE3AEE00D9871F /* AppKit.framework */; }; + 8FC20ADF0CEE3B2F00D9871F /* AddressBook.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 8FC20ADE0CEE3B2F00D9871F /* AddressBook.framework */; }; + 8FC20BDD0CEE3DC000D9871F /* QTKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 8FDF6FCF082BD9560044FD86 /* QTKit.framework */; }; 8FCA00C30EEAF34300B10420 /* Block_fscript.h in Headers */ = {isa = PBXBuildFile; fileRef = 8FCA00C10EEAF34300B10420 /* Block_fscript.h */; settings = {ATTRIBUTES = (Public, ); }; }; 8FCA00C40EEAF34300B10420 /* Block.m in Sources */ = {isa = PBXBuildFile; fileRef = 8FCA00C20EEAF34300B10420 /* Block.m */; }; 8FCA00C50EEAF34300B10420 /* Block_fscript.h in Headers */ = {isa = PBXBuildFile; fileRef = 8FCA00C10EEAF34300B10420 /* Block_fscript.h */; }; @@ -1063,9 +1098,7 @@ 8FCA593710883B0100F67841 /* FSNewlyAllocatedObject.m in Sources */ = {isa = PBXBuildFile; fileRef = 8FCA593210883B0100F67841 /* FSNewlyAllocatedObject.m */; }; 8FCA593810883B0100F67841 /* FSNewlyAllocatedObject.h in Headers */ = {isa = PBXBuildFile; fileRef = 8FCA593110883B0100F67841 /* FSNewlyAllocatedObject.h */; }; 8FCA593910883B0100F67841 /* FSNewlyAllocatedObject.m in Sources */ = {isa = PBXBuildFile; fileRef = 8FCA593210883B0100F67841 /* FSNewlyAllocatedObject.m */; }; - 8FCA6B88078E0E4F005FC6B2 /* FSManagedObjectContextInspector.nib in Resources */ = {isa = PBXBuildFile; fileRef = 8FCA6B79078E0E4F005FC6B2 /* FSManagedObjectContextInspector.nib */; }; 8FCFCF08094F711900FF7406 /* FSTest1.app in Resources */ = {isa = PBXBuildFile; fileRef = 8FD37BA108472E0F00524B98 /* FSTest1.app */; }; - 8FCFCF19094F712400FF7406 /* FSTest2.app in Resources */ = {isa = PBXBuildFile; fileRef = 8FD37B9F08472E0F00524B98 /* FSTest2.app */; }; 8FD0A3140DD7276000E47459 /* FSCNReturn.m in Sources */ = {isa = PBXBuildFile; fileRef = 8FD0A3130DD7276000E47459 /* FSCNReturn.m */; }; 8FD0A3150DD7276000E47459 /* FSCNReturn.h in Headers */ = {isa = PBXBuildFile; fileRef = 8FD0A3120DD7276000E47459 /* FSCNReturn.h */; }; 8FD0A3160DD7276000E47459 /* FSCNReturn.m in Sources */ = {isa = PBXBuildFile; fileRef = 8FD0A3130DD7276000E47459 /* FSCNReturn.m */; }; @@ -1085,9 +1118,6 @@ 8FDCCD5305C09F8200747C0A /* FSAttributedStringInspector.m in Sources */ = {isa = PBXBuildFile; fileRef = 8FDCCD4F05C09F8200747C0A /* FSAttributedStringInspector.m */; }; 8FDCCD5605C09F8200747C0A /* FSAttributedStringInspector.h in Headers */ = {isa = PBXBuildFile; fileRef = 8FDCCD4E05C09F8200747C0A /* FSAttributedStringInspector.h */; }; 8FDCCD5705C09F8200747C0A /* FSAttributedStringInspector.m in Sources */ = {isa = PBXBuildFile; fileRef = 8FDCCD4F05C09F8200747C0A /* FSAttributedStringInspector.m */; }; - 8FDCCD7B05C0A0A000747C0A /* FSAttributedStringInspector.nib in Resources */ = {isa = PBXBuildFile; fileRef = 8FDCCD7A05C0A0A000747C0A /* FSAttributedStringInspector.nib */; }; - 8FDCCD7C05C0A0A000747C0A /* FSAttributedStringInspector.nib in Resources */ = {isa = PBXBuildFile; fileRef = 8FDCCD7A05C0A0A000747C0A /* FSAttributedStringInspector.nib */; }; - 8FDCCD7E05C0A0A000747C0A /* FSAttributedStringInspector.nib in Resources */ = {isa = PBXBuildFile; fileRef = 8FDCCD7A05C0A0A000747C0A /* FSAttributedStringInspector.nib */; }; 8FDCCDC105C0A23000747C0A /* FSNSAttributedString.h in Headers */ = {isa = PBXBuildFile; fileRef = 8FDCCDBF05C0A23000747C0A /* FSNSAttributedString.h */; }; 8FDCCDC205C0A23000747C0A /* FSNSAttributedString.m in Sources */ = {isa = PBXBuildFile; fileRef = 8FDCCDC005C0A23000747C0A /* FSNSAttributedString.m */; }; 8FDCCDC305C0A23000747C0A /* FSNSAttributedString.h in Headers */ = {isa = PBXBuildFile; fileRef = 8FDCCDBF05C0A23000747C0A /* FSNSAttributedString.h */; settings = {ATTRIBUTES = (Public, ); }; }; @@ -1141,6 +1171,7 @@ 8FE9AE8F07807269005B2CC4 /* FSObjectPointerPrivate.h in Headers */ = {isa = PBXBuildFile; fileRef = 8FE9AE8207807269005B2CC4 /* FSObjectPointerPrivate.h */; }; 8FE9AE9207807269005B2CC4 /* FSObjectPointerPrivate.h in Headers */ = {isa = PBXBuildFile; fileRef = 8FE9AE8207807269005B2CC4 /* FSObjectPointerPrivate.h */; }; 8FE9AE9407807269005B2CC4 /* FSObjectPointerPrivate.h in Headers */ = {isa = PBXBuildFile; fileRef = 8FE9AE8207807269005B2CC4 /* FSObjectPointerPrivate.h */; }; + 8FF5AEFC0961E56400A3BEA9 /* WebKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 8FF5AEF80961E56400A3BEA9 /* WebKit.framework */; }; BA22311C189F9A9A002C5B6A /* NetFS.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA2230F8189F9A99002C5B6A /* NetFS.framework */; }; BA22311D189F9A9A002C5B6A /* OpenAL.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA2230F9189F9A99002C5B6A /* OpenAL.framework */; }; BA22311E189F9A9A002C5B6A /* OpenCL.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA2230FA189F9A99002C5B6A /* OpenCL.framework */; }; @@ -1154,7 +1185,6 @@ BA223126189F9A9A002C5B6A /* Quartz.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA223102189F9A99002C5B6A /* Quartz.framework */; }; BA223127189F9A9A002C5B6A /* QuartzCore.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA223103189F9A99002C5B6A /* QuartzCore.framework */; }; BA223128189F9A9A002C5B6A /* QuickLook.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA223104189F9A99002C5B6A /* QuickLook.framework */; }; - BA22312B189F9A9A002C5B6A /* RubyCocoa.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA223107189F9A9A002C5B6A /* RubyCocoa.framework */; }; BA22312C189F9A9A002C5B6A /* ScreenSaver.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA223108189F9A9A002C5B6A /* ScreenSaver.framework */; }; BA22312E189F9A9A002C5B6A /* ScriptingBridge.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA22310A189F9A9A002C5B6A /* ScriptingBridge.framework */; }; BA22312F189F9A9A002C5B6A /* Security.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA22310B189F9A9A002C5B6A /* Security.framework */; }; @@ -1174,6 +1204,7 @@ BA22315B189F9AC7002C5B6A /* GSS.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA223148189F9AC5002C5B6A /* GSS.framework */; }; BA22315C189F9AC7002C5B6A /* ICADevices.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA223149189F9AC6002C5B6A /* ICADevices.framework */; }; BA22315D189F9AC7002C5B6A /* ImageCaptureCore.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA22314A189F9AC6002C5B6A /* ImageCaptureCore.framework */; }; + BA22315E189F9AC7002C5B6A /* ImageIO.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA22314B189F9AC6002C5B6A /* ImageIO.framework */; }; BA22315F189F9AC7002C5B6A /* IMServicePlugIn.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA22314C189F9AC6002C5B6A /* IMServicePlugIn.framework */; }; BA223160189F9AC7002C5B6A /* InputMethodKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA22314D189F9AC6002C5B6A /* InputMethodKit.framework */; }; BA223161189F9AC7002C5B6A /* InstallerPlugins.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA22314E189F9AC6002C5B6A /* InstallerPlugins.framework */; }; @@ -1182,7 +1213,9 @@ BA223164189F9AC7002C5B6A /* IOBluetoothUI.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA223151189F9AC6002C5B6A /* IOBluetoothUI.framework */; }; BA223165189F9AC7002C5B6A /* IOKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA223152189F9AC6002C5B6A /* IOKit.framework */; }; BA223166189F9AC7002C5B6A /* IOSurface.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA223153189F9AC6002C5B6A /* IOSurface.framework */; }; + BA223167189F9AC7002C5B6A /* JavaFrameEmbedding.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA223154189F9AC6002C5B6A /* JavaFrameEmbedding.framework */; }; BA223168189F9AC7002C5B6A /* JavaScriptCore.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA223155189F9AC6002C5B6A /* JavaScriptCore.framework */; }; + BA223169189F9AC7002C5B6A /* JavaVM.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA223156189F9AC6002C5B6A /* JavaVM.framework */; }; BA22316A189F9AC7002C5B6A /* Kerberos.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA223157189F9AC6002C5B6A /* Kerberos.framework */; }; BA22316C189F9AC7002C5B6A /* LatentSemanticMapping.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA223159189F9AC7002C5B6A /* LatentSemanticMapping.framework */; }; BA223174189F9AD3002C5B6A /* ExceptionHandling.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA22316F189F9AD3002C5B6A /* ExceptionHandling.framework */; }; @@ -1196,25 +1229,28 @@ BA22317F189F9AF4002C5B6A /* DVDPlayback.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA2230D9189F9A7A002C5B6A /* DVDPlayback.framework */; }; BA223180189F9B20002C5B6A /* CalendarStore.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA2230B3189F9A2E002C5B6A /* CalendarStore.framework */; }; BA223181189F9B20002C5B6A /* Carbon.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA2230B4189F9A2E002C5B6A /* Carbon.framework */; }; + BA223182189F9B20002C5B6A /* CFNetwork.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA2230B5189F9A2E002C5B6A /* CFNetwork.framework */; }; BA223183189F9B20002C5B6A /* Cocoa.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA2230B6189F9A2E002C5B6A /* Cocoa.framework */; }; BA223184189F9B20002C5B6A /* Collaboration.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA2230B7189F9A2E002C5B6A /* Collaboration.framework */; }; BA223185189F9B20002C5B6A /* CoreAudio.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA22309B189F9988002C5B6A /* CoreAudio.framework */; }; BA223186189F9B20002C5B6A /* CoreAudioKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA2230B8189F9A2F002C5B6A /* CoreAudioKit.framework */; }; BA223187189F9B20002C5B6A /* CoreData.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA2230B9189F9A2F002C5B6A /* CoreData.framework */; }; BA223188189F9B20002C5B6A /* CoreFoundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA2230BA189F9A2F002C5B6A /* CoreFoundation.framework */; }; + BA223189189F9B20002C5B6A /* CoreGraphics.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA2230BB189F9A2F002C5B6A /* CoreGraphics.framework */; }; BA22318A189F9B20002C5B6A /* CoreLocation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA22309D189F99CC002C5B6A /* CoreLocation.framework */; }; BA22318B189F9B20002C5B6A /* CoreMedia.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA2230BC189F9A2F002C5B6A /* CoreMedia.framework */; }; BA22318C189F9B20002C5B6A /* CoreMediaIO.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA2230BD189F9A2F002C5B6A /* CoreMediaIO.framework */; }; BA22318D189F9B20002C5B6A /* CoreMIDI.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA2230BE189F9A2F002C5B6A /* CoreMIDI.framework */; }; BA22318E189F9B20002C5B6A /* CoreServices.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA2230BF189F9A2F002C5B6A /* CoreServices.framework */; }; + BA22318F189F9B20002C5B6A /* CoreText.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA2230C0189F9A2F002C5B6A /* CoreText.framework */; }; BA223190189F9B20002C5B6A /* CoreVideo.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA2230C1189F9A2F002C5B6A /* CoreVideo.framework */; }; BA223191189F9B20002C5B6A /* CoreWLAN.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA2230C2189F9A2F002C5B6A /* CoreWLAN.framework */; }; BA223192189F9B2A002C5B6A /* Accelerate.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA223095189F9924002C5B6A /* Accelerate.framework */; }; BA223194189F9B2A002C5B6A /* AddressBook.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA22309F189F9A14002C5B6A /* AddressBook.framework */; }; BA223195189F9B2A002C5B6A /* AGL.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA2230A0189F9A14002C5B6A /* AGL.framework */; }; + BA223196189F9B2A002C5B6A /* AppKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA2230A1189F9A14002C5B6A /* AppKit.framework */; }; BA223198189F9B2A002C5B6A /* AppleScriptKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA2230A3189F9A14002C5B6A /* AppleScriptKit.framework */; }; BA223199189F9B2A002C5B6A /* AppleScriptObjC.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA2230A4189F9A14002C5B6A /* AppleScriptObjC.framework */; }; - BA22319A189F9B2A002C5B6A /* AppleShareClientCore.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA2230A5189F9A14002C5B6A /* AppleShareClientCore.framework */; }; BA22319B189F9B2A002C5B6A /* ApplicationServices.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA2230A6189F9A14002C5B6A /* ApplicationServices.framework */; }; BA22319C189F9B2A002C5B6A /* AudioToolbox.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA223097189F9958002C5B6A /* AudioToolbox.framework */; }; BA22319D189F9B2A002C5B6A /* AudioUnit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA2230A7189F9A14002C5B6A /* AudioUnit.framework */; }; @@ -1381,30 +1417,17 @@ BA223246189FA403002C5B6A /* FSNewlyAllocatedObject.h in Headers */ = {isa = PBXBuildFile; fileRef = 8FCA593110883B0100F67841 /* FSNewlyAllocatedObject.h */; }; BA223247189FA403002C5B6A /* FSWorksWhenModalWindow.h in Headers */ = {isa = PBXBuildFile; fileRef = 8F5EDA00109B384A003A2F4C /* FSWorksWhenModalWindow.h */; }; BA223248189FA403002C5B6A /* FSNSMutableDictionary.h in Headers */ = {isa = PBXBuildFile; fileRef = 8F44270B116549C700E88F21 /* FSNSMutableDictionary.h */; }; - BA22324A189FA403002C5B6A /* FSTest2.app in Resources */ = {isa = PBXBuildFile; fileRef = 8FD37B9F08472E0F00524B98 /* FSTest2.app */; }; BA22324B189FA403002C5B6A /* FSTest1.app in Resources */ = {isa = PBXBuildFile; fileRef = 8FD37BA108472E0F00524B98 /* FSTest1.app */; }; - BA22324C189FA403002C5B6A /* FSCollectionInspector.nib in Resources */ = {isa = PBXBuildFile; fileRef = 0CD4E31F00D7DFE17BE9C1BD /* FSCollectionInspector.nib */; }; - BA22324D189FA403002C5B6A /* blockInspector.nib in Resources */ = {isa = PBXBuildFile; fileRef = 0CD4E32A00D7DFE17BE9C1BD /* blockInspector.nib */; }; BA22324E189FA403002C5B6A /* FlightTutorial.txt in Resources */ = {isa = PBXBuildFile; fileRef = 0CD4E34400D7DFE17BE9C1BD /* FlightTutorial.txt */; }; BA22324F189FA403002C5B6A /* genObjInspector.nib in Resources */ = {isa = PBXBuildFile; fileRef = 0CD4E37900D7DFE17BE9C1BD /* genObjInspector.nib */; }; BA223250189FA403002C5B6A /* KTest.txt in Resources */ = {isa = PBXBuildFile; fileRef = 0CD4E37D00D7DFE17BE9C1BD /* KTest.txt */; }; BA223251189FA403002C5B6A /* license.txt in Resources */ = {isa = PBXBuildFile; fileRef = 0CD4E37E00D7DFE17BE9C1BD /* license.txt */; }; BA223252189FA403002C5B6A /* fs.icns in Resources */ = {isa = PBXBuildFile; fileRef = F5F1A9F7022E9A96011160FE /* fs.icns */; }; - BA223253189FA403002C5B6A /* FScriptAppPreference.nib in Resources */ = {isa = PBXBuildFile; fileRef = F5F1A9FB022E9A96011160FE /* FScriptAppPreference.nib */; }; - BA223254189FA403002C5B6A /* fs.nib in Resources */ = {isa = PBXBuildFile; fileRef = F598CDB7025CF7E5011B2E41 /* fs.nib */; }; BA223255189FA403002C5B6A /* fs.scriptSuite in Resources */ = {isa = PBXBuildFile; fileRef = F538EF6E0279FD3C01345511 /* fs.scriptSuite */; }; BA223256189FA403002C5B6A /* fs.scriptTerminology in Resources */ = {isa = PBXBuildFile; fileRef = F538EF6F0279FD3C01345511 /* fs.scriptTerminology */; }; - BA223257189FA403002C5B6A /* FSObjectBrowserButtonsInspector.nib in Resources */ = {isa = PBXBuildFile; fileRef = F5F9569002B272A30121B3BA /* FSObjectBrowserButtonsInspector.nib */; }; - BA223258189FA403002C5B6A /* FSImageInspector.nib in Resources */ = {isa = PBXBuildFile; fileRef = F54B55C3036B48690140C608 /* FSImageInspector.nib */; }; - BA223259189FA403002C5B6A /* ArrayTableView.nib in Resources */ = {isa = PBXBuildFile; fileRef = F58090FC03756D2401AED2EF /* ArrayTableView.nib */; }; BA22325A189FA403002C5B6A /* constantsDictionary in Resources */ = {isa = PBXBuildFile; fileRef = 8F92F0380463F2A400F4C61F /* constantsDictionary */; }; - BA22325B189FA403002C5B6A /* FSAttributedStringInspector.nib in Resources */ = {isa = PBXBuildFile; fileRef = 8FDCCD7A05C0A0A000747C0A /* FSAttributedStringInspector.nib */; }; - BA22325C189FA403002C5B6A /* FSConsole.nib in Resources */ = {isa = PBXBuildFile; fileRef = 8F0B64C805C5370D0099180D /* FSConsole.nib */; }; - BA22325D189FA403002C5B6A /* FScriptPreferences.nib in Resources */ = {isa = PBXBuildFile; fileRef = 8F0B664F05C557A40099180D /* FScriptPreferences.nib */; }; BA22325E189FA403002C5B6A /* run.tiff in Resources */ = {isa = PBXBuildFile; fileRef = 8F2D066F05CED9B9007EA81B /* run.tiff */; }; BA22325F189FA403002C5B6A /* build.tiff in Resources */ = {isa = PBXBuildFile; fileRef = 8F56036505CF22660044FA65 /* build.tiff */; }; - BA223260189FA403002C5B6A /* FSCollectionInspectorView.nib in Resources */ = {isa = PBXBuildFile; fileRef = 8FA8EF9107739FD4001BEC7B /* FSCollectionInspectorView.nib */; }; - BA223261189FA403002C5B6A /* FSManagedObjectContextInspector.nib in Resources */ = {isa = PBXBuildFile; fileRef = 8FCA6B79078E0E4F005FC6B2 /* FSManagedObjectContextInspector.nib */; }; BA223262189FA403002C5B6A /* FSMovieInspector.nib in Resources */ = {isa = PBXBuildFile; fileRef = 8F7472BE056B7ACE00E87339 /* FSMovieInspector.nib */; }; BA223263189FA403002C5B6A /* FSTestClasses.txt in Resources */ = {isa = PBXBuildFile; fileRef = 8FE3DC990D26C0FD00A1D767 /* FSTestClasses.txt */; }; BA223264189FA403002C5B6A /* DemoAssistant.xib in Resources */ = {isa = PBXBuildFile; fileRef = 8F9636480F8DF86600A70F39 /* DemoAssistant.xib */; }; @@ -1413,7 +1436,7 @@ BA223268189FA403002C5B6A /* ArrayRepEmpty.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E31A00D7DFE17BE9C1BD /* ArrayRepEmpty.m */; }; BA223269189FA403002C5B6A /* ArrayRepId.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E31C00D7DFE17BE9C1BD /* ArrayRepId.m */; }; BA22326A189FA403002C5B6A /* FSCollectionInspector.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E31E00D7DFE17BE9C1BD /* FSCollectionInspector.m */; }; - BA22326B189FA403002C5B6A /* FSObjectBrowser.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E32100D7DFE17BE9C1BD /* FSObjectBrowser.m */; }; + BA22326B189FA403002C5B6A /* FSObjectBrowser.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E32100D7DFE17BE9C1BD /* FSObjectBrowser.m */; settings = {COMPILER_FLAGS = "-fobjc-arc"; }; }; BA22326C189FA403002C5B6A /* FSObjectBrowserArgumentPanel.m in Sources */ = {isa = PBXBuildFile; fileRef = F5FA8A6D0215D44C01AFEEFD /* FSObjectBrowserArgumentPanel.m */; }; BA22326D189FA403002C5B6A /* FSObjectBrowserCell.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E32300D7DFE17BE9C1BD /* FSObjectBrowserCell.m */; }; BA22326E189FA403002C5B6A /* FSObjectBrowserView.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E32500D7DFE17BE9C1BD /* FSObjectBrowserView.m */; }; @@ -1493,7 +1516,7 @@ BA2232B8189FA403002C5B6A /* FSNSAttributedString.m in Sources */ = {isa = PBXBuildFile; fileRef = 8FDCCDC005C0A23000747C0A /* FSNSAttributedString.m */; }; BA2232B9189FA403002C5B6A /* FScriptMenuItem.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F0B66FC05C5639E0099180D /* FScriptMenuItem.m */; }; BA2232BA189FA403002C5B6A /* FSNSFont.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F658B2805C9694F0040FB24 /* FSNSFont.m */; }; - BA2232BB189FA403002C5B6A /* FSObjectBrowserMatrix.m in Sources */ = {isa = PBXBuildFile; fileRef = 8FB5060005D53C8600153B33 /* FSObjectBrowserMatrix.m */; }; + BA2232BB189FA403002C5B6A /* FSObjectBrowserMatrix.m in Sources */ = {isa = PBXBuildFile; fileRef = 8FB5060005D53C8600153B33 /* FSObjectBrowserMatrix.m */; settings = {COMPILER_FLAGS = "-fobjc-arc"; }; }; BA2232BC189FA403002C5B6A /* FSNSString.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E36800D7DFE17BE9C1BD /* FSNSString.m */; }; BA2232BD189FA403002C5B6A /* FSSymbolTable.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F17C07E06B1309C00F07862 /* FSSymbolTable.m */; }; BA2232BE189FA403002C5B6A /* TestFS.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E3A000D7DFE17BE9C1BD /* TestFS.m */; }; @@ -1555,6 +1578,7 @@ BA2232F7189FA403002C5B6A /* Accounts.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = E2DBA31F161CA5D00035A675 /* Accounts.framework */; }; BA2232F8189FA403002C5B6A /* AddressBook.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA22309F189F9A14002C5B6A /* AddressBook.framework */; }; BA2232F9189FA403002C5B6A /* AGL.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA2230A0189F9A14002C5B6A /* AGL.framework */; }; + BA2232FA189FA403002C5B6A /* AppKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA2230A1189F9A14002C5B6A /* AppKit.framework */; }; BA2232FB189FA403002C5B6A /* AppleScriptKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA2230A3189F9A14002C5B6A /* AppleScriptKit.framework */; }; BA2232FC189FA403002C5B6A /* AppleScriptObjC.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA2230A4189F9A14002C5B6A /* AppleScriptObjC.framework */; }; BA2232FD189FA403002C5B6A /* AppleShareClientCore.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA2230A5189F9A14002C5B6A /* AppleShareClientCore.framework */; }; @@ -1605,7 +1629,9 @@ BA22332D189FA403002C5B6A /* IOBluetoothUI.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA223151189F9AC6002C5B6A /* IOBluetoothUI.framework */; }; BA22332E189FA403002C5B6A /* IOKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA223152189F9AC6002C5B6A /* IOKit.framework */; }; BA22332F189FA403002C5B6A /* IOSurface.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA223153189F9AC6002C5B6A /* IOSurface.framework */; }; + BA223330189FA403002C5B6A /* JavaFrameEmbedding.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA223154189F9AC6002C5B6A /* JavaFrameEmbedding.framework */; }; BA223331189FA403002C5B6A /* JavaScriptCore.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA223155189F9AC6002C5B6A /* JavaScriptCore.framework */; }; + BA223332189FA403002C5B6A /* JavaVM.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA223156189F9AC6002C5B6A /* JavaVM.framework */; }; BA223333189FA403002C5B6A /* Kerberos.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA223157189F9AC6002C5B6A /* Kerberos.framework */; }; BA223334189FA403002C5B6A /* LatentSemanticMapping.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA223159189F9AC7002C5B6A /* LatentSemanticMapping.framework */; }; BA223335189FA403002C5B6A /* GLKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = E2DBA325161CA64B0035A675 /* GLKit.framework */; }; @@ -1803,30 +1829,17 @@ BA223406189FA412002C5B6A /* FSNewlyAllocatedObject.h in Headers */ = {isa = PBXBuildFile; fileRef = 8FCA593110883B0100F67841 /* FSNewlyAllocatedObject.h */; }; BA223407189FA412002C5B6A /* FSWorksWhenModalWindow.h in Headers */ = {isa = PBXBuildFile; fileRef = 8F5EDA00109B384A003A2F4C /* FSWorksWhenModalWindow.h */; }; BA223408189FA412002C5B6A /* FSNSMutableDictionary.h in Headers */ = {isa = PBXBuildFile; fileRef = 8F44270B116549C700E88F21 /* FSNSMutableDictionary.h */; }; - BA22340A189FA412002C5B6A /* FSTest2.app in Resources */ = {isa = PBXBuildFile; fileRef = 8FD37B9F08472E0F00524B98 /* FSTest2.app */; }; BA22340B189FA412002C5B6A /* FSTest1.app in Resources */ = {isa = PBXBuildFile; fileRef = 8FD37BA108472E0F00524B98 /* FSTest1.app */; }; - BA22340C189FA412002C5B6A /* FSCollectionInspector.nib in Resources */ = {isa = PBXBuildFile; fileRef = 0CD4E31F00D7DFE17BE9C1BD /* FSCollectionInspector.nib */; }; - BA22340D189FA412002C5B6A /* blockInspector.nib in Resources */ = {isa = PBXBuildFile; fileRef = 0CD4E32A00D7DFE17BE9C1BD /* blockInspector.nib */; }; BA22340E189FA412002C5B6A /* FlightTutorial.txt in Resources */ = {isa = PBXBuildFile; fileRef = 0CD4E34400D7DFE17BE9C1BD /* FlightTutorial.txt */; }; BA22340F189FA412002C5B6A /* genObjInspector.nib in Resources */ = {isa = PBXBuildFile; fileRef = 0CD4E37900D7DFE17BE9C1BD /* genObjInspector.nib */; }; BA223410189FA412002C5B6A /* KTest.txt in Resources */ = {isa = PBXBuildFile; fileRef = 0CD4E37D00D7DFE17BE9C1BD /* KTest.txt */; }; BA223411189FA412002C5B6A /* license.txt in Resources */ = {isa = PBXBuildFile; fileRef = 0CD4E37E00D7DFE17BE9C1BD /* license.txt */; }; BA223412189FA412002C5B6A /* fs.icns in Resources */ = {isa = PBXBuildFile; fileRef = F5F1A9F7022E9A96011160FE /* fs.icns */; }; - BA223413189FA412002C5B6A /* FScriptAppPreference.nib in Resources */ = {isa = PBXBuildFile; fileRef = F5F1A9FB022E9A96011160FE /* FScriptAppPreference.nib */; }; - BA223414189FA412002C5B6A /* fs.nib in Resources */ = {isa = PBXBuildFile; fileRef = F598CDB7025CF7E5011B2E41 /* fs.nib */; }; BA223415189FA412002C5B6A /* fs.scriptSuite in Resources */ = {isa = PBXBuildFile; fileRef = F538EF6E0279FD3C01345511 /* fs.scriptSuite */; }; BA223416189FA412002C5B6A /* fs.scriptTerminology in Resources */ = {isa = PBXBuildFile; fileRef = F538EF6F0279FD3C01345511 /* fs.scriptTerminology */; }; - BA223417189FA412002C5B6A /* FSObjectBrowserButtonsInspector.nib in Resources */ = {isa = PBXBuildFile; fileRef = F5F9569002B272A30121B3BA /* FSObjectBrowserButtonsInspector.nib */; }; - BA223418189FA412002C5B6A /* FSImageInspector.nib in Resources */ = {isa = PBXBuildFile; fileRef = F54B55C3036B48690140C608 /* FSImageInspector.nib */; }; - BA223419189FA412002C5B6A /* ArrayTableView.nib in Resources */ = {isa = PBXBuildFile; fileRef = F58090FC03756D2401AED2EF /* ArrayTableView.nib */; }; BA22341A189FA412002C5B6A /* constantsDictionary in Resources */ = {isa = PBXBuildFile; fileRef = 8F92F0380463F2A400F4C61F /* constantsDictionary */; }; - BA22341B189FA412002C5B6A /* FSAttributedStringInspector.nib in Resources */ = {isa = PBXBuildFile; fileRef = 8FDCCD7A05C0A0A000747C0A /* FSAttributedStringInspector.nib */; }; - BA22341C189FA412002C5B6A /* FSConsole.nib in Resources */ = {isa = PBXBuildFile; fileRef = 8F0B64C805C5370D0099180D /* FSConsole.nib */; }; - BA22341D189FA412002C5B6A /* FScriptPreferences.nib in Resources */ = {isa = PBXBuildFile; fileRef = 8F0B664F05C557A40099180D /* FScriptPreferences.nib */; }; BA22341E189FA412002C5B6A /* run.tiff in Resources */ = {isa = PBXBuildFile; fileRef = 8F2D066F05CED9B9007EA81B /* run.tiff */; }; BA22341F189FA412002C5B6A /* build.tiff in Resources */ = {isa = PBXBuildFile; fileRef = 8F56036505CF22660044FA65 /* build.tiff */; }; - BA223420189FA412002C5B6A /* FSCollectionInspectorView.nib in Resources */ = {isa = PBXBuildFile; fileRef = 8FA8EF9107739FD4001BEC7B /* FSCollectionInspectorView.nib */; }; - BA223421189FA412002C5B6A /* FSManagedObjectContextInspector.nib in Resources */ = {isa = PBXBuildFile; fileRef = 8FCA6B79078E0E4F005FC6B2 /* FSManagedObjectContextInspector.nib */; }; BA223422189FA412002C5B6A /* FSMovieInspector.nib in Resources */ = {isa = PBXBuildFile; fileRef = 8F7472BE056B7ACE00E87339 /* FSMovieInspector.nib */; }; BA223423189FA412002C5B6A /* FSTestClasses.txt in Resources */ = {isa = PBXBuildFile; fileRef = 8FE3DC990D26C0FD00A1D767 /* FSTestClasses.txt */; }; BA223424189FA412002C5B6A /* DemoAssistant.xib in Resources */ = {isa = PBXBuildFile; fileRef = 8F9636480F8DF86600A70F39 /* DemoAssistant.xib */; }; @@ -1835,7 +1848,7 @@ BA223428189FA412002C5B6A /* ArrayRepEmpty.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E31A00D7DFE17BE9C1BD /* ArrayRepEmpty.m */; }; BA223429189FA412002C5B6A /* ArrayRepId.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E31C00D7DFE17BE9C1BD /* ArrayRepId.m */; }; BA22342A189FA412002C5B6A /* FSCollectionInspector.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E31E00D7DFE17BE9C1BD /* FSCollectionInspector.m */; }; - BA22342B189FA412002C5B6A /* FSObjectBrowser.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E32100D7DFE17BE9C1BD /* FSObjectBrowser.m */; }; + BA22342B189FA412002C5B6A /* FSObjectBrowser.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E32100D7DFE17BE9C1BD /* FSObjectBrowser.m */; settings = {COMPILER_FLAGS = "-fobjc-arc"; }; }; BA22342C189FA412002C5B6A /* FSObjectBrowserArgumentPanel.m in Sources */ = {isa = PBXBuildFile; fileRef = F5FA8A6D0215D44C01AFEEFD /* FSObjectBrowserArgumentPanel.m */; }; BA22342D189FA412002C5B6A /* FSObjectBrowserCell.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E32300D7DFE17BE9C1BD /* FSObjectBrowserCell.m */; }; BA22342E189FA412002C5B6A /* FSObjectBrowserView.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E32500D7DFE17BE9C1BD /* FSObjectBrowserView.m */; }; @@ -1915,7 +1928,7 @@ BA223478189FA412002C5B6A /* FSNSAttributedString.m in Sources */ = {isa = PBXBuildFile; fileRef = 8FDCCDC005C0A23000747C0A /* FSNSAttributedString.m */; }; BA223479189FA412002C5B6A /* FScriptMenuItem.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F0B66FC05C5639E0099180D /* FScriptMenuItem.m */; }; BA22347A189FA412002C5B6A /* FSNSFont.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F658B2805C9694F0040FB24 /* FSNSFont.m */; }; - BA22347B189FA412002C5B6A /* FSObjectBrowserMatrix.m in Sources */ = {isa = PBXBuildFile; fileRef = 8FB5060005D53C8600153B33 /* FSObjectBrowserMatrix.m */; }; + BA22347B189FA412002C5B6A /* FSObjectBrowserMatrix.m in Sources */ = {isa = PBXBuildFile; fileRef = 8FB5060005D53C8600153B33 /* FSObjectBrowserMatrix.m */; settings = {COMPILER_FLAGS = "-fobjc-arc"; }; }; BA22347C189FA412002C5B6A /* FSNSString.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E36800D7DFE17BE9C1BD /* FSNSString.m */; }; BA22347D189FA412002C5B6A /* FSSymbolTable.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F17C07E06B1309C00F07862 /* FSSymbolTable.m */; }; BA22347E189FA412002C5B6A /* TestFS.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E3A000D7DFE17BE9C1BD /* TestFS.m */; }; @@ -1977,9 +1990,9 @@ BA2234B7189FA412002C5B6A /* Accounts.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = E2DBA31F161CA5D00035A675 /* Accounts.framework */; }; BA2234B8189FA412002C5B6A /* AddressBook.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA22309F189F9A14002C5B6A /* AddressBook.framework */; }; BA2234B9189FA412002C5B6A /* AGL.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA2230A0189F9A14002C5B6A /* AGL.framework */; }; + BA2234BA189FA412002C5B6A /* AppKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA2230A1189F9A14002C5B6A /* AppKit.framework */; }; BA2234BB189FA412002C5B6A /* AppleScriptKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA2230A3189F9A14002C5B6A /* AppleScriptKit.framework */; }; BA2234BC189FA412002C5B6A /* AppleScriptObjC.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA2230A4189F9A14002C5B6A /* AppleScriptObjC.framework */; }; - BA2234BD189FA412002C5B6A /* AppleShareClientCore.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA2230A5189F9A14002C5B6A /* AppleShareClientCore.framework */; }; BA2234BE189FA412002C5B6A /* ApplicationServices.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA2230A6189F9A14002C5B6A /* ApplicationServices.framework */; }; BA2234BF189FA412002C5B6A /* AudioToolbox.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA223097189F9958002C5B6A /* AudioToolbox.framework */; }; BA2234C0189FA412002C5B6A /* AudioUnit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA2230A7189F9A14002C5B6A /* AudioUnit.framework */; }; @@ -2028,7 +2041,9 @@ BA2234ED189FA412002C5B6A /* IOBluetoothUI.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA223151189F9AC6002C5B6A /* IOBluetoothUI.framework */; }; BA2234EE189FA412002C5B6A /* IOKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA223152189F9AC6002C5B6A /* IOKit.framework */; }; BA2234EF189FA412002C5B6A /* IOSurface.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA223153189F9AC6002C5B6A /* IOSurface.framework */; }; + BA2234F0189FA412002C5B6A /* JavaFrameEmbedding.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA223154189F9AC6002C5B6A /* JavaFrameEmbedding.framework */; }; BA2234F1189FA412002C5B6A /* JavaScriptCore.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA223155189F9AC6002C5B6A /* JavaScriptCore.framework */; }; + BA2234F2189FA412002C5B6A /* JavaVM.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA223156189F9AC6002C5B6A /* JavaVM.framework */; }; BA2234F3189FA412002C5B6A /* Kerberos.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA223157189F9AC6002C5B6A /* Kerberos.framework */; }; BA2234F4189FA412002C5B6A /* LatentSemanticMapping.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA223159189F9AC7002C5B6A /* LatentSemanticMapping.framework */; }; BA2234F5189FA412002C5B6A /* GLKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = E2DBA325161CA64B0035A675 /* GLKit.framework */; }; @@ -2051,7 +2066,6 @@ BA223506189FA412002C5B6A /* QuartzCore.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA223103189F9A99002C5B6A /* QuartzCore.framework */; }; BA223507189FA412002C5B6A /* QuickLook.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA223104189F9A99002C5B6A /* QuickLook.framework */; }; BA223508189FA412002C5B6A /* Ruby.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA223106189F9A9A002C5B6A /* Ruby.framework */; }; - BA223509189FA412002C5B6A /* RubyCocoa.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA223107189F9A9A002C5B6A /* RubyCocoa.framework */; }; BA22350A189FA412002C5B6A /* ScreenSaver.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA223108189F9A9A002C5B6A /* ScreenSaver.framework */; }; BA22350B189FA412002C5B6A /* ScriptingBridge.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA22310A189F9A9A002C5B6A /* ScriptingBridge.framework */; }; BA22350C189FA412002C5B6A /* Security.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA22310B189F9A9A002C5B6A /* Security.framework */; }; @@ -2227,26 +2241,16 @@ BA2235BE189FA429002C5B6A /* FSNewlyAllocatedObject.h in Headers */ = {isa = PBXBuildFile; fileRef = 8FCA593110883B0100F67841 /* FSNewlyAllocatedObject.h */; }; BA2235BF189FA429002C5B6A /* FSWorksWhenModalWindow.h in Headers */ = {isa = PBXBuildFile; fileRef = 8F5EDA00109B384A003A2F4C /* FSWorksWhenModalWindow.h */; }; BA2235C0189FA429002C5B6A /* FSNSMutableDictionary.h in Headers */ = {isa = PBXBuildFile; fileRef = 8F44270B116549C700E88F21 /* FSNSMutableDictionary.h */; settings = {ATTRIBUTES = (Public, ); }; }; - BA2235C2189FA429002C5B6A /* FSCollectionInspector.nib in Resources */ = {isa = PBXBuildFile; fileRef = 0CD4E31F00D7DFE17BE9C1BD /* FSCollectionInspector.nib */; }; - BA2235C3189FA429002C5B6A /* blockInspector.nib in Resources */ = {isa = PBXBuildFile; fileRef = 0CD4E32A00D7DFE17BE9C1BD /* blockInspector.nib */; }; BA2235C4189FA429002C5B6A /* FlightTutorial.txt in Resources */ = {isa = PBXBuildFile; fileRef = 0CD4E34400D7DFE17BE9C1BD /* FlightTutorial.txt */; }; BA2235C5189FA429002C5B6A /* genObjInspector.nib in Resources */ = {isa = PBXBuildFile; fileRef = 0CD4E37900D7DFE17BE9C1BD /* genObjInspector.nib */; }; BA2235C6189FA429002C5B6A /* KTest.txt in Resources */ = {isa = PBXBuildFile; fileRef = 0CD4E37D00D7DFE17BE9C1BD /* KTest.txt */; }; BA2235C7189FA429002C5B6A /* license.txt in Resources */ = {isa = PBXBuildFile; fileRef = 0CD4E37E00D7DFE17BE9C1BD /* license.txt */; }; BA2235C8189FA429002C5B6A /* fs.scriptSuite in Resources */ = {isa = PBXBuildFile; fileRef = F538EF6E0279FD3C01345511 /* fs.scriptSuite */; }; BA2235C9189FA429002C5B6A /* fs.scriptTerminology in Resources */ = {isa = PBXBuildFile; fileRef = F538EF6F0279FD3C01345511 /* fs.scriptTerminology */; }; - BA2235CA189FA429002C5B6A /* FSObjectBrowserButtonsInspector.nib in Resources */ = {isa = PBXBuildFile; fileRef = F5F9569002B272A30121B3BA /* FSObjectBrowserButtonsInspector.nib */; }; - BA2235CB189FA429002C5B6A /* FSImageInspector.nib in Resources */ = {isa = PBXBuildFile; fileRef = F54B55C3036B48690140C608 /* FSImageInspector.nib */; }; BA2235CC189FA429002C5B6A /* ReadMe.txt in Resources */ = {isa = PBXBuildFile; fileRef = F58090EB0375648201AED2EF /* ReadMe.txt */; }; - BA2235CD189FA429002C5B6A /* ArrayTableView.nib in Resources */ = {isa = PBXBuildFile; fileRef = F58090FC03756D2401AED2EF /* ArrayTableView.nib */; }; BA2235CE189FA429002C5B6A /* constantsDictionary in Resources */ = {isa = PBXBuildFile; fileRef = 8F92F0380463F2A400F4C61F /* constantsDictionary */; }; - BA2235CF189FA429002C5B6A /* FSAttributedStringInspector.nib in Resources */ = {isa = PBXBuildFile; fileRef = 8FDCCD7A05C0A0A000747C0A /* FSAttributedStringInspector.nib */; }; - BA2235D0189FA429002C5B6A /* FSConsole.nib in Resources */ = {isa = PBXBuildFile; fileRef = 8F0B64C805C5370D0099180D /* FSConsole.nib */; }; - BA2235D1189FA429002C5B6A /* FScriptPreferences.nib in Resources */ = {isa = PBXBuildFile; fileRef = 8F0B664F05C557A40099180D /* FScriptPreferences.nib */; }; BA2235D2189FA429002C5B6A /* run.tiff in Resources */ = {isa = PBXBuildFile; fileRef = 8F2D066F05CED9B9007EA81B /* run.tiff */; }; BA2235D3189FA429002C5B6A /* build.tiff in Resources */ = {isa = PBXBuildFile; fileRef = 8F56036505CF22660044FA65 /* build.tiff */; }; - BA2235D4189FA429002C5B6A /* FSCollectionInspectorView.nib in Resources */ = {isa = PBXBuildFile; fileRef = 8FA8EF9107739FD4001BEC7B /* FSCollectionInspectorView.nib */; }; - BA2235D5189FA429002C5B6A /* FSManagedObjectContextInspector.nib in Resources */ = {isa = PBXBuildFile; fileRef = 8FCA6B79078E0E4F005FC6B2 /* FSManagedObjectContextInspector.nib */; }; BA2235D6189FA429002C5B6A /* FSMovieInspector.nib in Resources */ = {isa = PBXBuildFile; fileRef = 8F7472BE056B7ACE00E87339 /* FSMovieInspector.nib */; }; BA2235D7189FA429002C5B6A /* FSTestClasses.txt in Resources */ = {isa = PBXBuildFile; fileRef = 8FE3DC990D26C0FD00A1D767 /* FSTestClasses.txt */; }; BA2235D9189FA429002C5B6A /* FSAirplane.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E31000D7DFE17BE9C1BD /* FSAirplane.m */; }; @@ -2254,7 +2258,7 @@ BA2235DB189FA429002C5B6A /* ArrayRepEmpty.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E31A00D7DFE17BE9C1BD /* ArrayRepEmpty.m */; }; BA2235DC189FA429002C5B6A /* ArrayRepId.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E31C00D7DFE17BE9C1BD /* ArrayRepId.m */; }; BA2235DD189FA429002C5B6A /* FSCollectionInspector.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E31E00D7DFE17BE9C1BD /* FSCollectionInspector.m */; }; - BA2235DE189FA429002C5B6A /* FSObjectBrowser.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E32100D7DFE17BE9C1BD /* FSObjectBrowser.m */; }; + BA2235DE189FA429002C5B6A /* FSObjectBrowser.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E32100D7DFE17BE9C1BD /* FSObjectBrowser.m */; settings = {COMPILER_FLAGS = "-fobjc-arc"; }; }; BA2235DF189FA429002C5B6A /* FSObjectBrowserCell.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E32300D7DFE17BE9C1BD /* FSObjectBrowserCell.m */; }; BA2235E0189FA429002C5B6A /* FSBlock.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E32700D7DFE17BE9C1BD /* FSBlock.m */; }; BA2235E1189FA429002C5B6A /* BlockInspector.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E32900D7DFE17BE9C1BD /* BlockInspector.m */; }; @@ -2332,7 +2336,7 @@ BA223629189FA429002C5B6A /* FSNSAttributedString.m in Sources */ = {isa = PBXBuildFile; fileRef = 8FDCCDC005C0A23000747C0A /* FSNSAttributedString.m */; }; BA22362A189FA429002C5B6A /* FScriptMenuItem.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F0B66FC05C5639E0099180D /* FScriptMenuItem.m */; }; BA22362B189FA429002C5B6A /* FSNSFont.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F658B2805C9694F0040FB24 /* FSNSFont.m */; }; - BA22362C189FA429002C5B6A /* FSObjectBrowserMatrix.m in Sources */ = {isa = PBXBuildFile; fileRef = 8FB5060005D53C8600153B33 /* FSObjectBrowserMatrix.m */; }; + BA22362C189FA429002C5B6A /* FSObjectBrowserMatrix.m in Sources */ = {isa = PBXBuildFile; fileRef = 8FB5060005D53C8600153B33 /* FSObjectBrowserMatrix.m */; settings = {COMPILER_FLAGS = "-fobjc-arc"; }; }; BA22362D189FA429002C5B6A /* FSSymbolTable.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F17C07E06B1309C00F07862 /* FSSymbolTable.m */; }; BA22362E189FA429002C5B6A /* FSObjectBrowserViewObjectInfo.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F4E294D075B8E5600F8DCDB /* FSObjectBrowserViewObjectInfo.m */; }; BA22362F189FA429002C5B6A /* FSCollectionInspectorView.m in Sources */ = {isa = PBXBuildFile; fileRef = 8FA8EDD307735B3B001BEC7B /* FSCollectionInspectorView.m */; }; @@ -2385,6 +2389,8 @@ BA22365E189FA429002C5B6A /* FSNewlyAllocatedObject.m in Sources */ = {isa = PBXBuildFile; fileRef = 8FCA593210883B0100F67841 /* FSNewlyAllocatedObject.m */; }; BA22365F189FA429002C5B6A /* FSWorksWhenModalWindow.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F5EDA01109B384A003A2F4C /* FSWorksWhenModalWindow.m */; }; BA223660189FA429002C5B6A /* FSNSMutableDictionary.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F44270C116549C700E88F21 /* FSNSMutableDictionary.m */; }; + BA223662189FA429002C5B6A /* Cocoa.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 8F85274707F6016900E706F5 /* Cocoa.framework */; }; + BA223663189FA429002C5B6A /* ExceptionHandling.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = F51B24640271980D01DB4759 /* ExceptionHandling.framework */; }; BA22366C189FA431002C5B6A /* BlockSignature.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E32E00D7DFE17BE9C1BD /* BlockSignature.h */; settings = {ATTRIBUTES = (Public, ); }; }; BA22366D189FA431002C5B6A /* FSAirplane.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E30F00D7DFE17BE9C1BD /* FSAirplane.h */; settings = {ATTRIBUTES = (Public, ); }; }; BA22366E189FA431002C5B6A /* ArrayPrivate.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E31300D7DFE17BE9C1BD /* ArrayPrivate.h */; }; @@ -2542,26 +2548,16 @@ BA223706189FA431002C5B6A /* FSNewlyAllocatedObject.h in Headers */ = {isa = PBXBuildFile; fileRef = 8FCA593110883B0100F67841 /* FSNewlyAllocatedObject.h */; }; BA223707189FA431002C5B6A /* FSWorksWhenModalWindow.h in Headers */ = {isa = PBXBuildFile; fileRef = 8F5EDA00109B384A003A2F4C /* FSWorksWhenModalWindow.h */; }; BA223708189FA431002C5B6A /* FSNSMutableDictionary.h in Headers */ = {isa = PBXBuildFile; fileRef = 8F44270B116549C700E88F21 /* FSNSMutableDictionary.h */; settings = {ATTRIBUTES = (Public, ); }; }; - BA22370A189FA431002C5B6A /* FSCollectionInspector.nib in Resources */ = {isa = PBXBuildFile; fileRef = 0CD4E31F00D7DFE17BE9C1BD /* FSCollectionInspector.nib */; }; - BA22370B189FA431002C5B6A /* blockInspector.nib in Resources */ = {isa = PBXBuildFile; fileRef = 0CD4E32A00D7DFE17BE9C1BD /* blockInspector.nib */; }; BA22370C189FA431002C5B6A /* FlightTutorial.txt in Resources */ = {isa = PBXBuildFile; fileRef = 0CD4E34400D7DFE17BE9C1BD /* FlightTutorial.txt */; }; BA22370D189FA431002C5B6A /* genObjInspector.nib in Resources */ = {isa = PBXBuildFile; fileRef = 0CD4E37900D7DFE17BE9C1BD /* genObjInspector.nib */; }; BA22370E189FA431002C5B6A /* KTest.txt in Resources */ = {isa = PBXBuildFile; fileRef = 0CD4E37D00D7DFE17BE9C1BD /* KTest.txt */; }; BA22370F189FA431002C5B6A /* license.txt in Resources */ = {isa = PBXBuildFile; fileRef = 0CD4E37E00D7DFE17BE9C1BD /* license.txt */; }; BA223710189FA431002C5B6A /* fs.scriptSuite in Resources */ = {isa = PBXBuildFile; fileRef = F538EF6E0279FD3C01345511 /* fs.scriptSuite */; }; BA223711189FA431002C5B6A /* fs.scriptTerminology in Resources */ = {isa = PBXBuildFile; fileRef = F538EF6F0279FD3C01345511 /* fs.scriptTerminology */; }; - BA223712189FA431002C5B6A /* FSObjectBrowserButtonsInspector.nib in Resources */ = {isa = PBXBuildFile; fileRef = F5F9569002B272A30121B3BA /* FSObjectBrowserButtonsInspector.nib */; }; - BA223713189FA431002C5B6A /* FSImageInspector.nib in Resources */ = {isa = PBXBuildFile; fileRef = F54B55C3036B48690140C608 /* FSImageInspector.nib */; }; BA223714189FA431002C5B6A /* ReadMe.txt in Resources */ = {isa = PBXBuildFile; fileRef = F58090EB0375648201AED2EF /* ReadMe.txt */; }; - BA223715189FA431002C5B6A /* ArrayTableView.nib in Resources */ = {isa = PBXBuildFile; fileRef = F58090FC03756D2401AED2EF /* ArrayTableView.nib */; }; BA223716189FA431002C5B6A /* constantsDictionary in Resources */ = {isa = PBXBuildFile; fileRef = 8F92F0380463F2A400F4C61F /* constantsDictionary */; }; - BA223717189FA431002C5B6A /* FSAttributedStringInspector.nib in Resources */ = {isa = PBXBuildFile; fileRef = 8FDCCD7A05C0A0A000747C0A /* FSAttributedStringInspector.nib */; }; - BA223718189FA431002C5B6A /* FSConsole.nib in Resources */ = {isa = PBXBuildFile; fileRef = 8F0B64C805C5370D0099180D /* FSConsole.nib */; }; - BA223719189FA431002C5B6A /* FScriptPreferences.nib in Resources */ = {isa = PBXBuildFile; fileRef = 8F0B664F05C557A40099180D /* FScriptPreferences.nib */; }; BA22371A189FA431002C5B6A /* run.tiff in Resources */ = {isa = PBXBuildFile; fileRef = 8F2D066F05CED9B9007EA81B /* run.tiff */; }; BA22371B189FA431002C5B6A /* build.tiff in Resources */ = {isa = PBXBuildFile; fileRef = 8F56036505CF22660044FA65 /* build.tiff */; }; - BA22371C189FA431002C5B6A /* FSCollectionInspectorView.nib in Resources */ = {isa = PBXBuildFile; fileRef = 8FA8EF9107739FD4001BEC7B /* FSCollectionInspectorView.nib */; }; - BA22371D189FA431002C5B6A /* FSManagedObjectContextInspector.nib in Resources */ = {isa = PBXBuildFile; fileRef = 8FCA6B79078E0E4F005FC6B2 /* FSManagedObjectContextInspector.nib */; }; BA22371E189FA431002C5B6A /* FSMovieInspector.nib in Resources */ = {isa = PBXBuildFile; fileRef = 8F7472BE056B7ACE00E87339 /* FSMovieInspector.nib */; }; BA22371F189FA431002C5B6A /* FSTestClasses.txt in Resources */ = {isa = PBXBuildFile; fileRef = 8FE3DC990D26C0FD00A1D767 /* FSTestClasses.txt */; }; BA223721189FA431002C5B6A /* FSAirplane.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E31000D7DFE17BE9C1BD /* FSAirplane.m */; }; @@ -2569,7 +2565,7 @@ BA223723189FA431002C5B6A /* ArrayRepEmpty.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E31A00D7DFE17BE9C1BD /* ArrayRepEmpty.m */; }; BA223724189FA431002C5B6A /* ArrayRepId.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E31C00D7DFE17BE9C1BD /* ArrayRepId.m */; }; BA223725189FA431002C5B6A /* FSCollectionInspector.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E31E00D7DFE17BE9C1BD /* FSCollectionInspector.m */; }; - BA223726189FA431002C5B6A /* FSObjectBrowser.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E32100D7DFE17BE9C1BD /* FSObjectBrowser.m */; }; + BA223726189FA431002C5B6A /* FSObjectBrowser.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E32100D7DFE17BE9C1BD /* FSObjectBrowser.m */; settings = {COMPILER_FLAGS = "-fobjc-arc"; }; }; BA223727189FA431002C5B6A /* FSObjectBrowserCell.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E32300D7DFE17BE9C1BD /* FSObjectBrowserCell.m */; }; BA223728189FA431002C5B6A /* FSBlock.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E32700D7DFE17BE9C1BD /* FSBlock.m */; }; BA223729189FA431002C5B6A /* BlockInspector.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E32900D7DFE17BE9C1BD /* BlockInspector.m */; }; @@ -2647,7 +2643,7 @@ BA223771189FA431002C5B6A /* FSNSAttributedString.m in Sources */ = {isa = PBXBuildFile; fileRef = 8FDCCDC005C0A23000747C0A /* FSNSAttributedString.m */; }; BA223772189FA431002C5B6A /* FScriptMenuItem.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F0B66FC05C5639E0099180D /* FScriptMenuItem.m */; }; BA223773189FA431002C5B6A /* FSNSFont.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F658B2805C9694F0040FB24 /* FSNSFont.m */; }; - BA223774189FA431002C5B6A /* FSObjectBrowserMatrix.m in Sources */ = {isa = PBXBuildFile; fileRef = 8FB5060005D53C8600153B33 /* FSObjectBrowserMatrix.m */; }; + BA223774189FA431002C5B6A /* FSObjectBrowserMatrix.m in Sources */ = {isa = PBXBuildFile; fileRef = 8FB5060005D53C8600153B33 /* FSObjectBrowserMatrix.m */; settings = {COMPILER_FLAGS = "-fobjc-arc"; }; }; BA223775189FA431002C5B6A /* FSSymbolTable.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F17C07E06B1309C00F07862 /* FSSymbolTable.m */; }; BA223776189FA431002C5B6A /* FSObjectBrowserViewObjectInfo.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F4E294D075B8E5600F8DCDB /* FSObjectBrowserViewObjectInfo.m */; }; BA223777189FA431002C5B6A /* FSCollectionInspectorView.m in Sources */ = {isa = PBXBuildFile; fileRef = 8FA8EDD307735B3B001BEC7B /* FSCollectionInspectorView.m */; }; @@ -2700,809 +2696,1026 @@ BA2237A6189FA432002C5B6A /* FSNewlyAllocatedObject.m in Sources */ = {isa = PBXBuildFile; fileRef = 8FCA593210883B0100F67841 /* FSNewlyAllocatedObject.m */; }; BA2237A7189FA432002C5B6A /* FSWorksWhenModalWindow.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F5EDA01109B384A003A2F4C /* FSWorksWhenModalWindow.m */; }; BA2237A8189FA432002C5B6A /* FSNSMutableDictionary.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F44270C116549C700E88F21 /* FSNSMutableDictionary.m */; }; + BA2237AA189FA432002C5B6A /* Cocoa.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 8F85274707F6016900E706F5 /* Cocoa.framework */; }; + BA2237AB189FA432002C5B6A /* ExceptionHandling.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = F51B24640271980D01DB4759 /* ExceptionHandling.framework */; }; BA2237B2189FAC75002C5B6A /* AVFoundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = E2DBA32D161CA7180035A675 /* AVFoundation.framework */; }; BA2237B3189FAC75002C5B6A /* AVKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA223099189F9976002C5B6A /* AVKit.framework */; }; - E29F5BD219FD93FD00AD90CF /* FSAirplane.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E30F00D7DFE17BE9C1BD /* FSAirplane.h */; }; - E29F5BD319FD93FD00AD90CF /* ArrayPrivate.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E31300D7DFE17BE9C1BD /* ArrayPrivate.h */; }; - E29F5BD419FD93FD00AD90CF /* ArrayRep.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E31400D7DFE17BE9C1BD /* ArrayRep.h */; }; - E29F5BD519FD93FD00AD90CF /* ArrayRepDouble.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E31700D7DFE17BE9C1BD /* ArrayRepDouble.h */; }; - E29F5BD619FD93FD00AD90CF /* ArrayRepEmpty.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E31900D7DFE17BE9C1BD /* ArrayRepEmpty.h */; }; - E29F5BD719FD93FD00AD90CF /* ArrayRepId.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E31B00D7DFE17BE9C1BD /* ArrayRepId.h */; }; - E29F5BD819FD93FD00AD90CF /* FSCollectionInspector.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E31D00D7DFE17BE9C1BD /* FSCollectionInspector.h */; }; - E29F5BD919FD93FD00AD90CF /* FSObjectBrowser.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E32000D7DFE17BE9C1BD /* FSObjectBrowser.h */; }; - E29F5BDA19FD93FD00AD90CF /* FSObjectBrowserArgumentPanel.h in Headers */ = {isa = PBXBuildFile; fileRef = F5FA8A6C0215D44C01AFEEFD /* FSObjectBrowserArgumentPanel.h */; }; - E29F5BDB19FD93FD00AD90CF /* FSObjectBrowserCell.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E32200D7DFE17BE9C1BD /* FSObjectBrowserCell.h */; }; - E29F5BDC19FD93FD00AD90CF /* FSObjectBrowserView.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E32400D7DFE17BE9C1BD /* FSObjectBrowserView.h */; }; - E29F5BDD19FD93FD00AD90CF /* FSBlock.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E32600D7DFE17BE9C1BD /* FSBlock.h */; }; - E29F5BDE19FD93FD00AD90CF /* BlockInspector.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E32800D7DFE17BE9C1BD /* BlockInspector.h */; }; - E29F5BDF19FD93FD00AD90CF /* BlockPrivate.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E32B00D7DFE17BE9C1BD /* BlockPrivate.h */; }; - E29F5BE019FD93FD00AD90CF /* BlockRep.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E32C00D7DFE17BE9C1BD /* BlockRep.h */; }; - E29F5BE119FD93FD00AD90CF /* BlockSignature.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E32E00D7DFE17BE9C1BD /* BlockSignature.h */; }; - E29F5BE219FD93FD00AD90CF /* BlockStackElem.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E32F00D7DFE17BE9C1BD /* BlockStackElem.h */; }; - E29F5BE319FD93FD00AD90CF /* build_config.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E33200D7DFE17BE9C1BD /* build_config.h */; }; - E29F5BE419FD93FD00AD90CF /* CLIView.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E33300D7DFE17BE9C1BD /* CLIView.h */; }; - E29F5BE519FD93FD00AD90CF /* FSCompilationResult.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E33500D7DFE17BE9C1BD /* FSCompilationResult.h */; }; - E29F5BE619FD93FD00AD90CF /* CompiledCodeNode.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E33700D7DFE17BE9C1BD /* CompiledCodeNode.h */; }; - E29F5BE719FD93FD00AD90CF /* FSCompiler.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E33900D7DFE17BE9C1BD /* FSCompiler.h */; }; - E29F5BE819FD93FD00AD90CF /* FSConstantsInitialization.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E33B00D7DFE17BE9C1BD /* FSConstantsInitialization.h */; }; - E29F5BE919FD93FD00AD90CF /* FSExecEngine.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E33D00D7DFE17BE9C1BD /* FSExecEngine.h */; }; - E29F5BEA19FD93FD00AD90CF /* FSExecutor.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E33F00D7DFE17BE9C1BD /* FSExecutor.h */; }; - E29F5BEB19FD93FD00AD90CF /* FSFlight.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E34200D7DFE17BE9C1BD /* FSFlight.h */; }; - E29F5BEC19FD93FD00AD90CF /* FSArchiver.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E34500D7DFE17BE9C1BD /* FSArchiver.h */; }; - E29F5BED19FD93FD00AD90CF /* FSBoolean.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E34700D7DFE17BE9C1BD /* FSBoolean.h */; }; - E29F5BEE19FD93FD00AD90CF /* FSBooleanPrivate.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E34900D7DFE17BE9C1BD /* FSBooleanPrivate.h */; }; - E29F5BEF19FD93FD00AD90CF /* FScript.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E34C00D7DFE17BE9C1BD /* FScript.h */; }; - E29F5BF019FD93FD00AD90CF /* FScriptFunctions.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E34E00D7DFE17BE9C1BD /* FScriptFunctions.h */; }; - E29F5BF119FD93FD00AD90CF /* FScriptTextView.h in Headers */ = {isa = PBXBuildFile; fileRef = F5FBEF2802149D32018C0134 /* FScriptTextView.h */; }; - E29F5BF219FD93FD00AD90CF /* FSInterpreter.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E35000D7DFE17BE9C1BD /* FSInterpreter.h */; }; - E29F5BF319FD93FD00AD90CF /* FSInterpreterResult.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E35200D7DFE17BE9C1BD /* FSInterpreterResult.h */; }; - E29F5BF419FD93FD00AD90CF /* FSInterpreterResultPrivate.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E35400D7DFE17BE9C1BD /* FSInterpreterResultPrivate.h */; }; - E29F5BF519FD93FD00AD90CF /* FSInterpreterView.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E35500D7DFE17BE9C1BD /* FSInterpreterView.h */; }; - E29F5BF619FD93FD00AD90CF /* FSInterpreterViewIBHeader.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E35700D7DFE17BE9C1BD /* FSInterpreterViewIBHeader.h */; }; - E29F5BF719FD93FD00AD90CF /* FSNSArray.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E35800D7DFE17BE9C1BD /* FSNSArray.h */; }; - E29F5BF819FD93FD00AD90CF /* FSNSArrayPrivate.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E35A00D7DFE17BE9C1BD /* FSNSArrayPrivate.h */; }; - E29F5BF919FD93FD00AD90CF /* FSNSDate.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E35B00D7DFE17BE9C1BD /* FSNSDate.h */; }; - E29F5BFA19FD93FD00AD90CF /* FSNSDictionary.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E35D00D7DFE17BE9C1BD /* FSNSDictionary.h */; }; - E29F5BFB19FD93FD00AD90CF /* FSNSDistantObject.h in Headers */ = {isa = PBXBuildFile; fileRef = F51CA01401B013C401BFBB24 /* FSNSDistantObject.h */; }; - E29F5BFC19FD93FD00AD90CF /* FSNSMutableString.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E35F00D7DFE17BE9C1BD /* FSNSMutableString.h */; }; - E29F5BFD19FD93FD00AD90CF /* FSNSNumber.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E36100D7DFE17BE9C1BD /* FSNSNumber.h */; }; - E29F5BFE19FD93FD00AD90CF /* FSNSObject.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E36300D7DFE17BE9C1BD /* FSNSObject.h */; }; - E29F5BFF19FD93FD00AD90CF /* FSNSProxy.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E36500D7DFE17BE9C1BD /* FSNSProxy.h */; }; - E29F5C0019FD93FD00AD90CF /* FSPattern.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E36C00D7DFE17BE9C1BD /* FSPattern.h */; }; - E29F5C0119FD93FD00AD90CF /* FSUnarchiver.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E37200D7DFE17BE9C1BD /* FSUnarchiver.h */; }; - E29F5C0219FD93FD00AD90CF /* FSVoid.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E37400D7DFE17BE9C1BD /* FSVoid.h */; }; - E29F5C0319FD93FD00AD90CF /* FSVoidPrivate.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E37600D7DFE17BE9C1BD /* FSVoidPrivate.h */; }; - E29F5C0419FD93FD00AD90CF /* FSGenericObjectInspector.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E37700D7DFE17BE9C1BD /* FSGenericObjectInspector.h */; }; - E29F5C0519FD93FD00AD90CF /* KTestManager.h in Headers */ = {isa = PBXBuildFile; fileRef = 66029E580161E0650055708C /* KTestManager.h */; }; - E29F5C0619FD93FD00AD90CF /* MessagePatternCodeNode.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E37F00D7DFE17BE9C1BD /* MessagePatternCodeNode.h */; }; - E29F5C0719FD93FD00AD90CF /* FSMiscTools.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E38100D7DFE17BE9C1BD /* FSMiscTools.h */; }; - E29F5C0819FD93FD00AD90CF /* FSMsgContext.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E38300D7DFE17BE9C1BD /* FSMsgContext.h */; }; - E29F5C0919FD93FD00AD90CF /* FSNewlyAllocatedObjectHolder.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E38700D7DFE17BE9C1BD /* FSNewlyAllocatedObjectHolder.h */; }; - E29F5C0A19FD93FD00AD90CF /* FSNumber.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E38D00D7DFE17BE9C1BD /* FSNumber.h */; }; - E29F5C0B19FD93FD00AD90CF /* NumberPrivate.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E38F00D7DFE17BE9C1BD /* NumberPrivate.h */; }; - E29F5C0C19FD93FD00AD90CF /* FSPilot.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E39000D7DFE17BE9C1BD /* FSPilot.h */; }; - E29F5C0D19FD93FD00AD90CF /* FSReplacementForCoderForClass.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E39400D7DFE17BE9C1BD /* FSReplacementForCoderForClass.h */; }; - E29F5C0E19FD93FD00AD90CF /* ShellView.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E39600D7DFE17BE9C1BD /* ShellView.h */; }; - E29F5C0F19FD93FD00AD90CF /* Space.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E39800D7DFE17BE9C1BD /* Space.h */; }; - E29F5C1019FD93FD00AD90CF /* FSCommandHistory.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E39A00D7DFE17BE9C1BD /* FSCommandHistory.h */; }; - E29F5C1119FD93FD00AD90CF /* FSSystem.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E39E00D7DFE17BE9C1BD /* FSSystem.h */; }; - E29F5C1219FD93FD00AD90CF /* DOTest.h in Headers */ = {isa = PBXBuildFile; fileRef = F5F13B4701C8BE3401CB6DF7 /* DOTest.h */; }; - E29F5C1319FD93FD00AD90CF /* FSNSProtocolChecker.h in Headers */ = {isa = PBXBuildFile; fileRef = F5F140590223CC9D01DD698C /* FSNSProtocolChecker.h */; }; - E29F5C1419FD93FD00AD90CF /* FScriptAppController.h in Headers */ = {isa = PBXBuildFile; fileRef = F5F1A9F9022E9A96011160FE /* FScriptAppController.h */; }; - E29F5C1519FD93FD00AD90CF /* FSObjectBrowserToolbar.h in Headers */ = {isa = PBXBuildFile; fileRef = F538EF6C0279FD3C01345511 /* FSObjectBrowserToolbar.h */; }; - E29F5C1619FD93FD00AD90CF /* FSEvalCommand.h in Headers */ = {isa = PBXBuildFile; fileRef = F538EF700279FD3C01345511 /* FSEvalCommand.h */; }; - E29F5C1719FD93FD00AD90CF /* FSServicesProvider.h in Headers */ = {isa = PBXBuildFile; fileRef = F538EF7C0279FD3C01345511 /* FSServicesProvider.h */; }; - E29F5C1819FD93FD00AD90CF /* FSTask.h in Headers */ = {isa = PBXBuildFile; fileRef = F538EF7E0279FD3C01345511 /* FSTask.h */; }; - E29F5C1919FD93FD00AD90CF /* FSObjectBrowserToolbarButton.h in Headers */ = {isa = PBXBuildFile; fileRef = F5F0AD420285792F0103CD49 /* FSObjectBrowserToolbarButton.h */; }; - E29F5C1A19FD93FD00AD90CF /* FSObjectBrowserButtonCtxBlock.h in Headers */ = {isa = PBXBuildFile; fileRef = F5F0261F02C243D20155CB83 /* FSObjectBrowserButtonCtxBlock.h */; }; - E29F5C1B19FD93FD00AD90CF /* DOCustom.h in Headers */ = {isa = PBXBuildFile; fileRef = F5F1AAAE022E9E4F011160FE /* DOCustom.h */; }; - E29F5C1C19FD93FD00AD90CF /* Pointer.h in Headers */ = {isa = PBXBuildFile; fileRef = F505648002DF417501FE0326 /* Pointer.h */; }; - E29F5C1D19FD93FD00AD90CF /* PointerPrivate.h in Headers */ = {isa = PBXBuildFile; fileRef = F5F856C002EB281C01F7E6F0 /* PointerPrivate.h */; }; - E29F5C1E19FD93FD00AD90CF /* FSInterpreterPrivate.h in Headers */ = {isa = PBXBuildFile; fileRef = F54CA17602FB2CAF01C25A35 /* FSInterpreterPrivate.h */; }; - E29F5C1F19FD93FD00AD90CF /* FSIdentifierFormatter.h in Headers */ = {isa = PBXBuildFile; fileRef = F5073A2102FC5400013656B0 /* FSIdentifierFormatter.h */; }; - E29F5C2019FD93FD00AD90CF /* FSObjectFormatter.h in Headers */ = {isa = PBXBuildFile; fileRef = F5EBBE820321029601CA10C6 /* FSObjectFormatter.h */; }; - E29F5C2119FD93FD00AD90CF /* FSSystemPrivate.h in Headers */ = {isa = PBXBuildFile; fileRef = F5A25E260357B373011A39F8 /* FSSystemPrivate.h */; }; - E29F5C2219FD93FD00AD90CF /* FSKeyedUnarchiver.h in Headers */ = {isa = PBXBuildFile; fileRef = F55D44C40358A88801B9E934 /* FSKeyedUnarchiver.h */; }; - E29F5C2319FD93FD00AD90CF /* FSKeyedArchiver.h in Headers */ = {isa = PBXBuildFile; fileRef = F55D44CE0358B5D201B9E934 /* FSKeyedArchiver.h */; }; - E29F5C2419FD93FD00AD90CF /* FSConstantListBuilder.h in Headers */ = {isa = PBXBuildFile; fileRef = F52EECA6036210E2016141BB /* FSConstantListBuilder.h */; }; - E29F5C2519FD93FD00AD90CF /* FSImageInspector.h in Headers */ = {isa = PBXBuildFile; fileRef = F54B55B9036B45770140C608 /* FSImageInspector.h */; }; - E29F5C2619FD93FD00AD90CF /* FSNSImage.h in Headers */ = {isa = PBXBuildFile; fileRef = F54B55C8036B4A330140C608 /* FSNSImage.h */; }; - E29F5C2719FD93FD00AD90CF /* FSObjectBrowserToolbarItem.h in Headers */ = {isa = PBXBuildFile; fileRef = F58090CF03755FC701AED2EF /* FSObjectBrowserToolbarItem.h */; }; - E29F5C2819FD93FD00AD90CF /* FSNSObjectPrivate.h in Headers */ = {isa = PBXBuildFile; fileRef = 8F63CC08044B95DB00B84480 /* FSNSObjectPrivate.h */; }; - E29F5C2919FD93FD00AD90CF /* FSArrayEnumerator.h in Headers */ = {isa = PBXBuildFile; fileRef = 8FA3AE55044D4D6700CF7A3A /* FSArrayEnumerator.h */; }; - E29F5C2A19FD93FD00AD90CF /* FSNSMutableArray.h in Headers */ = {isa = PBXBuildFile; fileRef = 8F66F85404666E8100AFC811 /* FSNSMutableArray.h */; }; - E29F5C2B19FD93FD00AD90CF /* FSObjectBrowserButtonsInspector.h in Headers */ = {isa = PBXBuildFile; fileRef = F5F9569602B272FB0121B3BA /* FSObjectBrowserButtonsInspector.h */; }; - E29F5C2C19FD93FD00AD90CF /* ArrayRepBoolean.h in Headers */ = {isa = PBXBuildFile; fileRef = F5D4BE29038511FF01461810 /* ArrayRepBoolean.h */; }; - E29F5C2D19FD93FD00AD90CF /* FSNSValue.h in Headers */ = {isa = PBXBuildFile; fileRef = 8F553BF70585222700A92293 /* FSNSValue.h */; }; - E29F5C2E19FD93FD00AD90CF /* FSReplacementForCoderForNilInArray.h in Headers */ = {isa = PBXBuildFile; fileRef = 8F7D7DB7058E32CD00F1B8A8 /* FSReplacementForCoderForNilInArray.h */; }; - E29F5C2F19FD93FD00AD90CF /* FSNamedNumber.h in Headers */ = {isa = PBXBuildFile; fileRef = 8F0E3B7E059F3DBB003F6CE9 /* FSNamedNumber.h */; }; - E29F5C3019FD93FD00AD90CF /* FSCollectionInspectorTableView.h in Headers */ = {isa = PBXBuildFile; fileRef = 8F60216E05A25CDC0004EFF1 /* FSCollectionInspectorTableView.h */; }; - E29F5C3119FD93FD00AD90CF /* FSNSSet.h in Headers */ = {isa = PBXBuildFile; fileRef = 8F60F24505A9FE8B00985FEC /* FSNSSet.h */; }; - E29F5C3219FD93FD00AD90CF /* FSAttributedStringInspector.h in Headers */ = {isa = PBXBuildFile; fileRef = 8FDCCD4E05C09F8200747C0A /* FSAttributedStringInspector.h */; }; - E29F5C3319FD93FD00AD90CF /* FSNSAttributedString.h in Headers */ = {isa = PBXBuildFile; fileRef = 8FDCCDBF05C0A23000747C0A /* FSNSAttributedString.h */; }; - E29F5C3419FD93FD00AD90CF /* FSInterpreterViewPrivate.h in Headers */ = {isa = PBXBuildFile; fileRef = 8F71F72205C43A7D00C34794 /* FSInterpreterViewPrivate.h */; }; - E29F5C3519FD93FD00AD90CF /* FScriptMenuItem.h in Headers */ = {isa = PBXBuildFile; fileRef = 8F0B66FB05C5639E0099180D /* FScriptMenuItem.h */; }; - E29F5C3619FD93FD00AD90CF /* FSNSFont.h in Headers */ = {isa = PBXBuildFile; fileRef = 8F658B2705C9694F0040FB24 /* FSNSFont.h */; }; - E29F5C3719FD93FD00AD90CF /* FSObjectBrowserMatrix.h in Headers */ = {isa = PBXBuildFile; fileRef = 8FB505FF05D53C8600153B33 /* FSObjectBrowserMatrix.h */; }; - E29F5C3819FD93FD00AD90CF /* FSNSString.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E36700D7DFE17BE9C1BD /* FSNSString.h */; }; - E29F5C3919FD93FD00AD90CF /* FSNSStringPrivate.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E36900D7DFE17BE9C1BD /* FSNSStringPrivate.h */; }; - E29F5C3A19FD93FD00AD90CF /* FSSymbolTable.h in Headers */ = {isa = PBXBuildFile; fileRef = 8F17C07D06B1309C00F07862 /* FSSymbolTable.h */; }; - E29F5C3B19FD93FD00AD90CF /* TestFS.h in Headers */ = {isa = PBXBuildFile; fileRef = 8FBB10A4044E28FD00181279 /* TestFS.h */; }; - E29F5C3C19FD93FD00AD90CF /* FSObjectBrowserViewObjectInfo.h in Headers */ = {isa = PBXBuildFile; fileRef = 8F4E294C075B8E5600F8DCDB /* FSObjectBrowserViewObjectInfo.h */; }; - E29F5C3D19FD93FD00AD90CF /* FSCollectionInspectorView.h in Headers */ = {isa = PBXBuildFile; fileRef = 8FA8EDC607735B3B001BEC7B /* FSCollectionInspectorView.h */; }; - E29F5C3E19FD93FD00AD90CF /* ArrayRepFetchRequest.h in Headers */ = {isa = PBXBuildFile; fileRef = 8FBC2877077B7D5200F9B4A2 /* ArrayRepFetchRequest.h */; }; - E29F5C3F19FD93FD00AD90CF /* FSPointer.h in Headers */ = {isa = PBXBuildFile; fileRef = 8F8EA70B077F6A5200AC1C96 /* FSPointer.h */; }; - E29F5C4019FD93FD00AD90CF /* FSGenericPointer.h in Headers */ = {isa = PBXBuildFile; fileRef = 8F8EA779077F6C9300AC1C96 /* FSGenericPointer.h */; }; - E29F5C4119FD93FD00AD90CF /* FSPointerPrivate.h in Headers */ = {isa = PBXBuildFile; fileRef = 8F8EA7E8077F719800AC1C96 /* FSPointerPrivate.h */; }; - E29F5C4219FD93FD00AD90CF /* FSGenericPointerPrivate.h in Headers */ = {isa = PBXBuildFile; fileRef = 8F8EA841077F79A000AC1C96 /* FSGenericPointerPrivate.h */; }; - E29F5C4319FD93FD00AD90CF /* FSObjectPointer.h in Headers */ = {isa = PBXBuildFile; fileRef = 8FE9AE12078071CC005B2CC4 /* FSObjectPointer.h */; }; - E29F5C4419FD93FD00AD90CF /* FSObjectPointerPrivate.h in Headers */ = {isa = PBXBuildFile; fileRef = 8FE9AE8207807269005B2CC4 /* FSObjectPointerPrivate.h */; }; - E29F5C4519FD93FD00AD90CF /* FSManagedObjectContextInspector.h in Headers */ = {isa = PBXBuildFile; fileRef = 8F37AEC2078B7E900083565D /* FSManagedObjectContextInspector.h */; }; - E29F5C4619FD93FD00AD90CF /* FSObjectBrowserNamedObjectWrapper.h in Headers */ = {isa = PBXBuildFile; fileRef = 8F86923607F19BA8000D20A4 /* FSObjectBrowserNamedObjectWrapper.h */; }; - E29F5C4719FD93FD00AD90CF /* FSInspectorUniquier.h in Headers */ = {isa = PBXBuildFile; fileRef = 8F7F4F9C07FB274C008E42F4 /* FSInspectorUniquier.h */; }; - E29F5C4819FD93FD00AD90CF /* FSPredicateTextView.h in Headers */ = {isa = PBXBuildFile; fileRef = 8F95E3C108034A670030B65C /* FSPredicateTextView.h */; }; - E29F5C4919FD93FD00AD90CF /* FSCoreDataSample.h in Headers */ = {isa = PBXBuildFile; fileRef = 8FE7E0E6082AD964008231E8 /* FSCoreDataSample.h */; }; - E29F5C4A19FD93FD00AD90CF /* FSNSManagedObjectContext.h in Headers */ = {isa = PBXBuildFile; fileRef = 8F5189E707F072EA00A50735 /* FSNSManagedObjectContext.h */; }; - E29F5C4B19FD93FD00AD90CF /* FSObjectBrowserSearchField.h in Headers */ = {isa = PBXBuildFile; fileRef = 8F585F6E059B23F100C12B6F /* FSObjectBrowserSearchField.h */; }; - E29F5C4C19FD93FD00AD90CF /* FSBlockCompilationResult.h in Headers */ = {isa = PBXBuildFile; fileRef = 8F90A2EF096DB0660064F4BC /* FSBlockCompilationResult.h */; }; - E29F5C4D19FD93FD00AD90CF /* FSReturnSignal.h in Headers */ = {isa = PBXBuildFile; fileRef = 8FD7D4A60975B377009B2685 /* FSReturnSignal.h */; }; - E29F5C4E19FD93FD00AD90CF /* FSConstantsDictionaryGenerator.h in Headers */ = {isa = PBXBuildFile; fileRef = 8F92F0340463F03300F4C61F /* FSConstantsDictionaryGenerator.h */; }; - E29F5C4F19FD93FD00AD90CF /* FSMethod.h in Headers */ = {isa = PBXBuildFile; fileRef = 8F3C13980C65E66400948776 /* FSMethod.h */; }; - E29F5C5019FD93FD00AD90CF /* FSCNClassDefinition.h in Headers */ = {isa = PBXBuildFile; fileRef = 8F5AD3200D05CFFE000CEAC6 /* FSCNClassDefinition.h */; }; - E29F5C5119FD93FD00AD90CF /* FSCNBase.h in Headers */ = {isa = PBXBuildFile; fileRef = 8FE6397E0D09C0F400255EBA /* FSCNBase.h */; }; - E29F5C5219FD93FD00AD90CF /* FSCNIdentifier.h in Headers */ = {isa = PBXBuildFile; fileRef = 8FE6398E0D09DCB600255EBA /* FSCNIdentifier.h */; }; - E29F5C5319FD93FD00AD90CF /* FSTestObjCClass1.h in Headers */ = {isa = PBXBuildFile; fileRef = 8FE3DD200D26D49900A1D767 /* FSTestObjCClass1.h */; }; - E29F5C5419FD93FD00AD90CF /* FSTestObjCClass2.h in Headers */ = {isa = PBXBuildFile; fileRef = 8F4822020D2C317700754A4E /* FSTestObjCClass2.h */; }; - E29F5C5519FD93FD00AD90CF /* FSCNCategory.h in Headers */ = {isa = PBXBuildFile; fileRef = 8F8112F00D85E58200CB3407 /* FSCNCategory.h */; }; - E29F5C5619FD93FD00AD90CF /* FSCNMessage.h in Headers */ = {isa = PBXBuildFile; fileRef = 8F59CA6F0D86DD0800D67A78 /* FSCNMessage.h */; }; - E29F5C5719FD93FD00AD90CF /* FSCNSuper.h in Headers */ = {isa = PBXBuildFile; fileRef = 8F72237D0D870C6A00394C99 /* FSCNSuper.h */; }; - E29F5C5819FD93FD00AD90CF /* FSCNUnaryMessage.h in Headers */ = {isa = PBXBuildFile; fileRef = 8F2E341E0D8DB61C00912543 /* FSCNUnaryMessage.h */; }; - E29F5C5919FD93FD00AD90CF /* FSCNBinaryMessage.h in Headers */ = {isa = PBXBuildFile; fileRef = 8F2E34310D8DBF6A00912543 /* FSCNBinaryMessage.h */; }; - E29F5C5A19FD93FD00AD90CF /* FSCNKeywordMessage.h in Headers */ = {isa = PBXBuildFile; fileRef = 8F2E343A0D8DBFE700912543 /* FSCNKeywordMessage.h */; }; - E29F5C5B19FD93FD00AD90CF /* FSCNCascade.h in Headers */ = {isa = PBXBuildFile; fileRef = 8F5900130D9468FC003A8B17 /* FSCNCascade.h */; }; - E29F5C5C19FD93FD00AD90CF /* FSCNStatementList.h in Headers */ = {isa = PBXBuildFile; fileRef = 8F8F58640D9FE6A900ED0FED /* FSCNStatementList.h */; }; - E29F5C5D19FD93FD00AD90CF /* FSCNPrecomputedObject.h in Headers */ = {isa = PBXBuildFile; fileRef = 8F747DA70DA03AE200148342 /* FSCNPrecomputedObject.h */; }; - E29F5C5E19FD93FD00AD90CF /* FSCNArray.h in Headers */ = {isa = PBXBuildFile; fileRef = 8F747DB60DA0467100148342 /* FSCNArray.h */; }; - E29F5C5F19FD93FD00AD90CF /* FSCNBlock.h in Headers */ = {isa = PBXBuildFile; fileRef = 8FAE79AA0DA0ED5D00CB6E14 /* FSCNBlock.h */; }; - E29F5C6019FD93FD00AD90CF /* FSCNAssignment.h in Headers */ = {isa = PBXBuildFile; fileRef = 8FAE79F10DA109C500CB6E14 /* FSCNAssignment.h */; }; - E29F5C6119FD93FD00AD90CF /* FSCNMethod.h in Headers */ = {isa = PBXBuildFile; fileRef = 8F45CBBD0DA813F200AFA8C8 /* FSCNMethod.h */; }; - E29F5C6219FD93FD00AD90CF /* FSCNReturn.h in Headers */ = {isa = PBXBuildFile; fileRef = 8FD0A3120DD7276000E47459 /* FSCNReturn.h */; }; - E29F5C6319FD93FD00AD90CF /* FSClassDefinition.h in Headers */ = {isa = PBXBuildFile; fileRef = 8F8949D50DE08B110094EC14 /* FSClassDefinition.h */; }; - E29F5C6419FD93FD00AD90CF /* FSTranscript.h in Headers */ = {isa = PBXBuildFile; fileRef = 8F2DE6590E57254700CF83CB /* FSTranscript.h */; }; - E29F5C6519FD93FD00AD90CF /* FSArray.h in Headers */ = {isa = PBXBuildFile; fileRef = 8FE6AD8F0EC740650096019D /* FSArray.h */; settings = {ATTRIBUTES = (Public, ); }; }; - E29F5C6619FD93FD00AD90CF /* Array_fscript.h in Headers */ = {isa = PBXBuildFile; fileRef = 8F31A4C00EC74A2E00D1B8E8 /* Array_fscript.h */; settings = {ATTRIBUTES = (Public, ); }; }; - E29F5C6719FD93FD00AD90CF /* Block_fscript.h in Headers */ = {isa = PBXBuildFile; fileRef = 8FCA00C10EEAF34300B10420 /* Block_fscript.h */; }; - E29F5C6819FD93FD00AD90CF /* Number_fscript.h in Headers */ = {isa = PBXBuildFile; fileRef = 8FBB2FF00EEB3467007A3163 /* Number_fscript.h */; }; - E29F5C6919FD93FD00AD90CF /* FSGlobalScope.h in Headers */ = {isa = PBXBuildFile; fileRef = 8FB9D5970F1CEE2100E10274 /* FSGlobalScope.h */; }; - E29F5C6A19FD93FD00AD90CF /* FSNSFileHandle.h in Headers */ = {isa = PBXBuildFile; fileRef = 8F9D04170F1DF1CB001B8286 /* FSNSFileHandle.h */; }; - E29F5C6B19FD93FD00AD90CF /* FSAssociation.h in Headers */ = {isa = PBXBuildFile; fileRef = 8F940B810F2393B0004525E1 /* FSAssociation.h */; }; - E29F5C6C19FD93FD00AD90CF /* FSCNDictionary.h in Headers */ = {isa = PBXBuildFile; fileRef = 8F940C6E0F23BC2E004525E1 /* FSCNDictionary.h */; }; - E29F5C6D19FD93FD00AD90CF /* FSObjectBrowserBottomBarTextDisplay.h in Headers */ = {isa = PBXBuildFile; fileRef = 8F7A71290F48397C00E95364 /* FSObjectBrowserBottomBarTextDisplay.h */; }; - E29F5C6E19FD93FD00AD90CF /* FSNSAffineTransform.h in Headers */ = {isa = PBXBuildFile; fileRef = 8F2D72090F6BD9B100F0862A /* FSNSAffineTransform.h */; }; - E29F5C6F19FD93FD00AD90CF /* FSDemoAssistant.h in Headers */ = {isa = PBXBuildFile; fileRef = 8F9636430F8DF6AB00A70F39 /* FSDemoAssistant.h */; }; - E29F5C7019FD93FD00AD90CF /* FSNewlyAllocatedObject.h in Headers */ = {isa = PBXBuildFile; fileRef = 8FCA593110883B0100F67841 /* FSNewlyAllocatedObject.h */; }; - E29F5C7119FD93FD00AD90CF /* FSWorksWhenModalWindow.h in Headers */ = {isa = PBXBuildFile; fileRef = 8F5EDA00109B384A003A2F4C /* FSWorksWhenModalWindow.h */; }; - E29F5C7219FD93FD00AD90CF /* FSNSMutableDictionary.h in Headers */ = {isa = PBXBuildFile; fileRef = 8F44270B116549C700E88F21 /* FSNSMutableDictionary.h */; }; - E29F5C7419FD93FD00AD90CF /* FSTest2.app in Resources */ = {isa = PBXBuildFile; fileRef = 8FD37B9F08472E0F00524B98 /* FSTest2.app */; }; - E29F5C7519FD93FD00AD90CF /* FSTest1.app in Resources */ = {isa = PBXBuildFile; fileRef = 8FD37BA108472E0F00524B98 /* FSTest1.app */; }; - E29F5C7619FD93FD00AD90CF /* FSCollectionInspector.nib in Resources */ = {isa = PBXBuildFile; fileRef = 0CD4E31F00D7DFE17BE9C1BD /* FSCollectionInspector.nib */; }; - E29F5C7719FD93FD00AD90CF /* blockInspector.nib in Resources */ = {isa = PBXBuildFile; fileRef = 0CD4E32A00D7DFE17BE9C1BD /* blockInspector.nib */; }; - E29F5C7819FD93FD00AD90CF /* FlightTutorial.txt in Resources */ = {isa = PBXBuildFile; fileRef = 0CD4E34400D7DFE17BE9C1BD /* FlightTutorial.txt */; }; - E29F5C7919FD93FD00AD90CF /* genObjInspector.nib in Resources */ = {isa = PBXBuildFile; fileRef = 0CD4E37900D7DFE17BE9C1BD /* genObjInspector.nib */; }; - E29F5C7A19FD93FD00AD90CF /* KTest.txt in Resources */ = {isa = PBXBuildFile; fileRef = 0CD4E37D00D7DFE17BE9C1BD /* KTest.txt */; }; - E29F5C7B19FD93FD00AD90CF /* license.txt in Resources */ = {isa = PBXBuildFile; fileRef = 0CD4E37E00D7DFE17BE9C1BD /* license.txt */; }; - E29F5C7C19FD93FD00AD90CF /* fs.icns in Resources */ = {isa = PBXBuildFile; fileRef = F5F1A9F7022E9A96011160FE /* fs.icns */; }; - E29F5C7D19FD93FD00AD90CF /* FScriptAppPreference.nib in Resources */ = {isa = PBXBuildFile; fileRef = F5F1A9FB022E9A96011160FE /* FScriptAppPreference.nib */; }; - E29F5C7E19FD93FD00AD90CF /* fs.nib in Resources */ = {isa = PBXBuildFile; fileRef = F598CDB7025CF7E5011B2E41 /* fs.nib */; }; - E29F5C7F19FD93FD00AD90CF /* fs.scriptSuite in Resources */ = {isa = PBXBuildFile; fileRef = F538EF6E0279FD3C01345511 /* fs.scriptSuite */; }; - E29F5C8019FD93FD00AD90CF /* fs.scriptTerminology in Resources */ = {isa = PBXBuildFile; fileRef = F538EF6F0279FD3C01345511 /* fs.scriptTerminology */; }; - E29F5C8119FD93FD00AD90CF /* FSObjectBrowserButtonsInspector.nib in Resources */ = {isa = PBXBuildFile; fileRef = F5F9569002B272A30121B3BA /* FSObjectBrowserButtonsInspector.nib */; }; - E29F5C8219FD93FD00AD90CF /* FSImageInspector.nib in Resources */ = {isa = PBXBuildFile; fileRef = F54B55C3036B48690140C608 /* FSImageInspector.nib */; }; - E29F5C8319FD93FD00AD90CF /* ArrayTableView.nib in Resources */ = {isa = PBXBuildFile; fileRef = F58090FC03756D2401AED2EF /* ArrayTableView.nib */; }; - E29F5C8419FD93FD00AD90CF /* constantsDictionary in Resources */ = {isa = PBXBuildFile; fileRef = 8F92F0380463F2A400F4C61F /* constantsDictionary */; }; - E29F5C8519FD93FD00AD90CF /* FSAttributedStringInspector.nib in Resources */ = {isa = PBXBuildFile; fileRef = 8FDCCD7A05C0A0A000747C0A /* FSAttributedStringInspector.nib */; }; - E29F5C8619FD93FD00AD90CF /* FSConsole.nib in Resources */ = {isa = PBXBuildFile; fileRef = 8F0B64C805C5370D0099180D /* FSConsole.nib */; }; - E29F5C8719FD93FD00AD90CF /* FScriptPreferences.nib in Resources */ = {isa = PBXBuildFile; fileRef = 8F0B664F05C557A40099180D /* FScriptPreferences.nib */; }; - E29F5C8819FD93FD00AD90CF /* run.tiff in Resources */ = {isa = PBXBuildFile; fileRef = 8F2D066F05CED9B9007EA81B /* run.tiff */; }; - E29F5C8919FD93FD00AD90CF /* build.tiff in Resources */ = {isa = PBXBuildFile; fileRef = 8F56036505CF22660044FA65 /* build.tiff */; }; - E29F5C8A19FD93FD00AD90CF /* FSCollectionInspectorView.nib in Resources */ = {isa = PBXBuildFile; fileRef = 8FA8EF9107739FD4001BEC7B /* FSCollectionInspectorView.nib */; }; - E29F5C8B19FD93FD00AD90CF /* FSManagedObjectContextInspector.nib in Resources */ = {isa = PBXBuildFile; fileRef = 8FCA6B79078E0E4F005FC6B2 /* FSManagedObjectContextInspector.nib */; }; - E29F5C8C19FD93FD00AD90CF /* FSMovieInspector.nib in Resources */ = {isa = PBXBuildFile; fileRef = 8F7472BE056B7ACE00E87339 /* FSMovieInspector.nib */; }; - E29F5C8D19FD93FD00AD90CF /* FSTestClasses.txt in Resources */ = {isa = PBXBuildFile; fileRef = 8FE3DC990D26C0FD00A1D767 /* FSTestClasses.txt */; }; - E29F5C8E19FD93FD00AD90CF /* DemoAssistant.xib in Resources */ = {isa = PBXBuildFile; fileRef = 8F9636480F8DF86600A70F39 /* DemoAssistant.xib */; }; - E29F5C9019FD93FD00AD90CF /* FSAirplane.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E31000D7DFE17BE9C1BD /* FSAirplane.m */; }; - E29F5C9119FD93FD00AD90CF /* ArrayRepDouble.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E31800D7DFE17BE9C1BD /* ArrayRepDouble.m */; }; - E29F5C9219FD93FD00AD90CF /* ArrayRepEmpty.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E31A00D7DFE17BE9C1BD /* ArrayRepEmpty.m */; }; - E29F5C9319FD93FD00AD90CF /* ArrayRepId.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E31C00D7DFE17BE9C1BD /* ArrayRepId.m */; }; - E29F5C9419FD93FD00AD90CF /* FSCollectionInspector.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E31E00D7DFE17BE9C1BD /* FSCollectionInspector.m */; }; - E29F5C9519FD93FD00AD90CF /* FSObjectBrowser.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E32100D7DFE17BE9C1BD /* FSObjectBrowser.m */; }; - E29F5C9619FD93FD00AD90CF /* FSObjectBrowserArgumentPanel.m in Sources */ = {isa = PBXBuildFile; fileRef = F5FA8A6D0215D44C01AFEEFD /* FSObjectBrowserArgumentPanel.m */; }; - E29F5C9719FD93FD00AD90CF /* FSObjectBrowserCell.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E32300D7DFE17BE9C1BD /* FSObjectBrowserCell.m */; }; - E29F5C9819FD93FD00AD90CF /* FSObjectBrowserView.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E32500D7DFE17BE9C1BD /* FSObjectBrowserView.m */; }; - E29F5C9919FD93FD00AD90CF /* FSBlock.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E32700D7DFE17BE9C1BD /* FSBlock.m */; }; - E29F5C9A19FD93FD00AD90CF /* BlockInspector.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E32900D7DFE17BE9C1BD /* BlockInspector.m */; }; - E29F5C9B19FD93FD00AD90CF /* BlockRep.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E32D00D7DFE17BE9C1BD /* BlockRep.m */; }; - E29F5C9C19FD93FD00AD90CF /* BlockStackElem.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E33000D7DFE17BE9C1BD /* BlockStackElem.m */; }; - E29F5C9D19FD93FD00AD90CF /* CLIView.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E33400D7DFE17BE9C1BD /* CLIView.m */; }; - E29F5C9E19FD93FD00AD90CF /* FSCompilationResult.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E33600D7DFE17BE9C1BD /* FSCompilationResult.m */; }; - E29F5C9F19FD93FD00AD90CF /* CompiledCodeNode.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E33800D7DFE17BE9C1BD /* CompiledCodeNode.m */; }; - E29F5CA019FD93FD00AD90CF /* FSCompiler.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E33A00D7DFE17BE9C1BD /* FSCompiler.m */; }; - E29F5CA119FD93FD00AD90CF /* FSConstantsInitialization.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E33C00D7DFE17BE9C1BD /* FSConstantsInitialization.m */; }; - E29F5CA219FD93FD00AD90CF /* FSExecEngine.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E33E00D7DFE17BE9C1BD /* FSExecEngine.m */; }; - E29F5CA319FD93FD00AD90CF /* FSExecutor.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E34000D7DFE17BE9C1BD /* FSExecutor.m */; }; - E29F5CA419FD93FD00AD90CF /* FSFlight.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E34300D7DFE17BE9C1BD /* FSFlight.m */; }; - E29F5CA519FD93FD00AD90CF /* FSArchiver.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E34600D7DFE17BE9C1BD /* FSArchiver.m */; }; - E29F5CA619FD93FD00AD90CF /* FSBoolean.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E34800D7DFE17BE9C1BD /* FSBoolean.m */; }; - E29F5CA719FD93FD00AD90CF /* FScriptFunctions.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E34F00D7DFE17BE9C1BD /* FScriptFunctions.m */; }; - E29F5CA819FD93FD00AD90CF /* FScriptTextView.m in Sources */ = {isa = PBXBuildFile; fileRef = F501AF7B021497C401A75EC5 /* FScriptTextView.m */; }; - E29F5CA919FD93FD00AD90CF /* FSInterpreter.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E35100D7DFE17BE9C1BD /* FSInterpreter.m */; }; - E29F5CAA19FD93FD00AD90CF /* FSInterpreterResult.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E35300D7DFE17BE9C1BD /* FSInterpreterResult.m */; }; - E29F5CAB19FD93FD00AD90CF /* FSInterpreterView.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E35600D7DFE17BE9C1BD /* FSInterpreterView.m */; }; - E29F5CAC19FD93FD00AD90CF /* FSNSArray.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E35900D7DFE17BE9C1BD /* FSNSArray.m */; }; - E29F5CAD19FD93FD00AD90CF /* FSNSDate.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E35C00D7DFE17BE9C1BD /* FSNSDate.m */; }; - E29F5CAE19FD93FD00AD90CF /* FSNSDictionary.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E35E00D7DFE17BE9C1BD /* FSNSDictionary.m */; }; - E29F5CAF19FD93FD00AD90CF /* FSNSDistantObject.m in Sources */ = {isa = PBXBuildFile; fileRef = F51CA01501B013C401BFBB24 /* FSNSDistantObject.m */; }; - E29F5CB019FD93FD00AD90CF /* FSNSMutableString.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E36000D7DFE17BE9C1BD /* FSNSMutableString.m */; }; - E29F5CB119FD93FD00AD90CF /* FSNSNumber.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E36200D7DFE17BE9C1BD /* FSNSNumber.m */; }; - E29F5CB219FD93FD00AD90CF /* FSNSObject.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E36400D7DFE17BE9C1BD /* FSNSObject.m */; }; - E29F5CB319FD93FD00AD90CF /* FSNSProxy.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E36600D7DFE17BE9C1BD /* FSNSProxy.m */; }; - E29F5CB419FD93FD00AD90CF /* FSPattern.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E36D00D7DFE17BE9C1BD /* FSPattern.m */; }; - E29F5CB519FD93FD00AD90CF /* FSUnarchiver.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E37300D7DFE17BE9C1BD /* FSUnarchiver.m */; }; - E29F5CB619FD93FD00AD90CF /* FSVoid.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E37500D7DFE17BE9C1BD /* FSVoid.m */; }; - E29F5CB719FD93FD00AD90CF /* FSGenericObjectInspector.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E37800D7DFE17BE9C1BD /* FSGenericObjectInspector.m */; }; - E29F5CB819FD93FD00AD90CF /* KTestManager.m in Sources */ = {isa = PBXBuildFile; fileRef = 66029E590161E0650055708C /* KTestManager.m */; }; - E29F5CB919FD93FD00AD90CF /* FSMiscTools.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E38200D7DFE17BE9C1BD /* FSMiscTools.m */; }; - E29F5CBA19FD93FD00AD90CF /* FSMsgContext.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E38400D7DFE17BE9C1BD /* FSMsgContext.m */; }; - E29F5CBB19FD93FD00AD90CF /* FSNewlyAllocatedObjectHolder.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E38800D7DFE17BE9C1BD /* FSNewlyAllocatedObjectHolder.m */; }; - E29F5CBC19FD93FD00AD90CF /* FSNumber.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E38E00D7DFE17BE9C1BD /* FSNumber.m */; }; - E29F5CBD19FD93FD00AD90CF /* FSPilot.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E39100D7DFE17BE9C1BD /* FSPilot.m */; }; - E29F5CBE19FD93FD00AD90CF /* MessagePatternCodeNode.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E38000D7DFE17BE9C1BD /* MessagePatternCodeNode.m */; }; - E29F5CBF19FD93FD00AD90CF /* FSReplacementForCoderForClass.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E39500D7DFE17BE9C1BD /* FSReplacementForCoderForClass.m */; }; - E29F5CC019FD93FD00AD90CF /* ShellView.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E39700D7DFE17BE9C1BD /* ShellView.m */; }; - E29F5CC119FD93FD00AD90CF /* Space.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E39900D7DFE17BE9C1BD /* Space.m */; }; - E29F5CC219FD93FD00AD90CF /* FSCommandHistory.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E39B00D7DFE17BE9C1BD /* FSCommandHistory.m */; }; - E29F5CC319FD93FD00AD90CF /* FSSystem.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E39F00D7DFE17BE9C1BD /* FSSystem.m */; }; - E29F5CC419FD93FD00AD90CF /* DOTest.m in Sources */ = {isa = PBXBuildFile; fileRef = F5F13B4801C8BE3401CB6DF7 /* DOTest.m */; }; - E29F5CC519FD93FD00AD90CF /* FSNSProtocolChecker.m in Sources */ = {isa = PBXBuildFile; fileRef = F5F1405A0223CC9D01DD698C /* FSNSProtocolChecker.m */; }; - E29F5CC619FD93FD00AD90CF /* fs_main.m in Sources */ = {isa = PBXBuildFile; fileRef = F5F1A9F8022E9A96011160FE /* fs_main.m */; }; - E29F5CC719FD93FD00AD90CF /* FScriptAppController.m in Sources */ = {isa = PBXBuildFile; fileRef = F5F1A9FA022E9A96011160FE /* FScriptAppController.m */; }; - E29F5CC819FD93FD00AD90CF /* FSObjectBrowserToolbar.m in Sources */ = {isa = PBXBuildFile; fileRef = F538EF6D0279FD3C01345511 /* FSObjectBrowserToolbar.m */; }; - E29F5CC919FD93FD00AD90CF /* FSEvalCommand.m in Sources */ = {isa = PBXBuildFile; fileRef = F538EF710279FD3C01345511 /* FSEvalCommand.m */; }; - E29F5CCA19FD93FD00AD90CF /* FSServicesProvider.m in Sources */ = {isa = PBXBuildFile; fileRef = F538EF7D0279FD3C01345511 /* FSServicesProvider.m */; }; - E29F5CCB19FD93FD00AD90CF /* FSTask.m in Sources */ = {isa = PBXBuildFile; fileRef = F538EF7F0279FD3C01345511 /* FSTask.m */; }; - E29F5CCC19FD93FD00AD90CF /* FSObjectBrowserToolbarButton.m in Sources */ = {isa = PBXBuildFile; fileRef = F5F0AD430285792F0103CD49 /* FSObjectBrowserToolbarButton.m */; }; - E29F5CCD19FD93FD00AD90CF /* FSObjectBrowserButtonsInspector.m in Sources */ = {isa = PBXBuildFile; fileRef = F5F9569502B272FB0121B3BA /* FSObjectBrowserButtonsInspector.m */; }; - E29F5CCE19FD93FD00AD90CF /* FSObjectBrowserButtonCtxBlock.m in Sources */ = {isa = PBXBuildFile; fileRef = F5F0261E02C243D20155CB83 /* FSObjectBrowserButtonCtxBlock.m */; }; - E29F5CCF19FD93FD00AD90CF /* DOCustom.m in Sources */ = {isa = PBXBuildFile; fileRef = F5F1AAAF022E9E4F011160FE /* DOCustom.m */; }; - E29F5CD019FD93FD00AD90CF /* Pointer.m in Sources */ = {isa = PBXBuildFile; fileRef = F505647F02DF417501FE0326 /* Pointer.m */; }; - E29F5CD119FD93FD00AD90CF /* FSIdentifierFormatter.m in Sources */ = {isa = PBXBuildFile; fileRef = F5073A2002FC5400013656B0 /* FSIdentifierFormatter.m */; }; - E29F5CD219FD93FD00AD90CF /* FSObjectFormatter.m in Sources */ = {isa = PBXBuildFile; fileRef = F5EBBE810321029601CA10C6 /* FSObjectFormatter.m */; }; - E29F5CD319FD93FD00AD90CF /* FSKeyedUnarchiver.m in Sources */ = {isa = PBXBuildFile; fileRef = F55D44C50358A88801B9E934 /* FSKeyedUnarchiver.m */; }; - E29F5CD419FD93FD00AD90CF /* FSKeyedArchiver.m in Sources */ = {isa = PBXBuildFile; fileRef = F55D44CF0358B5D201B9E934 /* FSKeyedArchiver.m */; }; - E29F5CD519FD93FD00AD90CF /* FSConstantListBuilder.m in Sources */ = {isa = PBXBuildFile; fileRef = F52EECA7036210E2016141BB /* FSConstantListBuilder.m */; }; - E29F5CD619FD93FD00AD90CF /* FSImageInspector.m in Sources */ = {isa = PBXBuildFile; fileRef = F54B55BA036B45770140C608 /* FSImageInspector.m */; }; - E29F5CD719FD93FD00AD90CF /* FSNSImage.m in Sources */ = {isa = PBXBuildFile; fileRef = F54B55C9036B4A330140C608 /* FSNSImage.m */; }; - E29F5CD819FD93FD00AD90CF /* FSObjectBrowserToolbarItem.m in Sources */ = {isa = PBXBuildFile; fileRef = F58090D003755FC701AED2EF /* FSObjectBrowserToolbarItem.m */; }; - E29F5CD919FD93FD00AD90CF /* FSArrayEnumerator.m in Sources */ = {isa = PBXBuildFile; fileRef = 8FA3AE56044D4D6700CF7A3A /* FSArrayEnumerator.m */; }; - E29F5CDA19FD93FD00AD90CF /* FSNSMutableArray.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F66F85504666E8100AFC811 /* FSNSMutableArray.m */; }; - E29F5CDB19FD93FD00AD90CF /* ArrayRepBoolean.m in Sources */ = {isa = PBXBuildFile; fileRef = F5D4BE2A038511FF01461810 /* ArrayRepBoolean.m */; }; - E29F5CDC19FD93FD00AD90CF /* FSNSValue.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F553BF80585222700A92293 /* FSNSValue.m */; }; - E29F5CDD19FD93FD00AD90CF /* FSReplacementForCoderForNilInArray.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F7D7DB8058E32CD00F1B8A8 /* FSReplacementForCoderForNilInArray.m */; }; - E29F5CDE19FD93FD00AD90CF /* FSNamedNumber.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F0E3B7F059F3DBB003F6CE9 /* FSNamedNumber.m */; }; - E29F5CDF19FD93FD00AD90CF /* FSCollectionInspectorTableView.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F60216F05A25CDC0004EFF1 /* FSCollectionInspectorTableView.m */; }; - E29F5CE019FD93FD00AD90CF /* FSNSSet.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F60F24605A9FE8B00985FEC /* FSNSSet.m */; }; - E29F5CE119FD93FD00AD90CF /* FSAttributedStringInspector.m in Sources */ = {isa = PBXBuildFile; fileRef = 8FDCCD4F05C09F8200747C0A /* FSAttributedStringInspector.m */; }; - E29F5CE219FD93FD00AD90CF /* FSNSAttributedString.m in Sources */ = {isa = PBXBuildFile; fileRef = 8FDCCDC005C0A23000747C0A /* FSNSAttributedString.m */; }; - E29F5CE319FD93FD00AD90CF /* FScriptMenuItem.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F0B66FC05C5639E0099180D /* FScriptMenuItem.m */; }; - E29F5CE419FD93FD00AD90CF /* FSNSFont.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F658B2805C9694F0040FB24 /* FSNSFont.m */; }; - E29F5CE519FD93FD00AD90CF /* FSObjectBrowserMatrix.m in Sources */ = {isa = PBXBuildFile; fileRef = 8FB5060005D53C8600153B33 /* FSObjectBrowserMatrix.m */; }; - E29F5CE619FD93FD00AD90CF /* FSNSString.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E36800D7DFE17BE9C1BD /* FSNSString.m */; }; - E29F5CE719FD93FD00AD90CF /* FSSymbolTable.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F17C07E06B1309C00F07862 /* FSSymbolTable.m */; }; - E29F5CE819FD93FD00AD90CF /* TestFS.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E3A000D7DFE17BE9C1BD /* TestFS.m */; }; - E29F5CE919FD93FD00AD90CF /* FSObjectBrowserViewObjectInfo.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F4E294D075B8E5600F8DCDB /* FSObjectBrowserViewObjectInfo.m */; }; - E29F5CEA19FD93FD00AD90CF /* FSCollectionInspectorView.m in Sources */ = {isa = PBXBuildFile; fileRef = 8FA8EDD307735B3B001BEC7B /* FSCollectionInspectorView.m */; }; - E29F5CEB19FD93FD00AD90CF /* ArrayRepFetchRequest.m in Sources */ = {isa = PBXBuildFile; fileRef = 8FBC2884077B7D5200F9B4A2 /* ArrayRepFetchRequest.m */; }; - E29F5CEC19FD93FD00AD90CF /* FSPointer.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F8EA718077F6A5200AC1C96 /* FSPointer.m */; }; - E29F5CED19FD93FD00AD90CF /* FSGenericPointer.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F8EA786077F6C9300AC1C96 /* FSGenericPointer.m */; }; - E29F5CEE19FD93FD00AD90CF /* FSObjectPointer.m in Sources */ = {isa = PBXBuildFile; fileRef = 8FE9AE1F078071CC005B2CC4 /* FSObjectPointer.m */; }; - E29F5CEF19FD93FD00AD90CF /* FSManagedObjectContextInspector.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F37AEC3078B7E900083565D /* FSManagedObjectContextInspector.m */; }; - E29F5CF019FD93FD00AD90CF /* FSObjectBrowserNamedObjectWrapper.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F86923707F19BA8000D20A4 /* FSObjectBrowserNamedObjectWrapper.m */; }; - E29F5CF119FD93FD00AD90CF /* FSInspectorUniquier.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F7F4F9D07FB274C008E42F4 /* FSInspectorUniquier.m */; }; - E29F5CF219FD93FD00AD90CF /* FSPredicateTextView.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F95E3C208034A670030B65C /* FSPredicateTextView.m */; }; - E29F5CF319FD93FD00AD90CF /* FSCoreDataSample.m in Sources */ = {isa = PBXBuildFile; fileRef = 8FE7E0E7082AD964008231E8 /* FSCoreDataSample.m */; }; - E29F5CF419FD93FD00AD90CF /* FSNSManagedObjectContext.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F5189E807F072EA00A50735 /* FSNSManagedObjectContext.m */; }; - E29F5CF519FD93FD00AD90CF /* FSObjectBrowserSearchField.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F585F6F059B23F100C12B6F /* FSObjectBrowserSearchField.m */; }; - E29F5CF619FD93FD00AD90CF /* FSBlockCompilationResult.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F90A2F0096DB0660064F4BC /* FSBlockCompilationResult.m */; }; - E29F5CF719FD93FD00AD90CF /* FSReturnSignal.m in Sources */ = {isa = PBXBuildFile; fileRef = 8FD7D4A70975B377009B2685 /* FSReturnSignal.m */; }; - E29F5CF819FD93FD00AD90CF /* FSConstantsDictionaryGenerator.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F92F0350463F03300F4C61F /* FSConstantsDictionaryGenerator.m */; }; - E29F5CF919FD93FD00AD90CF /* FSQTMovie.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F573F90056B780500F2796A /* FSQTMovie.m */; }; - E29F5CFA19FD93FD00AD90CF /* FSMovieInspector.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F573F7E056B754B00F2796A /* FSMovieInspector.m */; }; - E29F5CFB19FD93FD00AD90CF /* FSMethod.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F3C13990C65E66400948776 /* FSMethod.m */; }; - E29F5CFC19FD93FD00AD90CF /* FSCNClassDefinition.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F5AD3210D05CFFE000CEAC6 /* FSCNClassDefinition.m */; }; - E29F5CFD19FD93FD00AD90CF /* FSCNBase.m in Sources */ = {isa = PBXBuildFile; fileRef = 8FE6397F0D09C0F400255EBA /* FSCNBase.m */; }; - E29F5CFE19FD93FD00AD90CF /* FSCNIdentifier.m in Sources */ = {isa = PBXBuildFile; fileRef = 8FE6398F0D09DCB600255EBA /* FSCNIdentifier.m */; }; - E29F5CFF19FD93FD00AD90CF /* FSTestObjCClass1.m in Sources */ = {isa = PBXBuildFile; fileRef = 8FE3DD210D26D49900A1D767 /* FSTestObjCClass1.m */; }; - E29F5D0019FD93FD00AD90CF /* FSTestObjCClass2.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F4822030D2C317700754A4E /* FSTestObjCClass2.m */; }; - E29F5D0119FD93FD00AD90CF /* FSCNCategory.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F8112F10D85E58200CB3407 /* FSCNCategory.m */; }; - E29F5D0219FD93FD00AD90CF /* FSCNMessage.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F59CA700D86DD0800D67A78 /* FSCNMessage.m */; }; - E29F5D0319FD93FD00AD90CF /* FSCNSuper.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F72237E0D870C6A00394C99 /* FSCNSuper.m */; }; - E29F5D0419FD93FD00AD90CF /* FSCNUnaryMessage.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F2E341F0D8DB61C00912543 /* FSCNUnaryMessage.m */; }; - E29F5D0519FD93FD00AD90CF /* FSCNBinaryMessage.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F2E34320D8DBF6A00912543 /* FSCNBinaryMessage.m */; }; - E29F5D0619FD93FD00AD90CF /* FSCNKeywordMessage.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F2E343B0D8DBFE700912543 /* FSCNKeywordMessage.m */; }; - E29F5D0719FD93FD00AD90CF /* FSCNCascade.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F5900140D9468FC003A8B17 /* FSCNCascade.m */; }; - E29F5D0819FD93FD00AD90CF /* FSCNStatementList.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F8F58650D9FE6A900ED0FED /* FSCNStatementList.m */; }; - E29F5D0919FD93FD00AD90CF /* FSCNPrecomputedObject.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F747DA80DA03AE200148342 /* FSCNPrecomputedObject.m */; }; - E29F5D0A19FD93FD00AD90CF /* FSCNArray.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F747DB70DA0467100148342 /* FSCNArray.m */; }; - E29F5D0B19FD93FD00AD90CF /* FSCNBlock.m in Sources */ = {isa = PBXBuildFile; fileRef = 8FAE79AB0DA0ED5D00CB6E14 /* FSCNBlock.m */; }; - E29F5D0C19FD93FD00AD90CF /* FSCNAssignment.m in Sources */ = {isa = PBXBuildFile; fileRef = 8FAE79F20DA109C500CB6E14 /* FSCNAssignment.m */; }; - E29F5D0D19FD93FD00AD90CF /* FSCNMethod.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F45CBBE0DA813F200AFA8C8 /* FSCNMethod.m */; }; - E29F5D0E19FD93FD00AD90CF /* FSCNReturn.m in Sources */ = {isa = PBXBuildFile; fileRef = 8FD0A3130DD7276000E47459 /* FSCNReturn.m */; }; - E29F5D0F19FD93FD00AD90CF /* FSClassDefinition.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F8949D60DE08B110094EC14 /* FSClassDefinition.m */; }; - E29F5D1019FD93FD00AD90CF /* FSTranscript.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F2DE65A0E57254700CF83CB /* FSTranscript.m */; }; - E29F5D1119FD93FD00AD90CF /* FSArray.m in Sources */ = {isa = PBXBuildFile; fileRef = 8FE6AD900EC740650096019D /* FSArray.m */; }; - E29F5D1219FD93FD00AD90CF /* Array.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F31A4C10EC74A2E00D1B8E8 /* Array.m */; }; - E29F5D1319FD93FD00AD90CF /* Block.m in Sources */ = {isa = PBXBuildFile; fileRef = 8FCA00C20EEAF34300B10420 /* Block.m */; }; - E29F5D1419FD93FD00AD90CF /* Number.m in Sources */ = {isa = PBXBuildFile; fileRef = 8FBB2FF10EEB3467007A3163 /* Number.m */; }; - E29F5D1519FD93FD00AD90CF /* FSGlobalScope.m in Sources */ = {isa = PBXBuildFile; fileRef = 8FB9D5980F1CEE2100E10274 /* FSGlobalScope.m */; }; - E29F5D1619FD93FD00AD90CF /* FSNSFileHandle.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F9D04180F1DF1CB001B8286 /* FSNSFileHandle.m */; }; - E29F5D1719FD93FD00AD90CF /* FSAssociation.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F940B820F2393B0004525E1 /* FSAssociation.m */; }; - E29F5D1819FD93FD00AD90CF /* FSCNDictionary.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F940C6F0F23BC2E004525E1 /* FSCNDictionary.m */; }; - E29F5D1919FD93FD00AD90CF /* FSObjectBrowserBottomBarTextDisplay.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F7A712A0F48397C00E95364 /* FSObjectBrowserBottomBarTextDisplay.m */; }; - E29F5D1A19FD93FD00AD90CF /* FSNSAffineTransform.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F2D720A0F6BD9B100F0862A /* FSNSAffineTransform.m */; }; - E29F5D1B19FD93FD00AD90CF /* FSDemoAssistant.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F9636410F8DF69F00A70F39 /* FSDemoAssistant.m */; }; - E29F5D1C19FD93FD00AD90CF /* FSNewlyAllocatedObject.m in Sources */ = {isa = PBXBuildFile; fileRef = 8FCA593210883B0100F67841 /* FSNewlyAllocatedObject.m */; }; - E29F5D1D19FD93FD00AD90CF /* FSWorksWhenModalWindow.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F5EDA01109B384A003A2F4C /* FSWorksWhenModalWindow.m */; }; - E29F5D1E19FD93FD00AD90CF /* FSNSMutableDictionary.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F44270C116549C700E88F21 /* FSNSMutableDictionary.m */; }; - E29F5DA819FD94FC00AD90CF /* BlockSignature.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E32E00D7DFE17BE9C1BD /* BlockSignature.h */; settings = {ATTRIBUTES = (Public, ); }; }; - E29F5DA919FD94FC00AD90CF /* FSAirplane.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E30F00D7DFE17BE9C1BD /* FSAirplane.h */; settings = {ATTRIBUTES = (Public, ); }; }; - E29F5DAA19FD94FC00AD90CF /* ArrayPrivate.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E31300D7DFE17BE9C1BD /* ArrayPrivate.h */; }; - E29F5DAB19FD94FC00AD90CF /* ArrayRep.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E31400D7DFE17BE9C1BD /* ArrayRep.h */; settings = {ATTRIBUTES = (); }; }; - E29F5DAC19FD94FC00AD90CF /* ArrayRepDouble.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E31700D7DFE17BE9C1BD /* ArrayRepDouble.h */; }; - E29F5DAD19FD94FC00AD90CF /* ArrayRepEmpty.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E31900D7DFE17BE9C1BD /* ArrayRepEmpty.h */; }; - E29F5DAE19FD94FC00AD90CF /* ArrayRepId.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E31B00D7DFE17BE9C1BD /* ArrayRepId.h */; }; - E29F5DAF19FD94FC00AD90CF /* FSCollectionInspector.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E31D00D7DFE17BE9C1BD /* FSCollectionInspector.h */; }; - E29F5DB019FD94FC00AD90CF /* FSObjectBrowser.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E32000D7DFE17BE9C1BD /* FSObjectBrowser.h */; }; - E29F5DB119FD94FC00AD90CF /* FSObjectBrowserCell.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E32200D7DFE17BE9C1BD /* FSObjectBrowserCell.h */; }; - E29F5DB219FD94FC00AD90CF /* FSBlock.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E32600D7DFE17BE9C1BD /* FSBlock.h */; settings = {ATTRIBUTES = (Public, ); }; }; - E29F5DB319FD94FC00AD90CF /* BlockInspector.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E32800D7DFE17BE9C1BD /* BlockInspector.h */; }; - E29F5DB419FD94FC00AD90CF /* BlockPrivate.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E32B00D7DFE17BE9C1BD /* BlockPrivate.h */; }; - E29F5DB519FD94FC00AD90CF /* BlockRep.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E32C00D7DFE17BE9C1BD /* BlockRep.h */; }; - E29F5DB619FD94FC00AD90CF /* BlockStackElem.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E32F00D7DFE17BE9C1BD /* BlockStackElem.h */; }; - E29F5DB719FD94FC00AD90CF /* build_config.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E33200D7DFE17BE9C1BD /* build_config.h */; settings = {ATTRIBUTES = (); }; }; - E29F5DB819FD94FC00AD90CF /* CLIView.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E33300D7DFE17BE9C1BD /* CLIView.h */; }; - E29F5DB919FD94FC00AD90CF /* FSCompilationResult.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E33500D7DFE17BE9C1BD /* FSCompilationResult.h */; }; - E29F5DBA19FD94FC00AD90CF /* CompiledCodeNode.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E33700D7DFE17BE9C1BD /* CompiledCodeNode.h */; }; - E29F5DBB19FD94FC00AD90CF /* FSCompiler.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E33900D7DFE17BE9C1BD /* FSCompiler.h */; }; - E29F5DBC19FD94FC00AD90CF /* FSConstantsInitialization.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E33B00D7DFE17BE9C1BD /* FSConstantsInitialization.h */; }; - E29F5DBD19FD94FC00AD90CF /* FSExecEngine.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E33D00D7DFE17BE9C1BD /* FSExecEngine.h */; }; - E29F5DBE19FD94FC00AD90CF /* FSExecutor.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E33F00D7DFE17BE9C1BD /* FSExecutor.h */; }; - E29F5DBF19FD94FC00AD90CF /* FSFlight.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E34200D7DFE17BE9C1BD /* FSFlight.h */; settings = {ATTRIBUTES = (Public, ); }; }; - E29F5DC019FD94FC00AD90CF /* FSArchiver.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E34500D7DFE17BE9C1BD /* FSArchiver.h */; }; - E29F5DC119FD94FC00AD90CF /* FSBoolean.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E34700D7DFE17BE9C1BD /* FSBoolean.h */; settings = {ATTRIBUTES = (Public, ); }; }; - E29F5DC219FD94FC00AD90CF /* FSBooleanPrivate.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E34900D7DFE17BE9C1BD /* FSBooleanPrivate.h */; }; - E29F5DC319FD94FC00AD90CF /* FScript.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E34C00D7DFE17BE9C1BD /* FScript.h */; settings = {ATTRIBUTES = (Public, ); }; }; - E29F5DC419FD94FC00AD90CF /* FScriptFunctions.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E34E00D7DFE17BE9C1BD /* FScriptFunctions.h */; settings = {ATTRIBUTES = (Public, ); }; }; - E29F5DC519FD94FC00AD90CF /* FSInterpreter.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E35000D7DFE17BE9C1BD /* FSInterpreter.h */; settings = {ATTRIBUTES = (Public, ); }; }; - E29F5DC619FD94FC00AD90CF /* FSInterpreterResult.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E35200D7DFE17BE9C1BD /* FSInterpreterResult.h */; settings = {ATTRIBUTES = (Public, ); }; }; - E29F5DC719FD94FC00AD90CF /* FSInterpreterResultPrivate.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E35400D7DFE17BE9C1BD /* FSInterpreterResultPrivate.h */; }; - E29F5DC819FD94FC00AD90CF /* FSInterpreterView.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E35500D7DFE17BE9C1BD /* FSInterpreterView.h */; settings = {ATTRIBUTES = (Public, ); }; }; - E29F5DC919FD94FC00AD90CF /* FSInterpreterViewIBHeader.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E35700D7DFE17BE9C1BD /* FSInterpreterViewIBHeader.h */; }; - E29F5DCA19FD94FC00AD90CF /* FSNSArray.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E35800D7DFE17BE9C1BD /* FSNSArray.h */; settings = {ATTRIBUTES = (Public, ); }; }; - E29F5DCB19FD94FC00AD90CF /* FSNSArrayPrivate.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E35A00D7DFE17BE9C1BD /* FSNSArrayPrivate.h */; settings = {ATTRIBUTES = (); }; }; - E29F5DCC19FD94FC00AD90CF /* FSNSDate.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E35B00D7DFE17BE9C1BD /* FSNSDate.h */; settings = {ATTRIBUTES = (Public, ); }; }; - E29F5DCD19FD94FC00AD90CF /* FSNSDictionary.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E35D00D7DFE17BE9C1BD /* FSNSDictionary.h */; settings = {ATTRIBUTES = (Public, ); }; }; - E29F5DCE19FD94FC00AD90CF /* FSNSMutableString.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E35F00D7DFE17BE9C1BD /* FSNSMutableString.h */; settings = {ATTRIBUTES = (Public, ); }; }; - E29F5DCF19FD94FC00AD90CF /* FSNSNumber.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E36100D7DFE17BE9C1BD /* FSNSNumber.h */; settings = {ATTRIBUTES = (Public, ); }; }; - E29F5DD019FD94FC00AD90CF /* FSNSObject.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E36300D7DFE17BE9C1BD /* FSNSObject.h */; settings = {ATTRIBUTES = (Public, ); }; }; - E29F5DD119FD94FC00AD90CF /* FSNSProxy.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E36500D7DFE17BE9C1BD /* FSNSProxy.h */; settings = {ATTRIBUTES = (Public, ); }; }; - E29F5DD219FD94FC00AD90CF /* FSNSString.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E36700D7DFE17BE9C1BD /* FSNSString.h */; settings = {ATTRIBUTES = (Public, ); }; }; - E29F5DD319FD94FC00AD90CF /* FSNSStringPrivate.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E36900D7DFE17BE9C1BD /* FSNSStringPrivate.h */; }; - E29F5DD419FD94FC00AD90CF /* FSPattern.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E36C00D7DFE17BE9C1BD /* FSPattern.h */; }; - E29F5DD519FD94FC00AD90CF /* FSUnarchiver.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E37200D7DFE17BE9C1BD /* FSUnarchiver.h */; }; - E29F5DD619FD94FC00AD90CF /* FSVoid.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E37400D7DFE17BE9C1BD /* FSVoid.h */; settings = {ATTRIBUTES = (Public, ); }; }; - E29F5DD719FD94FC00AD90CF /* FSVoidPrivate.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E37600D7DFE17BE9C1BD /* FSVoidPrivate.h */; }; - E29F5DD819FD94FC00AD90CF /* FSGenericObjectInspector.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E37700D7DFE17BE9C1BD /* FSGenericObjectInspector.h */; }; - E29F5DD919FD94FC00AD90CF /* MessagePatternCodeNode.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E37F00D7DFE17BE9C1BD /* MessagePatternCodeNode.h */; }; - E29F5DDA19FD94FC00AD90CF /* FSMiscTools.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E38100D7DFE17BE9C1BD /* FSMiscTools.h */; }; - E29F5DDB19FD94FC00AD90CF /* FSMsgContext.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E38300D7DFE17BE9C1BD /* FSMsgContext.h */; }; - E29F5DDC19FD94FC00AD90CF /* FSNewlyAllocatedObjectHolder.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E38700D7DFE17BE9C1BD /* FSNewlyAllocatedObjectHolder.h */; }; - E29F5DDD19FD94FC00AD90CF /* FSNumber.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E38D00D7DFE17BE9C1BD /* FSNumber.h */; settings = {ATTRIBUTES = (Public, ); }; }; - E29F5DDE19FD94FC00AD90CF /* NumberPrivate.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E38F00D7DFE17BE9C1BD /* NumberPrivate.h */; }; - E29F5DDF19FD94FC00AD90CF /* FSPilot.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E39000D7DFE17BE9C1BD /* FSPilot.h */; settings = {ATTRIBUTES = (Public, ); }; }; - E29F5DE019FD94FC00AD90CF /* Pointer.h in Headers */ = {isa = PBXBuildFile; fileRef = F505648002DF417501FE0326 /* Pointer.h */; settings = {ATTRIBUTES = (Public, ); }; }; - E29F5DE119FD94FC00AD90CF /* FSReplacementForCoderForClass.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E39400D7DFE17BE9C1BD /* FSReplacementForCoderForClass.h */; }; - E29F5DE219FD94FC00AD90CF /* ShellView.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E39600D7DFE17BE9C1BD /* ShellView.h */; }; - E29F5DE319FD94FC00AD90CF /* Space.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E39800D7DFE17BE9C1BD /* Space.h */; }; - E29F5DE419FD94FC00AD90CF /* FSCommandHistory.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E39A00D7DFE17BE9C1BD /* FSCommandHistory.h */; }; - E29F5DE519FD94FC00AD90CF /* FSSystem.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E39E00D7DFE17BE9C1BD /* FSSystem.h */; settings = {ATTRIBUTES = (Public, ); }; }; - E29F5DE619FD94FC00AD90CF /* KTestManager.h in Headers */ = {isa = PBXBuildFile; fileRef = 66029E580161E0650055708C /* KTestManager.h */; }; - E29F5DE719FD94FC00AD90CF /* FSNSDistantObject.h in Headers */ = {isa = PBXBuildFile; fileRef = F51CA01401B013C401BFBB24 /* FSNSDistantObject.h */; }; - E29F5DE819FD94FC00AD90CF /* DOTest.h in Headers */ = {isa = PBXBuildFile; fileRef = F5F13B4701C8BE3401CB6DF7 /* DOTest.h */; }; - E29F5DE919FD94FC00AD90CF /* FScriptTextView.h in Headers */ = {isa = PBXBuildFile; fileRef = F5FBEF2802149D32018C0134 /* FScriptTextView.h */; }; - E29F5DEA19FD94FC00AD90CF /* FSObjectBrowserArgumentPanel.h in Headers */ = {isa = PBXBuildFile; fileRef = F5FA8A6C0215D44C01AFEEFD /* FSObjectBrowserArgumentPanel.h */; }; - E29F5DEB19FD94FC00AD90CF /* FSNSProtocolChecker.h in Headers */ = {isa = PBXBuildFile; fileRef = F5F140590223CC9D01DD698C /* FSNSProtocolChecker.h */; }; - E29F5DEC19FD94FC00AD90CF /* FSObjectBrowserToolbar.h in Headers */ = {isa = PBXBuildFile; fileRef = F538EF6C0279FD3C01345511 /* FSObjectBrowserToolbar.h */; }; - E29F5DED19FD94FC00AD90CF /* FSEvalCommand.h in Headers */ = {isa = PBXBuildFile; fileRef = F538EF700279FD3C01345511 /* FSEvalCommand.h */; }; - E29F5DEE19FD94FC00AD90CF /* FSServicesProvider.h in Headers */ = {isa = PBXBuildFile; fileRef = F538EF7C0279FD3C01345511 /* FSServicesProvider.h */; settings = {ATTRIBUTES = (); }; }; - E29F5DEF19FD94FC00AD90CF /* FSTask.h in Headers */ = {isa = PBXBuildFile; fileRef = F538EF7E0279FD3C01345511 /* FSTask.h */; settings = {ATTRIBUTES = (); }; }; - E29F5DF019FD94FC00AD90CF /* FSObjectBrowserToolbarButton.h in Headers */ = {isa = PBXBuildFile; fileRef = F5F0AD420285792F0103CD49 /* FSObjectBrowserToolbarButton.h */; }; - E29F5DF119FD94FC00AD90CF /* FSObjectBrowserButtonCtxBlock.h in Headers */ = {isa = PBXBuildFile; fileRef = F5F0261F02C243D20155CB83 /* FSObjectBrowserButtonCtxBlock.h */; }; - E29F5DF219FD94FC00AD90CF /* FSObjectBrowserButtonsInspector.h in Headers */ = {isa = PBXBuildFile; fileRef = F5F9569602B272FB0121B3BA /* FSObjectBrowserButtonsInspector.h */; }; - E29F5DF319FD94FC00AD90CF /* FSObjectBrowserView.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E32400D7DFE17BE9C1BD /* FSObjectBrowserView.h */; }; - E29F5DF419FD94FC00AD90CF /* PointerPrivate.h in Headers */ = {isa = PBXBuildFile; fileRef = F5F856C002EB281C01F7E6F0 /* PointerPrivate.h */; }; - E29F5DF519FD94FC00AD90CF /* FSInterpreterPrivate.h in Headers */ = {isa = PBXBuildFile; fileRef = F54CA17602FB2CAF01C25A35 /* FSInterpreterPrivate.h */; }; - E29F5DF619FD94FC00AD90CF /* FSObjectFormatter.h in Headers */ = {isa = PBXBuildFile; fileRef = F5EBBE820321029601CA10C6 /* FSObjectFormatter.h */; }; - E29F5DF719FD94FC00AD90CF /* FSIdentifierFormatter.h in Headers */ = {isa = PBXBuildFile; fileRef = F5073A2102FC5400013656B0 /* FSIdentifierFormatter.h */; }; - E29F5DF819FD94FC00AD90CF /* FSSystemPrivate.h in Headers */ = {isa = PBXBuildFile; fileRef = F5A25E260357B373011A39F8 /* FSSystemPrivate.h */; }; - E29F5DF919FD94FC00AD90CF /* FSKeyedUnarchiver.h in Headers */ = {isa = PBXBuildFile; fileRef = F55D44C40358A88801B9E934 /* FSKeyedUnarchiver.h */; }; - E29F5DFA19FD94FC00AD90CF /* FSKeyedArchiver.h in Headers */ = {isa = PBXBuildFile; fileRef = F55D44CE0358B5D201B9E934 /* FSKeyedArchiver.h */; }; - E29F5DFB19FD94FC00AD90CF /* FSConstantListBuilder.h in Headers */ = {isa = PBXBuildFile; fileRef = F52EECA6036210E2016141BB /* FSConstantListBuilder.h */; }; - E29F5DFC19FD94FC00AD90CF /* FSImageInspector.h in Headers */ = {isa = PBXBuildFile; fileRef = F54B55B9036B45770140C608 /* FSImageInspector.h */; }; - E29F5DFD19FD94FC00AD90CF /* FSNSImage.h in Headers */ = {isa = PBXBuildFile; fileRef = F54B55C8036B4A330140C608 /* FSNSImage.h */; settings = {ATTRIBUTES = (Public, ); }; }; - E29F5DFE19FD94FC00AD90CF /* FSObjectBrowserToolbarItem.h in Headers */ = {isa = PBXBuildFile; fileRef = F58090CF03755FC701AED2EF /* FSObjectBrowserToolbarItem.h */; }; - E29F5DFF19FD94FC00AD90CF /* ArrayRepBoolean.h in Headers */ = {isa = PBXBuildFile; fileRef = F5D4BE29038511FF01461810 /* ArrayRepBoolean.h */; }; - E29F5E0019FD94FC00AD90CF /* FSNSObjectPrivate.h in Headers */ = {isa = PBXBuildFile; fileRef = 8F63CC08044B95DB00B84480 /* FSNSObjectPrivate.h */; }; - E29F5E0119FD94FC00AD90CF /* FSArrayEnumerator.h in Headers */ = {isa = PBXBuildFile; fileRef = 8FA3AE55044D4D6700CF7A3A /* FSArrayEnumerator.h */; }; - E29F5E0219FD94FC00AD90CF /* TestFS.h in Headers */ = {isa = PBXBuildFile; fileRef = 8FBB10A4044E28FD00181279 /* TestFS.h */; }; - E29F5E0319FD94FC00AD90CF /* FSNSMutableArray.h in Headers */ = {isa = PBXBuildFile; fileRef = 8F66F85404666E8100AFC811 /* FSNSMutableArray.h */; settings = {ATTRIBUTES = (Public, ); }; }; - E29F5E0419FD94FC00AD90CF /* FSNSValue.h in Headers */ = {isa = PBXBuildFile; fileRef = 8F553BF70585222700A92293 /* FSNSValue.h */; settings = {ATTRIBUTES = (Public, ); }; }; - E29F5E0519FD94FC00AD90CF /* FSReplacementForCoderForNilInArray.h in Headers */ = {isa = PBXBuildFile; fileRef = 8F7D7DB7058E32CD00F1B8A8 /* FSReplacementForCoderForNilInArray.h */; }; - E29F5E0619FD94FC00AD90CF /* FSNamedNumber.h in Headers */ = {isa = PBXBuildFile; fileRef = 8F0E3B7E059F3DBB003F6CE9 /* FSNamedNumber.h */; }; - E29F5E0719FD94FC00AD90CF /* FSCollectionInspectorTableView.h in Headers */ = {isa = PBXBuildFile; fileRef = 8F60216E05A25CDC0004EFF1 /* FSCollectionInspectorTableView.h */; }; - E29F5E0819FD94FC00AD90CF /* FSNSSet.h in Headers */ = {isa = PBXBuildFile; fileRef = 8F60F24505A9FE8B00985FEC /* FSNSSet.h */; settings = {ATTRIBUTES = (Public, ); }; }; - E29F5E0919FD94FC00AD90CF /* FSAttributedStringInspector.h in Headers */ = {isa = PBXBuildFile; fileRef = 8FDCCD4E05C09F8200747C0A /* FSAttributedStringInspector.h */; }; - E29F5E0A19FD94FC00AD90CF /* FSNSAttributedString.h in Headers */ = {isa = PBXBuildFile; fileRef = 8FDCCDBF05C0A23000747C0A /* FSNSAttributedString.h */; settings = {ATTRIBUTES = (Public, ); }; }; - E29F5E0B19FD94FC00AD90CF /* FSInterpreterViewPrivate.h in Headers */ = {isa = PBXBuildFile; fileRef = 8F71F72205C43A7D00C34794 /* FSInterpreterViewPrivate.h */; }; - E29F5E0C19FD94FC00AD90CF /* FScriptMenuItem.h in Headers */ = {isa = PBXBuildFile; fileRef = 8F0B66FB05C5639E0099180D /* FScriptMenuItem.h */; settings = {ATTRIBUTES = (Public, ); }; }; - E29F5E0D19FD94FC00AD90CF /* FSNSFont.h in Headers */ = {isa = PBXBuildFile; fileRef = 8F658B2705C9694F0040FB24 /* FSNSFont.h */; settings = {ATTRIBUTES = (Public, ); }; }; - E29F5E0E19FD94FC00AD90CF /* FSObjectBrowserMatrix.h in Headers */ = {isa = PBXBuildFile; fileRef = 8FB505FF05D53C8600153B33 /* FSObjectBrowserMatrix.h */; }; - E29F5E0F19FD94FC00AD90CF /* FSSymbolTable.h in Headers */ = {isa = PBXBuildFile; fileRef = 8F17C07D06B1309C00F07862 /* FSSymbolTable.h */; }; - E29F5E1019FD94FC00AD90CF /* FSObjectBrowserViewObjectInfo.h in Headers */ = {isa = PBXBuildFile; fileRef = 8F4E294C075B8E5600F8DCDB /* FSObjectBrowserViewObjectInfo.h */; }; - E29F5E1119FD94FC00AD90CF /* FSCollectionInspectorView.h in Headers */ = {isa = PBXBuildFile; fileRef = 8FA8EDC607735B3B001BEC7B /* FSCollectionInspectorView.h */; }; - E29F5E1219FD94FC00AD90CF /* ArrayRepFetchRequest.h in Headers */ = {isa = PBXBuildFile; fileRef = 8FBC2877077B7D5200F9B4A2 /* ArrayRepFetchRequest.h */; }; - E29F5E1319FD94FC00AD90CF /* FSPointer.h in Headers */ = {isa = PBXBuildFile; fileRef = 8F8EA70B077F6A5200AC1C96 /* FSPointer.h */; settings = {ATTRIBUTES = (Public, ); }; }; - E29F5E1419FD94FC00AD90CF /* FSGenericPointer.h in Headers */ = {isa = PBXBuildFile; fileRef = 8F8EA779077F6C9300AC1C96 /* FSGenericPointer.h */; settings = {ATTRIBUTES = (Public, ); }; }; - E29F5E1519FD94FC00AD90CF /* FSPointerPrivate.h in Headers */ = {isa = PBXBuildFile; fileRef = 8F8EA7E8077F719800AC1C96 /* FSPointerPrivate.h */; }; - E29F5E1619FD94FC00AD90CF /* FSGenericPointerPrivate.h in Headers */ = {isa = PBXBuildFile; fileRef = 8F8EA841077F79A000AC1C96 /* FSGenericPointerPrivate.h */; }; - E29F5E1719FD94FC00AD90CF /* FSObjectPointer.h in Headers */ = {isa = PBXBuildFile; fileRef = 8FE9AE12078071CC005B2CC4 /* FSObjectPointer.h */; settings = {ATTRIBUTES = (Public, ); }; }; - E29F5E1819FD94FC00AD90CF /* FSObjectPointerPrivate.h in Headers */ = {isa = PBXBuildFile; fileRef = 8FE9AE8207807269005B2CC4 /* FSObjectPointerPrivate.h */; }; - E29F5E1919FD94FC00AD90CF /* FSObjectBrowserNamedObjectWrapper.h in Headers */ = {isa = PBXBuildFile; fileRef = 8F86923607F19BA8000D20A4 /* FSObjectBrowserNamedObjectWrapper.h */; }; - E29F5E1A19FD94FC00AD90CF /* FSInspectorUniquier.h in Headers */ = {isa = PBXBuildFile; fileRef = 8F7F4F9C07FB274C008E42F4 /* FSInspectorUniquier.h */; }; - E29F5E1B19FD94FC00AD90CF /* FSPredicateTextView.h in Headers */ = {isa = PBXBuildFile; fileRef = 8F95E3C108034A670030B65C /* FSPredicateTextView.h */; }; - E29F5E1C19FD94FC00AD90CF /* FSCoreDataSample.h in Headers */ = {isa = PBXBuildFile; fileRef = 8FE7E0E6082AD964008231E8 /* FSCoreDataSample.h */; }; - E29F5E1D19FD94FC00AD90CF /* FSManagedObjectContextInspector.h in Headers */ = {isa = PBXBuildFile; fileRef = 8F37AEC2078B7E900083565D /* FSManagedObjectContextInspector.h */; }; - E29F5E1E19FD94FC00AD90CF /* FSNSManagedObjectContext.h in Headers */ = {isa = PBXBuildFile; fileRef = 8F5189E707F072EA00A50735 /* FSNSManagedObjectContext.h */; settings = {ATTRIBUTES = (Public, ); }; }; - E29F5E1F19FD94FC00AD90CF /* FSObjectBrowserSearchField.h in Headers */ = {isa = PBXBuildFile; fileRef = 8F585F6E059B23F100C12B6F /* FSObjectBrowserSearchField.h */; }; - E29F5E2019FD94FC00AD90CF /* FSBlockCompilationResult.h in Headers */ = {isa = PBXBuildFile; fileRef = 8F90A2EF096DB0660064F4BC /* FSBlockCompilationResult.h */; }; - E29F5E2119FD94FC00AD90CF /* FSReturnSignal.h in Headers */ = {isa = PBXBuildFile; fileRef = 8FD7D4A60975B377009B2685 /* FSReturnSignal.h */; }; - E29F5E2219FD94FC00AD90CF /* FSMethod.h in Headers */ = {isa = PBXBuildFile; fileRef = 8F3C13980C65E66400948776 /* FSMethod.h */; }; - E29F5E2319FD94FC00AD90CF /* FSCNClassDefinition.h in Headers */ = {isa = PBXBuildFile; fileRef = 8F5AD3200D05CFFE000CEAC6 /* FSCNClassDefinition.h */; }; - E29F5E2419FD94FC00AD90CF /* FSCNBase.h in Headers */ = {isa = PBXBuildFile; fileRef = 8FE6397E0D09C0F400255EBA /* FSCNBase.h */; }; - E29F5E2519FD94FC00AD90CF /* FSCNIdentifier.h in Headers */ = {isa = PBXBuildFile; fileRef = 8FE6398E0D09DCB600255EBA /* FSCNIdentifier.h */; }; - E29F5E2619FD94FC00AD90CF /* FSTestObjCClass1.h in Headers */ = {isa = PBXBuildFile; fileRef = 8FE3DD200D26D49900A1D767 /* FSTestObjCClass1.h */; }; - E29F5E2719FD94FC00AD90CF /* FSTestObjCClass2.h in Headers */ = {isa = PBXBuildFile; fileRef = 8F4822020D2C317700754A4E /* FSTestObjCClass2.h */; }; - E29F5E2819FD94FC00AD90CF /* FSCNCategory.h in Headers */ = {isa = PBXBuildFile; fileRef = 8F8112F00D85E58200CB3407 /* FSCNCategory.h */; }; - E29F5E2919FD94FC00AD90CF /* FSCNMessage.h in Headers */ = {isa = PBXBuildFile; fileRef = 8F59CA6F0D86DD0800D67A78 /* FSCNMessage.h */; }; - E29F5E2A19FD94FC00AD90CF /* FSCNSuper.h in Headers */ = {isa = PBXBuildFile; fileRef = 8F72237D0D870C6A00394C99 /* FSCNSuper.h */; }; - E29F5E2B19FD94FC00AD90CF /* FSCNUnaryMessage.h in Headers */ = {isa = PBXBuildFile; fileRef = 8F2E341E0D8DB61C00912543 /* FSCNUnaryMessage.h */; }; - E29F5E2C19FD94FC00AD90CF /* FSCNBinaryMessage.h in Headers */ = {isa = PBXBuildFile; fileRef = 8F2E34310D8DBF6A00912543 /* FSCNBinaryMessage.h */; }; - E29F5E2D19FD94FC00AD90CF /* FSCNKeywordMessage.h in Headers */ = {isa = PBXBuildFile; fileRef = 8F2E343A0D8DBFE700912543 /* FSCNKeywordMessage.h */; }; - E29F5E2E19FD94FC00AD90CF /* FSCNCascade.h in Headers */ = {isa = PBXBuildFile; fileRef = 8F5900130D9468FC003A8B17 /* FSCNCascade.h */; }; - E29F5E2F19FD94FC00AD90CF /* FSCNStatementList.h in Headers */ = {isa = PBXBuildFile; fileRef = 8F8F58640D9FE6A900ED0FED /* FSCNStatementList.h */; }; - E29F5E3019FD94FC00AD90CF /* FSCNPrecomputedObject.h in Headers */ = {isa = PBXBuildFile; fileRef = 8F747DA70DA03AE200148342 /* FSCNPrecomputedObject.h */; }; - E29F5E3119FD94FC00AD90CF /* FSCNArray.h in Headers */ = {isa = PBXBuildFile; fileRef = 8F747DB60DA0467100148342 /* FSCNArray.h */; }; - E29F5E3219FD94FC00AD90CF /* FSCNBlock.h in Headers */ = {isa = PBXBuildFile; fileRef = 8FAE79AA0DA0ED5D00CB6E14 /* FSCNBlock.h */; }; - E29F5E3319FD94FC00AD90CF /* FSCNAssignment.h in Headers */ = {isa = PBXBuildFile; fileRef = 8FAE79F10DA109C500CB6E14 /* FSCNAssignment.h */; }; - E29F5E3419FD94FC00AD90CF /* FSCNMethod.h in Headers */ = {isa = PBXBuildFile; fileRef = 8F45CBBD0DA813F200AFA8C8 /* FSCNMethod.h */; }; - E29F5E3519FD94FC00AD90CF /* FSCNReturn.h in Headers */ = {isa = PBXBuildFile; fileRef = 8FD0A3120DD7276000E47459 /* FSCNReturn.h */; }; - E29F5E3619FD94FC00AD90CF /* FSClassDefinition.h in Headers */ = {isa = PBXBuildFile; fileRef = 8F8949D50DE08B110094EC14 /* FSClassDefinition.h */; }; - E29F5E3719FD94FC00AD90CF /* FSTranscript.h in Headers */ = {isa = PBXBuildFile; fileRef = 8F2DE6590E57254700CF83CB /* FSTranscript.h */; }; - E29F5E3819FD94FC00AD90CF /* FSArray.h in Headers */ = {isa = PBXBuildFile; fileRef = 8FE6AD8F0EC740650096019D /* FSArray.h */; settings = {ATTRIBUTES = (Public, ); }; }; - E29F5E3919FD94FC00AD90CF /* Array_fscript.h in Headers */ = {isa = PBXBuildFile; fileRef = 8F31A4C00EC74A2E00D1B8E8 /* Array_fscript.h */; settings = {ATTRIBUTES = (Public, ); }; }; - E29F5E3A19FD94FC00AD90CF /* Block_fscript.h in Headers */ = {isa = PBXBuildFile; fileRef = 8FCA00C10EEAF34300B10420 /* Block_fscript.h */; settings = {ATTRIBUTES = (Public, ); }; }; - E29F5E3B19FD94FC00AD90CF /* Number_fscript.h in Headers */ = {isa = PBXBuildFile; fileRef = 8FBB2FF00EEB3467007A3163 /* Number_fscript.h */; settings = {ATTRIBUTES = (Public, ); }; }; - E29F5E3C19FD94FC00AD90CF /* FSGlobalScope.h in Headers */ = {isa = PBXBuildFile; fileRef = 8FB9D5970F1CEE2100E10274 /* FSGlobalScope.h */; }; - E29F5E3D19FD94FC00AD90CF /* FSNSFileHandle.h in Headers */ = {isa = PBXBuildFile; fileRef = 8F9D04170F1DF1CB001B8286 /* FSNSFileHandle.h */; settings = {ATTRIBUTES = (); }; }; - E29F5E3E19FD94FC00AD90CF /* FSAssociation.h in Headers */ = {isa = PBXBuildFile; fileRef = 8F940B810F2393B0004525E1 /* FSAssociation.h */; settings = {ATTRIBUTES = (Public, ); }; }; - E29F5E3F19FD94FC00AD90CF /* FSCNDictionary.h in Headers */ = {isa = PBXBuildFile; fileRef = 8F940C6E0F23BC2E004525E1 /* FSCNDictionary.h */; }; - E29F5E4019FD94FC00AD90CF /* FSObjectBrowserBottomBarTextDisplay.h in Headers */ = {isa = PBXBuildFile; fileRef = 8F7A71290F48397C00E95364 /* FSObjectBrowserBottomBarTextDisplay.h */; }; - E29F5E4119FD94FC00AD90CF /* FSNSAffineTransform.h in Headers */ = {isa = PBXBuildFile; fileRef = 8F2D72090F6BD9B100F0862A /* FSNSAffineTransform.h */; settings = {ATTRIBUTES = (Public, ); }; }; - E29F5E4219FD94FC00AD90CF /* FSNewlyAllocatedObject.h in Headers */ = {isa = PBXBuildFile; fileRef = 8FCA593110883B0100F67841 /* FSNewlyAllocatedObject.h */; }; - E29F5E4319FD94FC00AD90CF /* FSWorksWhenModalWindow.h in Headers */ = {isa = PBXBuildFile; fileRef = 8F5EDA00109B384A003A2F4C /* FSWorksWhenModalWindow.h */; }; - E29F5E4419FD94FC00AD90CF /* FSNSMutableDictionary.h in Headers */ = {isa = PBXBuildFile; fileRef = 8F44270B116549C700E88F21 /* FSNSMutableDictionary.h */; settings = {ATTRIBUTES = (Public, ); }; }; - E29F5E4619FD94FC00AD90CF /* FSCollectionInspector.nib in Resources */ = {isa = PBXBuildFile; fileRef = 0CD4E31F00D7DFE17BE9C1BD /* FSCollectionInspector.nib */; }; - E29F5E4719FD94FC00AD90CF /* blockInspector.nib in Resources */ = {isa = PBXBuildFile; fileRef = 0CD4E32A00D7DFE17BE9C1BD /* blockInspector.nib */; }; - E29F5E4819FD94FC00AD90CF /* FlightTutorial.txt in Resources */ = {isa = PBXBuildFile; fileRef = 0CD4E34400D7DFE17BE9C1BD /* FlightTutorial.txt */; }; - E29F5E4919FD94FC00AD90CF /* genObjInspector.nib in Resources */ = {isa = PBXBuildFile; fileRef = 0CD4E37900D7DFE17BE9C1BD /* genObjInspector.nib */; }; - E29F5E4A19FD94FC00AD90CF /* KTest.txt in Resources */ = {isa = PBXBuildFile; fileRef = 0CD4E37D00D7DFE17BE9C1BD /* KTest.txt */; }; - E29F5E4B19FD94FC00AD90CF /* license.txt in Resources */ = {isa = PBXBuildFile; fileRef = 0CD4E37E00D7DFE17BE9C1BD /* license.txt */; }; - E29F5E4C19FD94FC00AD90CF /* fs.scriptSuite in Resources */ = {isa = PBXBuildFile; fileRef = F538EF6E0279FD3C01345511 /* fs.scriptSuite */; }; - E29F5E4D19FD94FC00AD90CF /* fs.scriptTerminology in Resources */ = {isa = PBXBuildFile; fileRef = F538EF6F0279FD3C01345511 /* fs.scriptTerminology */; }; - E29F5E4E19FD94FC00AD90CF /* FSObjectBrowserButtonsInspector.nib in Resources */ = {isa = PBXBuildFile; fileRef = F5F9569002B272A30121B3BA /* FSObjectBrowserButtonsInspector.nib */; }; - E29F5E4F19FD94FC00AD90CF /* FSImageInspector.nib in Resources */ = {isa = PBXBuildFile; fileRef = F54B55C3036B48690140C608 /* FSImageInspector.nib */; }; - E29F5E5019FD94FC00AD90CF /* ReadMe.txt in Resources */ = {isa = PBXBuildFile; fileRef = F58090EB0375648201AED2EF /* ReadMe.txt */; }; - E29F5E5119FD94FC00AD90CF /* ArrayTableView.nib in Resources */ = {isa = PBXBuildFile; fileRef = F58090FC03756D2401AED2EF /* ArrayTableView.nib */; }; - E29F5E5219FD94FC00AD90CF /* constantsDictionary in Resources */ = {isa = PBXBuildFile; fileRef = 8F92F0380463F2A400F4C61F /* constantsDictionary */; }; - E29F5E5319FD94FC00AD90CF /* FSAttributedStringInspector.nib in Resources */ = {isa = PBXBuildFile; fileRef = 8FDCCD7A05C0A0A000747C0A /* FSAttributedStringInspector.nib */; }; - E29F5E5419FD94FC00AD90CF /* FSConsole.nib in Resources */ = {isa = PBXBuildFile; fileRef = 8F0B64C805C5370D0099180D /* FSConsole.nib */; }; - E29F5E5519FD94FC00AD90CF /* FScriptPreferences.nib in Resources */ = {isa = PBXBuildFile; fileRef = 8F0B664F05C557A40099180D /* FScriptPreferences.nib */; }; - E29F5E5619FD94FC00AD90CF /* run.tiff in Resources */ = {isa = PBXBuildFile; fileRef = 8F2D066F05CED9B9007EA81B /* run.tiff */; }; - E29F5E5719FD94FC00AD90CF /* build.tiff in Resources */ = {isa = PBXBuildFile; fileRef = 8F56036505CF22660044FA65 /* build.tiff */; }; - E29F5E5819FD94FC00AD90CF /* FSCollectionInspectorView.nib in Resources */ = {isa = PBXBuildFile; fileRef = 8FA8EF9107739FD4001BEC7B /* FSCollectionInspectorView.nib */; }; - E29F5E5919FD94FC00AD90CF /* FSManagedObjectContextInspector.nib in Resources */ = {isa = PBXBuildFile; fileRef = 8FCA6B79078E0E4F005FC6B2 /* FSManagedObjectContextInspector.nib */; }; - E29F5E5A19FD94FC00AD90CF /* FSMovieInspector.nib in Resources */ = {isa = PBXBuildFile; fileRef = 8F7472BE056B7ACE00E87339 /* FSMovieInspector.nib */; }; - E29F5E5B19FD94FC00AD90CF /* FSTestClasses.txt in Resources */ = {isa = PBXBuildFile; fileRef = 8FE3DC990D26C0FD00A1D767 /* FSTestClasses.txt */; }; - E29F5E5D19FD94FC00AD90CF /* FSAirplane.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E31000D7DFE17BE9C1BD /* FSAirplane.m */; }; - E29F5E5E19FD94FC00AD90CF /* ArrayRepDouble.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E31800D7DFE17BE9C1BD /* ArrayRepDouble.m */; }; - E29F5E5F19FD94FC00AD90CF /* ArrayRepEmpty.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E31A00D7DFE17BE9C1BD /* ArrayRepEmpty.m */; }; - E29F5E6019FD94FC00AD90CF /* ArrayRepId.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E31C00D7DFE17BE9C1BD /* ArrayRepId.m */; }; - E29F5E6119FD94FC00AD90CF /* FSCollectionInspector.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E31E00D7DFE17BE9C1BD /* FSCollectionInspector.m */; }; - E29F5E6219FD94FC00AD90CF /* FSObjectBrowser.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E32100D7DFE17BE9C1BD /* FSObjectBrowser.m */; }; - E29F5E6319FD94FC00AD90CF /* FSObjectBrowserCell.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E32300D7DFE17BE9C1BD /* FSObjectBrowserCell.m */; }; - E29F5E6419FD94FC00AD90CF /* FSBlock.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E32700D7DFE17BE9C1BD /* FSBlock.m */; }; - E29F5E6519FD94FC00AD90CF /* BlockInspector.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E32900D7DFE17BE9C1BD /* BlockInspector.m */; }; - E29F5E6619FD94FC00AD90CF /* BlockRep.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E32D00D7DFE17BE9C1BD /* BlockRep.m */; }; - E29F5E6719FD94FC00AD90CF /* BlockStackElem.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E33000D7DFE17BE9C1BD /* BlockStackElem.m */; }; - E29F5E6819FD94FC00AD90CF /* CLIView.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E33400D7DFE17BE9C1BD /* CLIView.m */; }; - E29F5E6919FD94FC00AD90CF /* FSCompilationResult.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E33600D7DFE17BE9C1BD /* FSCompilationResult.m */; }; - E29F5E6A19FD94FC00AD90CF /* CompiledCodeNode.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E33800D7DFE17BE9C1BD /* CompiledCodeNode.m */; }; - E29F5E6B19FD94FC00AD90CF /* FSCompiler.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E33A00D7DFE17BE9C1BD /* FSCompiler.m */; }; - E29F5E6C19FD94FC00AD90CF /* FSConstantsInitialization.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E33C00D7DFE17BE9C1BD /* FSConstantsInitialization.m */; }; - E29F5E6D19FD94FC00AD90CF /* FSExecEngine.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E33E00D7DFE17BE9C1BD /* FSExecEngine.m */; }; - E29F5E6E19FD94FC00AD90CF /* FSExecutor.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E34000D7DFE17BE9C1BD /* FSExecutor.m */; }; - E29F5E6F19FD94FC00AD90CF /* FSFlight.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E34300D7DFE17BE9C1BD /* FSFlight.m */; }; - E29F5E7019FD94FC00AD90CF /* FSArchiver.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E34600D7DFE17BE9C1BD /* FSArchiver.m */; }; - E29F5E7119FD94FC00AD90CF /* FSBoolean.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E34800D7DFE17BE9C1BD /* FSBoolean.m */; }; - E29F5E7219FD94FC00AD90CF /* FScriptFunctions.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E34F00D7DFE17BE9C1BD /* FScriptFunctions.m */; }; - E29F5E7319FD94FC00AD90CF /* FSInterpreter.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E35100D7DFE17BE9C1BD /* FSInterpreter.m */; }; - E29F5E7419FD94FC00AD90CF /* FSInterpreterResult.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E35300D7DFE17BE9C1BD /* FSInterpreterResult.m */; }; - E29F5E7519FD94FC00AD90CF /* FSInterpreterView.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E35600D7DFE17BE9C1BD /* FSInterpreterView.m */; }; - E29F5E7619FD94FC00AD90CF /* FSNSArray.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E35900D7DFE17BE9C1BD /* FSNSArray.m */; }; - E29F5E7719FD94FC00AD90CF /* FSNSDate.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E35C00D7DFE17BE9C1BD /* FSNSDate.m */; }; - E29F5E7819FD94FC00AD90CF /* FSNSDictionary.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E35E00D7DFE17BE9C1BD /* FSNSDictionary.m */; }; - E29F5E7919FD94FC00AD90CF /* FSNSMutableString.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E36000D7DFE17BE9C1BD /* FSNSMutableString.m */; }; - E29F5E7A19FD94FC00AD90CF /* FSNSNumber.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E36200D7DFE17BE9C1BD /* FSNSNumber.m */; }; - E29F5E7B19FD94FC00AD90CF /* FSNSObject.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E36400D7DFE17BE9C1BD /* FSNSObject.m */; }; - E29F5E7C19FD94FC00AD90CF /* FSNSProxy.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E36600D7DFE17BE9C1BD /* FSNSProxy.m */; }; - E29F5E7D19FD94FC00AD90CF /* FSNSString.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E36800D7DFE17BE9C1BD /* FSNSString.m */; }; - E29F5E7E19FD94FC00AD90CF /* FSPattern.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E36D00D7DFE17BE9C1BD /* FSPattern.m */; }; - E29F5E7F19FD94FC00AD90CF /* FSUnarchiver.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E37300D7DFE17BE9C1BD /* FSUnarchiver.m */; }; - E29F5E8019FD94FC00AD90CF /* FSVoid.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E37500D7DFE17BE9C1BD /* FSVoid.m */; }; - E29F5E8119FD94FC00AD90CF /* FSGenericObjectInspector.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E37800D7DFE17BE9C1BD /* FSGenericObjectInspector.m */; }; - E29F5E8219FD94FC00AD90CF /* MessagePatternCodeNode.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E38000D7DFE17BE9C1BD /* MessagePatternCodeNode.m */; }; - E29F5E8319FD94FC00AD90CF /* FSMiscTools.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E38200D7DFE17BE9C1BD /* FSMiscTools.m */; }; - E29F5E8419FD94FC00AD90CF /* FSMsgContext.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E38400D7DFE17BE9C1BD /* FSMsgContext.m */; }; - E29F5E8519FD94FC00AD90CF /* FSNewlyAllocatedObjectHolder.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E38800D7DFE17BE9C1BD /* FSNewlyAllocatedObjectHolder.m */; }; - E29F5E8619FD94FC00AD90CF /* FSNumber.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E38E00D7DFE17BE9C1BD /* FSNumber.m */; }; - E29F5E8719FD94FC00AD90CF /* FSPilot.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E39100D7DFE17BE9C1BD /* FSPilot.m */; }; - E29F5E8819FD94FC00AD90CF /* FSReplacementForCoderForClass.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E39500D7DFE17BE9C1BD /* FSReplacementForCoderForClass.m */; }; - E29F5E8919FD94FC00AD90CF /* ShellView.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E39700D7DFE17BE9C1BD /* ShellView.m */; }; - E29F5E8A19FD94FC00AD90CF /* Space.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E39900D7DFE17BE9C1BD /* Space.m */; }; - E29F5E8B19FD94FC00AD90CF /* FSCommandHistory.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E39B00D7DFE17BE9C1BD /* FSCommandHistory.m */; }; - E29F5E8C19FD94FC00AD90CF /* FSSystem.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E39F00D7DFE17BE9C1BD /* FSSystem.m */; }; - E29F5E8D19FD94FC00AD90CF /* KTestManager.m in Sources */ = {isa = PBXBuildFile; fileRef = 66029E590161E0650055708C /* KTestManager.m */; }; - E29F5E8E19FD94FC00AD90CF /* FSNSDistantObject.m in Sources */ = {isa = PBXBuildFile; fileRef = F51CA01501B013C401BFBB24 /* FSNSDistantObject.m */; }; - E29F5E8F19FD94FC00AD90CF /* DOTest.m in Sources */ = {isa = PBXBuildFile; fileRef = F5F13B4801C8BE3401CB6DF7 /* DOTest.m */; }; - E29F5E9019FD94FC00AD90CF /* FScriptTextView.m in Sources */ = {isa = PBXBuildFile; fileRef = F501AF7B021497C401A75EC5 /* FScriptTextView.m */; }; - E29F5E9119FD94FC00AD90CF /* FSObjectBrowserArgumentPanel.m in Sources */ = {isa = PBXBuildFile; fileRef = F5FA8A6D0215D44C01AFEEFD /* FSObjectBrowserArgumentPanel.m */; }; - E29F5E9219FD94FC00AD90CF /* FSNSProtocolChecker.m in Sources */ = {isa = PBXBuildFile; fileRef = F5F1405A0223CC9D01DD698C /* FSNSProtocolChecker.m */; }; - E29F5E9319FD94FC00AD90CF /* FSObjectBrowserToolbar.m in Sources */ = {isa = PBXBuildFile; fileRef = F538EF6D0279FD3C01345511 /* FSObjectBrowserToolbar.m */; }; - E29F5E9419FD94FC00AD90CF /* FSEvalCommand.m in Sources */ = {isa = PBXBuildFile; fileRef = F538EF710279FD3C01345511 /* FSEvalCommand.m */; }; - E29F5E9519FD94FC00AD90CF /* FSServicesProvider.m in Sources */ = {isa = PBXBuildFile; fileRef = F538EF7D0279FD3C01345511 /* FSServicesProvider.m */; }; - E29F5E9619FD94FC00AD90CF /* FSTask.m in Sources */ = {isa = PBXBuildFile; fileRef = F538EF7F0279FD3C01345511 /* FSTask.m */; }; - E29F5E9719FD94FC00AD90CF /* FSObjectBrowserToolbarButton.m in Sources */ = {isa = PBXBuildFile; fileRef = F5F0AD430285792F0103CD49 /* FSObjectBrowserToolbarButton.m */; }; - E29F5E9819FD94FC00AD90CF /* FSObjectBrowserButtonCtxBlock.m in Sources */ = {isa = PBXBuildFile; fileRef = F5F0261E02C243D20155CB83 /* FSObjectBrowserButtonCtxBlock.m */; }; - E29F5E9919FD94FC00AD90CF /* FSObjectBrowserButtonsInspector.m in Sources */ = {isa = PBXBuildFile; fileRef = F5F9569502B272FB0121B3BA /* FSObjectBrowserButtonsInspector.m */; }; - E29F5E9A19FD94FC00AD90CF /* FSObjectBrowserView.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E32500D7DFE17BE9C1BD /* FSObjectBrowserView.m */; }; - E29F5E9B19FD94FC00AD90CF /* Pointer.m in Sources */ = {isa = PBXBuildFile; fileRef = F505647F02DF417501FE0326 /* Pointer.m */; }; - E29F5E9C19FD94FC00AD90CF /* FSObjectFormatter.m in Sources */ = {isa = PBXBuildFile; fileRef = F5EBBE810321029601CA10C6 /* FSObjectFormatter.m */; }; - E29F5E9D19FD94FC00AD90CF /* FSIdentifierFormatter.m in Sources */ = {isa = PBXBuildFile; fileRef = F5073A2002FC5400013656B0 /* FSIdentifierFormatter.m */; }; - E29F5E9E19FD94FC00AD90CF /* FSKeyedUnarchiver.m in Sources */ = {isa = PBXBuildFile; fileRef = F55D44C50358A88801B9E934 /* FSKeyedUnarchiver.m */; }; - E29F5E9F19FD94FC00AD90CF /* FSKeyedArchiver.m in Sources */ = {isa = PBXBuildFile; fileRef = F55D44CF0358B5D201B9E934 /* FSKeyedArchiver.m */; }; - E29F5EA019FD94FC00AD90CF /* FSConstantListBuilder.m in Sources */ = {isa = PBXBuildFile; fileRef = F52EECA7036210E2016141BB /* FSConstantListBuilder.m */; }; - E29F5EA119FD94FC00AD90CF /* FSImageInspector.m in Sources */ = {isa = PBXBuildFile; fileRef = F54B55BA036B45770140C608 /* FSImageInspector.m */; }; - E29F5EA219FD94FC00AD90CF /* FSNSImage.m in Sources */ = {isa = PBXBuildFile; fileRef = F54B55C9036B4A330140C608 /* FSNSImage.m */; }; - E29F5EA319FD94FC00AD90CF /* FSObjectBrowserToolbarItem.m in Sources */ = {isa = PBXBuildFile; fileRef = F58090D003755FC701AED2EF /* FSObjectBrowserToolbarItem.m */; }; - E29F5EA419FD94FC00AD90CF /* ArrayRepBoolean.m in Sources */ = {isa = PBXBuildFile; fileRef = F5D4BE2A038511FF01461810 /* ArrayRepBoolean.m */; }; - E29F5EA519FD94FC00AD90CF /* FSArrayEnumerator.m in Sources */ = {isa = PBXBuildFile; fileRef = 8FA3AE56044D4D6700CF7A3A /* FSArrayEnumerator.m */; }; - E29F5EA619FD94FC00AD90CF /* FSNSMutableArray.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F66F85504666E8100AFC811 /* FSNSMutableArray.m */; }; - E29F5EA719FD94FC00AD90CF /* FSNSValue.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F553BF80585222700A92293 /* FSNSValue.m */; }; - E29F5EA819FD94FC00AD90CF /* FSReplacementForCoderForNilInArray.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F7D7DB8058E32CD00F1B8A8 /* FSReplacementForCoderForNilInArray.m */; }; - E29F5EA919FD94FC00AD90CF /* FSNamedNumber.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F0E3B7F059F3DBB003F6CE9 /* FSNamedNumber.m */; }; - E29F5EAA19FD94FC00AD90CF /* FSCollectionInspectorTableView.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F60216F05A25CDC0004EFF1 /* FSCollectionInspectorTableView.m */; }; - E29F5EAB19FD94FC00AD90CF /* FSNSSet.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F60F24605A9FE8B00985FEC /* FSNSSet.m */; }; - E29F5EAC19FD94FC00AD90CF /* FSAttributedStringInspector.m in Sources */ = {isa = PBXBuildFile; fileRef = 8FDCCD4F05C09F8200747C0A /* FSAttributedStringInspector.m */; }; - E29F5EAD19FD94FC00AD90CF /* FSNSAttributedString.m in Sources */ = {isa = PBXBuildFile; fileRef = 8FDCCDC005C0A23000747C0A /* FSNSAttributedString.m */; }; - E29F5EAE19FD94FC00AD90CF /* FScriptMenuItem.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F0B66FC05C5639E0099180D /* FScriptMenuItem.m */; }; - E29F5EAF19FD94FC00AD90CF /* FSNSFont.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F658B2805C9694F0040FB24 /* FSNSFont.m */; }; - E29F5EB019FD94FC00AD90CF /* FSObjectBrowserMatrix.m in Sources */ = {isa = PBXBuildFile; fileRef = 8FB5060005D53C8600153B33 /* FSObjectBrowserMatrix.m */; }; - E29F5EB119FD94FC00AD90CF /* FSSymbolTable.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F17C07E06B1309C00F07862 /* FSSymbolTable.m */; }; - E29F5EB219FD94FC00AD90CF /* FSObjectBrowserViewObjectInfo.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F4E294D075B8E5600F8DCDB /* FSObjectBrowserViewObjectInfo.m */; }; - E29F5EB319FD94FC00AD90CF /* FSCollectionInspectorView.m in Sources */ = {isa = PBXBuildFile; fileRef = 8FA8EDD307735B3B001BEC7B /* FSCollectionInspectorView.m */; }; - E29F5EB419FD94FC00AD90CF /* ArrayRepFetchRequest.m in Sources */ = {isa = PBXBuildFile; fileRef = 8FBC2884077B7D5200F9B4A2 /* ArrayRepFetchRequest.m */; }; - E29F5EB519FD94FC00AD90CF /* FSPointer.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F8EA718077F6A5200AC1C96 /* FSPointer.m */; }; - E29F5EB619FD94FC00AD90CF /* FSGenericPointer.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F8EA786077F6C9300AC1C96 /* FSGenericPointer.m */; }; - E29F5EB719FD94FC00AD90CF /* FSObjectPointer.m in Sources */ = {isa = PBXBuildFile; fileRef = 8FE9AE1F078071CC005B2CC4 /* FSObjectPointer.m */; }; - E29F5EB819FD94FC00AD90CF /* FSObjectBrowserNamedObjectWrapper.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F86923707F19BA8000D20A4 /* FSObjectBrowserNamedObjectWrapper.m */; }; - E29F5EB919FD94FC00AD90CF /* FSInspectorUniquier.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F7F4F9D07FB274C008E42F4 /* FSInspectorUniquier.m */; }; - E29F5EBA19FD94FC00AD90CF /* FSPredicateTextView.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F95E3C208034A670030B65C /* FSPredicateTextView.m */; }; - E29F5EBB19FD94FC00AD90CF /* FSCoreDataSample.m in Sources */ = {isa = PBXBuildFile; fileRef = 8FE7E0E7082AD964008231E8 /* FSCoreDataSample.m */; }; - E29F5EBC19FD94FC00AD90CF /* FSManagedObjectContextInspector.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F37AEC3078B7E900083565D /* FSManagedObjectContextInspector.m */; }; - E29F5EBD19FD94FC00AD90CF /* FSNSManagedObjectContext.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F5189E807F072EA00A50735 /* FSNSManagedObjectContext.m */; }; - E29F5EBE19FD94FC00AD90CF /* FSObjectBrowserSearchField.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F585F6F059B23F100C12B6F /* FSObjectBrowserSearchField.m */; }; - E29F5EBF19FD94FC00AD90CF /* FSBlockCompilationResult.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F90A2F0096DB0660064F4BC /* FSBlockCompilationResult.m */; }; - E29F5EC019FD94FC00AD90CF /* FSReturnSignal.m in Sources */ = {isa = PBXBuildFile; fileRef = 8FD7D4A70975B377009B2685 /* FSReturnSignal.m */; }; - E29F5EC119FD94FC00AD90CF /* FSMovieInspector.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F573F7E056B754B00F2796A /* FSMovieInspector.m */; }; - E29F5EC219FD94FC00AD90CF /* FSMethod.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F3C13990C65E66400948776 /* FSMethod.m */; }; - E29F5EC319FD94FC00AD90CF /* FSCNClassDefinition.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F5AD3210D05CFFE000CEAC6 /* FSCNClassDefinition.m */; }; - E29F5EC419FD94FC00AD90CF /* FSCNBase.m in Sources */ = {isa = PBXBuildFile; fileRef = 8FE6397F0D09C0F400255EBA /* FSCNBase.m */; }; - E29F5EC519FD94FC00AD90CF /* FSCNIdentifier.m in Sources */ = {isa = PBXBuildFile; fileRef = 8FE6398F0D09DCB600255EBA /* FSCNIdentifier.m */; }; - E29F5EC619FD94FC00AD90CF /* FSTestObjCClass1.m in Sources */ = {isa = PBXBuildFile; fileRef = 8FE3DD210D26D49900A1D767 /* FSTestObjCClass1.m */; }; - E29F5EC719FD94FC00AD90CF /* FSTestObjCClass2.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F4822030D2C317700754A4E /* FSTestObjCClass2.m */; }; - E29F5EC819FD94FC00AD90CF /* FSCNCategory.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F8112F10D85E58200CB3407 /* FSCNCategory.m */; }; - E29F5EC919FD94FC00AD90CF /* FSCNMessage.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F59CA700D86DD0800D67A78 /* FSCNMessage.m */; }; - E29F5ECA19FD94FC00AD90CF /* FSCNSuper.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F72237E0D870C6A00394C99 /* FSCNSuper.m */; }; - E29F5ECB19FD94FC00AD90CF /* FSCNUnaryMessage.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F2E341F0D8DB61C00912543 /* FSCNUnaryMessage.m */; }; - E29F5ECC19FD94FC00AD90CF /* FSCNBinaryMessage.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F2E34320D8DBF6A00912543 /* FSCNBinaryMessage.m */; }; - E29F5ECD19FD94FC00AD90CF /* FSCNKeywordMessage.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F2E343B0D8DBFE700912543 /* FSCNKeywordMessage.m */; }; - E29F5ECE19FD94FC00AD90CF /* FSCNCascade.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F5900140D9468FC003A8B17 /* FSCNCascade.m */; }; - E29F5ECF19FD94FC00AD90CF /* FSCNStatementList.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F8F58650D9FE6A900ED0FED /* FSCNStatementList.m */; }; - E29F5ED019FD94FC00AD90CF /* FSCNPrecomputedObject.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F747DA80DA03AE200148342 /* FSCNPrecomputedObject.m */; }; - E29F5ED119FD94FC00AD90CF /* FSCNArray.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F747DB70DA0467100148342 /* FSCNArray.m */; }; - E29F5ED219FD94FC00AD90CF /* FSCNBlock.m in Sources */ = {isa = PBXBuildFile; fileRef = 8FAE79AB0DA0ED5D00CB6E14 /* FSCNBlock.m */; }; - E29F5ED319FD94FC00AD90CF /* FSCNAssignment.m in Sources */ = {isa = PBXBuildFile; fileRef = 8FAE79F20DA109C500CB6E14 /* FSCNAssignment.m */; }; - E29F5ED419FD94FC00AD90CF /* FSCNMethod.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F45CBBE0DA813F200AFA8C8 /* FSCNMethod.m */; }; - E29F5ED519FD94FC00AD90CF /* FSCNReturn.m in Sources */ = {isa = PBXBuildFile; fileRef = 8FD0A3130DD7276000E47459 /* FSCNReturn.m */; }; - E29F5ED619FD94FC00AD90CF /* FSClassDefinition.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F8949D60DE08B110094EC14 /* FSClassDefinition.m */; }; - E29F5ED719FD94FC00AD90CF /* FSTranscript.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F2DE65A0E57254700CF83CB /* FSTranscript.m */; }; - E29F5ED819FD94FC00AD90CF /* FSArray.m in Sources */ = {isa = PBXBuildFile; fileRef = 8FE6AD900EC740650096019D /* FSArray.m */; }; - E29F5ED919FD94FC00AD90CF /* Array.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F31A4C10EC74A2E00D1B8E8 /* Array.m */; }; - E29F5EDA19FD94FC00AD90CF /* Block.m in Sources */ = {isa = PBXBuildFile; fileRef = 8FCA00C20EEAF34300B10420 /* Block.m */; }; - E29F5EDB19FD94FC00AD90CF /* Number.m in Sources */ = {isa = PBXBuildFile; fileRef = 8FBB2FF10EEB3467007A3163 /* Number.m */; }; - E29F5EDC19FD94FC00AD90CF /* FSGlobalScope.m in Sources */ = {isa = PBXBuildFile; fileRef = 8FB9D5980F1CEE2100E10274 /* FSGlobalScope.m */; }; - E29F5EDD19FD94FC00AD90CF /* FSNSFileHandle.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F9D04180F1DF1CB001B8286 /* FSNSFileHandle.m */; }; - E29F5EDE19FD94FC00AD90CF /* FSAssociation.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F940B820F2393B0004525E1 /* FSAssociation.m */; }; - E29F5EDF19FD94FC00AD90CF /* FSCNDictionary.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F940C6F0F23BC2E004525E1 /* FSCNDictionary.m */; }; - E29F5EE019FD94FC00AD90CF /* FSObjectBrowserBottomBarTextDisplay.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F7A712A0F48397C00E95364 /* FSObjectBrowserBottomBarTextDisplay.m */; }; - E29F5EE119FD94FC00AD90CF /* FSNSAffineTransform.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F2D720A0F6BD9B100F0862A /* FSNSAffineTransform.m */; }; - E29F5EE219FD94FC00AD90CF /* FSNewlyAllocatedObject.m in Sources */ = {isa = PBXBuildFile; fileRef = 8FCA593210883B0100F67841 /* FSNewlyAllocatedObject.m */; }; - E29F5EE319FD94FC00AD90CF /* FSWorksWhenModalWindow.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F5EDA01109B384A003A2F4C /* FSWorksWhenModalWindow.m */; }; - E29F5EE419FD94FC00AD90CF /* FSNSMutableDictionary.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F44270C116549C700E88F21 /* FSNSMutableDictionary.m */; }; - E29F5EEE19FD98F500AD90CF /* Accelerate.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA223095189F9924002C5B6A /* Accelerate.framework */; }; - E29F5EEF19FD98F500AD90CF /* Accounts.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = E2DBA31F161CA5D00035A675 /* Accounts.framework */; }; - E29F5EF019FD98F500AD90CF /* AddressBook.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA22309F189F9A14002C5B6A /* AddressBook.framework */; }; - E29F5EF119FD98F500AD90CF /* AGL.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA2230A0189F9A14002C5B6A /* AGL.framework */; }; - E29F5EF319FD98F500AD90CF /* AppleScriptKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA2230A3189F9A14002C5B6A /* AppleScriptKit.framework */; }; - E29F5EF419FD98F500AD90CF /* AppleScriptObjC.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA2230A4189F9A14002C5B6A /* AppleScriptObjC.framework */; }; - E29F5EF519FD98F500AD90CF /* ApplicationServices.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA2230A6189F9A14002C5B6A /* ApplicationServices.framework */; }; - E29F5EF619FD98F500AD90CF /* AudioToolbox.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA223097189F9958002C5B6A /* AudioToolbox.framework */; }; - E29F5EF719FD98F500AD90CF /* AudioUnit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA2230A7189F9A14002C5B6A /* AudioUnit.framework */; }; - E29F5EF819FD98F500AD90CF /* AudioVideoBridging.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = E2DBA321161CA60C0035A675 /* AudioVideoBridging.framework */; }; - E29F5EF919FD98F500AD90CF /* Automator.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA2230A8189F9A14002C5B6A /* Automator.framework */; }; - E29F5EFA19FD98F500AD90CF /* AVFoundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = E2DBA32D161CA7180035A675 /* AVFoundation.framework */; }; - E29F5EFB19FD98F500AD90CF /* AVKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA223099189F9976002C5B6A /* AVKit.framework */; }; - E29F5EFC19FD98F500AD90CF /* CalendarStore.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA2230B3189F9A2E002C5B6A /* CalendarStore.framework */; }; - E29F5EFD19FD98F500AD90CF /* Carbon.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA2230B4189F9A2E002C5B6A /* Carbon.framework */; }; - E29F5EFE19FD98F500AD90CF /* CFNetwork.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA2230B5189F9A2E002C5B6A /* CFNetwork.framework */; }; - E29F5EFF19FD98F500AD90CF /* CloudKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = E29F5D9219FD944300AD90CF /* CloudKit.framework */; }; - E29F5F0019FD98F500AD90CF /* Cocoa.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA2230B6189F9A2E002C5B6A /* Cocoa.framework */; }; - E29F5F0119FD98F500AD90CF /* Collaboration.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA2230B7189F9A2E002C5B6A /* Collaboration.framework */; }; - E29F5F0219FD98F500AD90CF /* CoreAudio.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA22309B189F9988002C5B6A /* CoreAudio.framework */; }; - E29F5F0319FD98F500AD90CF /* CoreAudioKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA2230B8189F9A2F002C5B6A /* CoreAudioKit.framework */; }; - E29F5F0419FD98F600AD90CF /* CoreBluetooth.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = E29F5D9319FD944400AD90CF /* CoreBluetooth.framework */; }; - E29F5F0519FD98F600AD90CF /* CoreData.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA2230B9189F9A2F002C5B6A /* CoreData.framework */; }; - E29F5F0619FD98F600AD90CF /* CoreFoundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA2230BA189F9A2F002C5B6A /* CoreFoundation.framework */; }; - E29F5F0719FD98F600AD90CF /* CoreGraphics.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA2230BB189F9A2F002C5B6A /* CoreGraphics.framework */; }; - E29F5F0819FD98F600AD90CF /* CoreLocation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA22309D189F99CC002C5B6A /* CoreLocation.framework */; }; - E29F5F0919FD98F600AD90CF /* CoreMedia.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA2230BC189F9A2F002C5B6A /* CoreMedia.framework */; }; - E29F5F0A19FD98F600AD90CF /* CoreMediaIO.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA2230BD189F9A2F002C5B6A /* CoreMediaIO.framework */; }; - E29F5F0B19FD98F600AD90CF /* CoreMIDI.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA2230BE189F9A2F002C5B6A /* CoreMIDI.framework */; }; - E29F5F0C19FD98F600AD90CF /* CoreServices.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA2230BF189F9A2F002C5B6A /* CoreServices.framework */; }; - E29F5F0D19FD98F600AD90CF /* CoreText.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA2230C0189F9A2F002C5B6A /* CoreText.framework */; }; - E29F5F0E19FD98F600AD90CF /* CoreVideo.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA2230C1189F9A2F002C5B6A /* CoreVideo.framework */; }; - E29F5F0F19FD98F600AD90CF /* CoreWLAN.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA2230C2189F9A2F002C5B6A /* CoreWLAN.framework */; }; - E29F5F1019FD98F600AD90CF /* CryptoTokenKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = E29F5D9419FD944400AD90CF /* CryptoTokenKit.framework */; }; - E29F5F1119FD98F600AD90CF /* DirectoryService.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA2230D3189F9A7A002C5B6A /* DirectoryService.framework */; }; - E29F5F1219FD98F600AD90CF /* DiscRecording.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA2230D4189F9A7A002C5B6A /* DiscRecording.framework */; }; - E29F5F1319FD98F600AD90CF /* DiscRecordingUI.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA2230D5189F9A7A002C5B6A /* DiscRecordingUI.framework */; }; - E29F5F1419FD98F600AD90CF /* DiskArbitration.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA2230D6189F9A7A002C5B6A /* DiskArbitration.framework */; }; - E29F5F1519FD98F600AD90CF /* DrawSprocket.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA2230D7189F9A7A002C5B6A /* DrawSprocket.framework */; }; - E29F5F1619FD98F600AD90CF /* DVComponentGlue.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA2230D8189F9A7A002C5B6A /* DVComponentGlue.framework */; }; - E29F5F1719FD98F600AD90CF /* DVDPlayback.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA2230D9189F9A7A002C5B6A /* DVDPlayback.framework */; }; - E29F5F1819FD98F600AD90CF /* EventKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = E2DBA31C161CA57C0035A675 /* EventKit.framework */; }; - E29F5F1919FD98F600AD90CF /* ExceptionHandling.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA22316F189F9AD3002C5B6A /* ExceptionHandling.framework */; }; - E29F5F1A19FD98F600AD90CF /* FinderSync.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = E29F5D9519FD944400AD90CF /* FinderSync.framework */; }; - E29F5F1B19FD98F600AD90CF /* ForceFeedback.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA223170189F9AD3002C5B6A /* ForceFeedback.framework */; }; - E29F5F1C19FD98F600AD90CF /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA223171189F9AD3002C5B6A /* Foundation.framework */; }; - E29F5F1D19FD98F600AD90CF /* FWAUserLib.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA223172189F9AD3002C5B6A /* FWAUserLib.framework */; }; - E29F5F1E19FD98F600AD90CF /* GameController.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA223173189F9AD3002C5B6A /* GameController.framework */; }; - E29F5F1F19FD98F600AD90CF /* GameKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = E2DBA323161CA6270035A675 /* GameKit.framework */; }; - E29F5F2019FD98F600AD90CF /* GLKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = E2DBA325161CA64B0035A675 /* GLKit.framework */; }; - E29F5F2119FD98F600AD90CF /* GLUT.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA223147189F9AC5002C5B6A /* GLUT.framework */; }; - E29F5F2219FD98F600AD90CF /* GSS.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA223148189F9AC5002C5B6A /* GSS.framework */; }; - E29F5F2319FD98F600AD90CF /* Hypervisor.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = E29F5D9619FD944500AD90CF /* Hypervisor.framework */; }; - E29F5F2419FD98F600AD90CF /* ICADevices.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA223149189F9AC6002C5B6A /* ICADevices.framework */; }; - E29F5F2519FD98F600AD90CF /* ImageCaptureCore.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA22314A189F9AC6002C5B6A /* ImageCaptureCore.framework */; }; - E29F5F2619FD98F600AD90CF /* ImageIO.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA22314B189F9AC6002C5B6A /* ImageIO.framework */; }; - E29F5F2719FD98F600AD90CF /* IMServicePlugIn.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA22314C189F9AC6002C5B6A /* IMServicePlugIn.framework */; }; - E29F5F2819FD98F600AD90CF /* InputMethodKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA22314D189F9AC6002C5B6A /* InputMethodKit.framework */; }; - E29F5F2919FD98F600AD90CF /* InstallerPlugins.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA22314E189F9AC6002C5B6A /* InstallerPlugins.framework */; }; - E29F5F2A19FD98F600AD90CF /* InstantMessage.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA22314F189F9AC6002C5B6A /* InstantMessage.framework */; }; - E29F5F2B19FD98F600AD90CF /* IOBluetooth.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA223150189F9AC6002C5B6A /* IOBluetooth.framework */; }; - E29F5F2C19FD98F600AD90CF /* IOBluetoothUI.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA223151189F9AC6002C5B6A /* IOBluetoothUI.framework */; }; - E29F5F2D19FD98F600AD90CF /* IOKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA223152189F9AC6002C5B6A /* IOKit.framework */; }; - E29F5F2E19FD98F600AD90CF /* IOSurface.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA223153189F9AC6002C5B6A /* IOSurface.framework */; }; - E29F5F3019FD98F600AD90CF /* JavaScriptCore.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA223155189F9AC6002C5B6A /* JavaScriptCore.framework */; }; - E29F5F3219FD98F600AD90CF /* Kerberos.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA223157189F9AC6002C5B6A /* Kerberos.framework */; }; - E29F5F3419FD98F600AD90CF /* LatentSemanticMapping.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA223159189F9AC7002C5B6A /* LatentSemanticMapping.framework */; }; - E29F5F3519FD98F600AD90CF /* LDAP.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA223144189F9ABD002C5B6A /* LDAP.framework */; }; - E29F5F3619FD98F600AD90CF /* LocalAuthentication.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = E29F5D9719FD944500AD90CF /* LocalAuthentication.framework */; }; - E29F5F3719FD98F600AD90CF /* MapKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA2230F4189F9A99002C5B6A /* MapKit.framework */; }; - E29F5F3819FD98F600AD90CF /* MediaAccessibility.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA2230F5189F9A99002C5B6A /* MediaAccessibility.framework */; }; - E29F5F3919FD98F600AD90CF /* MediaLibrary.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA2230F6189F9A99002C5B6A /* MediaLibrary.framework */; }; - E29F5F3A19FD98F600AD90CF /* MediaToolbox.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA2230F7189F9A99002C5B6A /* MediaToolbox.framework */; }; - E29F5F3B19FD98F600AD90CF /* MultipeerConnectivity.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = E29F5D9819FD944500AD90CF /* MultipeerConnectivity.framework */; }; - E29F5F3C19FD98F600AD90CF /* NetFS.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA2230F8189F9A99002C5B6A /* NetFS.framework */; }; - E29F5F3D19FD98F600AD90CF /* NotificationCenter.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = E29F5D9919FD944600AD90CF /* NotificationCenter.framework */; }; - E29F5F3E19FD98F600AD90CF /* OpenAL.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA2230F9189F9A99002C5B6A /* OpenAL.framework */; }; - E29F5F3F19FD98F600AD90CF /* OpenCL.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA2230FA189F9A99002C5B6A /* OpenCL.framework */; }; - E29F5F4019FD98F600AD90CF /* OpenDirectory.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA2230FB189F9A99002C5B6A /* OpenDirectory.framework */; }; - E29F5F4119FD98F600AD90CF /* OpenGL.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA2230FC189F9A99002C5B6A /* OpenGL.framework */; }; - E29F5F4219FD98F600AD90CF /* OSAKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA2230FD189F9A99002C5B6A /* OSAKit.framework */; }; - E29F5F4319FD98F600AD90CF /* PCSC.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA2230FE189F9A99002C5B6A /* PCSC.framework */; }; - E29F5F4419FD98F600AD90CF /* PreferencePanes.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA2230FF189F9A99002C5B6A /* PreferencePanes.framework */; }; - E29F5F4519FD98F600AD90CF /* PubSub.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA223100189F9A99002C5B6A /* PubSub.framework */; }; - E29F5F4619FD98F600AD90CF /* Python.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = E29F5D9A19FD944600AD90CF /* Python.framework */; }; - E29F5F4719FD98F600AD90CF /* QTKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA223101189F9A99002C5B6A /* QTKit.framework */; }; - E29F5F4819FD98F600AD90CF /* Quartz.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA223102189F9A99002C5B6A /* Quartz.framework */; }; - E29F5F4919FD98F600AD90CF /* QuartzCore.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA223103189F9A99002C5B6A /* QuartzCore.framework */; }; - E29F5F4A19FD98F600AD90CF /* QuickLook.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA223104189F9A99002C5B6A /* QuickLook.framework */; }; - E29F5F4B19FD98F600AD90CF /* QuickTime.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA223105189F9A99002C5B6A /* QuickTime.framework */; }; - E29F5F4C19FD98F600AD90CF /* Ruby.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA223106189F9A9A002C5B6A /* Ruby.framework */; }; - E29F5F4D19FD98F600AD90CF /* SceneKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = E2DBA327161CA65A0035A675 /* SceneKit.framework */; }; - E29F5F4E19FD98F600AD90CF /* ScreenSaver.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA223108189F9A9A002C5B6A /* ScreenSaver.framework */; }; - E29F5F4F19FD98F600AD90CF /* Scripting.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA223109189F9A9A002C5B6A /* Scripting.framework */; }; - E29F5F5019FD98F600AD90CF /* ScriptingBridge.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA22310A189F9A9A002C5B6A /* ScriptingBridge.framework */; }; - E29F5F5119FD98F600AD90CF /* Security.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA22310B189F9A9A002C5B6A /* Security.framework */; }; - E29F5F5219FD98F600AD90CF /* SecurityFoundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA22310C189F9A9A002C5B6A /* SecurityFoundation.framework */; }; - E29F5F5319FD98F600AD90CF /* SecurityInterface.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA22310D189F9A9A002C5B6A /* SecurityInterface.framework */; }; - E29F5F5419FD98F600AD90CF /* ServiceManagement.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA22310E189F9A9A002C5B6A /* ServiceManagement.framework */; }; - E29F5F5519FD98F600AD90CF /* Social.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = E2DBA329161CA6600035A675 /* Social.framework */; }; - E29F5F5619FD98F600AD90CF /* SpriteKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA22310F189F9A9A002C5B6A /* SpriteKit.framework */; }; - E29F5F5719FD98F600AD90CF /* StoreKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA223110189F9A9A002C5B6A /* StoreKit.framework */; }; - E29F5F5819FD98F600AD90CF /* SyncServices.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA223111189F9A9A002C5B6A /* SyncServices.framework */; }; - E29F5F5919FD98F600AD90CF /* SystemConfiguration.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA223112189F9A9A002C5B6A /* SystemConfiguration.framework */; }; - E29F5F5A19FD98F600AD90CF /* Tcl.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA223113189F9A9A002C5B6A /* Tcl.framework */; }; - E29F5F5B19FD98F600AD90CF /* Tk.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA223114189F9A9A002C5B6A /* Tk.framework */; }; - E29F5F5C19FD98F600AD90CF /* TWAIN.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA223115189F9A9A002C5B6A /* TWAIN.framework */; }; - E29F5F5D19FD98F600AD90CF /* VideoDecodeAcceleration.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA223116189F9A9A002C5B6A /* VideoDecodeAcceleration.framework */; }; - E29F5F5E19FD98F600AD90CF /* VideoToolbox.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = E2DBA32B161CA6660035A675 /* VideoToolbox.framework */; }; - E29F5F5F19FD98F600AD90CF /* vmnet.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = E29F5D9B19FD944600AD90CF /* vmnet.framework */; }; - E29F5F6019FD98F600AD90CF /* WebKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA223117189F9A9A002C5B6A /* WebKit.framework */; }; - E29F5F6219FD98F700AD90CF /* AppKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = E29F5F6119FD98F600AD90CF /* AppKit.framework */; }; - E29F5F6319FD991E00AD90CF /* AppKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = E29F5F6119FD98F600AD90CF /* AppKit.framework */; }; - E29F5F6419FD992600AD90CF /* AppKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = E29F5F6119FD98F600AD90CF /* AppKit.framework */; }; - E29F5F6519FD993000AD90CF /* AppKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = E29F5F6119FD98F600AD90CF /* AppKit.framework */; }; - E29F5F6619FD995800AD90CF /* AppKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = E29F5F6119FD98F600AD90CF /* AppKit.framework */; }; - E29F5F6719FD996F00AD90CF /* Automator.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA2230A8189F9A14002C5B6A /* Automator.framework */; }; - E29F5F6819FD997800AD90CF /* QTKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA223101189F9A99002C5B6A /* QTKit.framework */; }; - E29F5F6A19FD998A00AD90CF /* ExceptionHandling.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA22316F189F9AD3002C5B6A /* ExceptionHandling.framework */; }; - E29F5F6B19FD999200AD90CF /* DiscRecording.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA2230D4189F9A7A002C5B6A /* DiscRecording.framework */; }; - E29F5F6C19FD999B00AD90CF /* IOBluetooth.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA223150189F9AC6002C5B6A /* IOBluetooth.framework */; }; - E29F5F6D19FD99A400AD90CF /* IOBluetoothUI.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA223151189F9AC6002C5B6A /* IOBluetoothUI.framework */; }; - E29F5F6E19FD99AC00AD90CF /* Cocoa.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA2230B6189F9A2E002C5B6A /* Cocoa.framework */; }; - E29F5F6F19FD99B500AD90CF /* WebKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA223117189F9A9A002C5B6A /* WebKit.framework */; }; - E29F5F7019FD99BD00AD90CF /* QuartzCore.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA223103189F9A99002C5B6A /* QuartzCore.framework */; }; - E29F5F7119FD99C500AD90CF /* CalendarStore.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA2230B3189F9A2E002C5B6A /* CalendarStore.framework */; }; - E29F5F7219FD99CE00AD90CF /* AudioUnit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA2230A7189F9A14002C5B6A /* AudioUnit.framework */; }; - E29F5F7319FD99D600AD90CF /* InputMethodKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA22314D189F9AC6002C5B6A /* InputMethodKit.framework */; }; - E29F5F7419FD99E300AD90CF /* AppKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = E29F5F6119FD98F600AD90CF /* AppKit.framework */; }; - E29F5F7519FD99F000AD90CF /* ScriptingBridge.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA22310A189F9A9A002C5B6A /* ScriptingBridge.framework */; }; - E29F5F7619FD9A4F00AD90CF /* AVFoundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = E2DBA32D161CA7180035A675 /* AVFoundation.framework */; }; - E29F5F7719FD9ACC00AD90CF /* Cocoa.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA2230B6189F9A2E002C5B6A /* Cocoa.framework */; }; - E29F5F7819FD9AD100AD90CF /* Cocoa.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA2230B6189F9A2E002C5B6A /* Cocoa.framework */; }; - E29F5F7919FD9AD800AD90CF /* Cocoa.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA2230B6189F9A2E002C5B6A /* Cocoa.framework */; }; - E29F5F7A19FD9ADE00AD90CF /* Cocoa.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA2230B6189F9A2E002C5B6A /* Cocoa.framework */; }; - E29F5F7C19FD9BDB00AD90CF /* DrawSprocket.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA2230D7189F9A7A002C5B6A /* DrawSprocket.framework */; }; - E29F5F7D19FD9BDC00AD90CF /* DrawSprocket.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA2230D7189F9A7A002C5B6A /* DrawSprocket.framework */; }; - E29F5F7E19FD9BDD00AD90CF /* DrawSprocket.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA2230D7189F9A7A002C5B6A /* DrawSprocket.framework */; }; - E29F5F7F19FD9C1600AD90CF /* DVComponentGlue.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA2230D8189F9A7A002C5B6A /* DVComponentGlue.framework */; }; - E29F5F8019FD9C1700AD90CF /* DVComponentGlue.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA2230D8189F9A7A002C5B6A /* DVComponentGlue.framework */; }; - E29F5F8119FD9C1800AD90CF /* DVComponentGlue.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA2230D8189F9A7A002C5B6A /* DVComponentGlue.framework */; }; - E29F5F8219FD9C2D00AD90CF /* ExceptionHandling.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA22316F189F9AD3002C5B6A /* ExceptionHandling.framework */; }; - E29F5F8319FD9C2E00AD90CF /* ExceptionHandling.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA22316F189F9AD3002C5B6A /* ExceptionHandling.framework */; }; - E29F5F8419FD9C2F00AD90CF /* ExceptionHandling.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA22316F189F9AD3002C5B6A /* ExceptionHandling.framework */; }; - E29F5F8519FD9C3100AD90CF /* ExceptionHandling.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA22316F189F9AD3002C5B6A /* ExceptionHandling.framework */; }; - E29F5F8619FD9C3200AD90CF /* ExceptionHandling.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA22316F189F9AD3002C5B6A /* ExceptionHandling.framework */; }; - E29F5F8A19FD9E3A00AD90CF /* QuickTime.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA223105189F9A99002C5B6A /* QuickTime.framework */; }; - E29F5F8B19FD9E3B00AD90CF /* QuickTime.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA223105189F9A99002C5B6A /* QuickTime.framework */; }; - E29F5F8C19FD9E3C00AD90CF /* QuickTime.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA223105189F9A99002C5B6A /* QuickTime.framework */; }; - E29F5F8D19FD9E4400AD90CF /* Ruby.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA223106189F9A9A002C5B6A /* Ruby.framework */; }; - E29F5F8E19FD9E4500AD90CF /* Ruby.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA223106189F9A9A002C5B6A /* Ruby.framework */; }; - E29F5F8F19FD9E5B00AD90CF /* Scripting.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA223109189F9A9A002C5B6A /* Scripting.framework */; }; - E29F5F9019FD9E5B00AD90CF /* Scripting.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA223109189F9A9A002C5B6A /* Scripting.framework */; }; - E29F5F9119FD9E5C00AD90CF /* Scripting.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA223109189F9A9A002C5B6A /* Scripting.framework */; }; - E29F5F9219FD9E6A00AD90CF /* ScriptingBridge.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA22310A189F9A9A002C5B6A /* ScriptingBridge.framework */; }; + ED3004E81A1A86EF00675D94 /* FSObjectInspectorViewController.h in Headers */ = {isa = PBXBuildFile; fileRef = ED3004E51A1A86EF00675D94 /* FSObjectInspectorViewController.h */; }; + ED3004E91A1A86EF00675D94 /* FSObjectInspectorViewController.h in Headers */ = {isa = PBXBuildFile; fileRef = ED3004E51A1A86EF00675D94 /* FSObjectInspectorViewController.h */; }; + ED3004EA1A1A86EF00675D94 /* FSObjectInspectorViewController.h in Headers */ = {isa = PBXBuildFile; fileRef = ED3004E51A1A86EF00675D94 /* FSObjectInspectorViewController.h */; }; + ED3004EB1A1A86EF00675D94 /* FSObjectInspectorViewController.h in Headers */ = {isa = PBXBuildFile; fileRef = ED3004E51A1A86EF00675D94 /* FSObjectInspectorViewController.h */; }; + ED3004EC1A1A86EF00675D94 /* FSObjectInspectorViewController.h in Headers */ = {isa = PBXBuildFile; fileRef = ED3004E51A1A86EF00675D94 /* FSObjectInspectorViewController.h */; }; + ED3004ED1A1A86EF00675D94 /* FSObjectInspectorViewController.h in Headers */ = {isa = PBXBuildFile; fileRef = ED3004E51A1A86EF00675D94 /* FSObjectInspectorViewController.h */; }; + ED3004EE1A1A86EF00675D94 /* FSObjectInspectorViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = ED3004E61A1A86EF00675D94 /* FSObjectInspectorViewController.m */; settings = {COMPILER_FLAGS = "-fobjc-arc"; }; }; + ED3004EF1A1A86EF00675D94 /* FSObjectInspectorViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = ED3004E61A1A86EF00675D94 /* FSObjectInspectorViewController.m */; settings = {COMPILER_FLAGS = "-fobjc-arc"; }; }; + ED3004F01A1A86EF00675D94 /* FSObjectInspectorViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = ED3004E61A1A86EF00675D94 /* FSObjectInspectorViewController.m */; settings = {COMPILER_FLAGS = "-fobjc-arc"; }; }; + ED3004F11A1A86EF00675D94 /* FSObjectInspectorViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = ED3004E61A1A86EF00675D94 /* FSObjectInspectorViewController.m */; settings = {COMPILER_FLAGS = "-fobjc-arc"; }; }; + ED3004F21A1A86EF00675D94 /* FSObjectInspectorViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = ED3004E61A1A86EF00675D94 /* FSObjectInspectorViewController.m */; settings = {COMPILER_FLAGS = "-fobjc-arc"; }; }; + ED3004F31A1A86EF00675D94 /* FSObjectInspectorViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = ED3004E61A1A86EF00675D94 /* FSObjectInspectorViewController.m */; settings = {COMPILER_FLAGS = "-fobjc-arc"; }; }; + ED3004F41A1A86EF00675D94 /* FSObjectInspectorViewController.xib in Resources */ = {isa = PBXBuildFile; fileRef = ED3004E71A1A86EF00675D94 /* FSObjectInspectorViewController.xib */; }; + ED3004F51A1A86EF00675D94 /* FSObjectInspectorViewController.xib in Resources */ = {isa = PBXBuildFile; fileRef = ED3004E71A1A86EF00675D94 /* FSObjectInspectorViewController.xib */; }; + ED3004F61A1A86EF00675D94 /* FSObjectInspectorViewController.xib in Resources */ = {isa = PBXBuildFile; fileRef = ED3004E71A1A86EF00675D94 /* FSObjectInspectorViewController.xib */; }; + ED3004F71A1A86EF00675D94 /* FSObjectInspectorViewController.xib in Resources */ = {isa = PBXBuildFile; fileRef = ED3004E71A1A86EF00675D94 /* FSObjectInspectorViewController.xib */; }; + ED3004F81A1A86EF00675D94 /* FSObjectInspectorViewController.xib in Resources */ = {isa = PBXBuildFile; fileRef = ED3004E71A1A86EF00675D94 /* FSObjectInspectorViewController.xib */; }; + ED3004F91A1A86EF00675D94 /* FSObjectInspectorViewController.xib in Resources */ = {isa = PBXBuildFile; fileRef = ED3004E71A1A86EF00675D94 /* FSObjectInspectorViewController.xib */; }; + ED3CB6411A1E5B3300771077 /* FSColorWell.h in Headers */ = {isa = PBXBuildFile; fileRef = ED3CB63F1A1E5B3300771077 /* FSColorWell.h */; }; + ED3CB6421A1E5B3300771077 /* FSColorWell.h in Headers */ = {isa = PBXBuildFile; fileRef = ED3CB63F1A1E5B3300771077 /* FSColorWell.h */; }; + ED3CB6431A1E5B3300771077 /* FSColorWell.h in Headers */ = {isa = PBXBuildFile; fileRef = ED3CB63F1A1E5B3300771077 /* FSColorWell.h */; }; + ED3CB6441A1E5B3300771077 /* FSColorWell.h in Headers */ = {isa = PBXBuildFile; fileRef = ED3CB63F1A1E5B3300771077 /* FSColorWell.h */; }; + ED3CB6451A1E5B3300771077 /* FSColorWell.h in Headers */ = {isa = PBXBuildFile; fileRef = ED3CB63F1A1E5B3300771077 /* FSColorWell.h */; }; + ED3CB6461A1E5B3300771077 /* FSColorWell.h in Headers */ = {isa = PBXBuildFile; fileRef = ED3CB63F1A1E5B3300771077 /* FSColorWell.h */; }; + ED3CB6471A1E5B3300771077 /* FSColorWell.h in Headers */ = {isa = PBXBuildFile; fileRef = ED3CB63F1A1E5B3300771077 /* FSColorWell.h */; }; + ED3CB6481A1E5B3300771077 /* FSColorWell.h in Headers */ = {isa = PBXBuildFile; fileRef = ED3CB63F1A1E5B3300771077 /* FSColorWell.h */; }; + ED3CB6491A1E5B3300771077 /* FSColorWell.m in Sources */ = {isa = PBXBuildFile; fileRef = ED3CB6401A1E5B3300771077 /* FSColorWell.m */; }; + ED3CB64A1A1E5B3300771077 /* FSColorWell.m in Sources */ = {isa = PBXBuildFile; fileRef = ED3CB6401A1E5B3300771077 /* FSColorWell.m */; }; + ED3CB64B1A1E5B3300771077 /* FSColorWell.m in Sources */ = {isa = PBXBuildFile; fileRef = ED3CB6401A1E5B3300771077 /* FSColorWell.m */; }; + ED3CB64C1A1E5B3300771077 /* FSColorWell.m in Sources */ = {isa = PBXBuildFile; fileRef = ED3CB6401A1E5B3300771077 /* FSColorWell.m */; }; + ED3CB64D1A1E5B3300771077 /* FSColorWell.m in Sources */ = {isa = PBXBuildFile; fileRef = ED3CB6401A1E5B3300771077 /* FSColorWell.m */; }; + ED3CB64E1A1E5B3300771077 /* FSColorWell.m in Sources */ = {isa = PBXBuildFile; fileRef = ED3CB6401A1E5B3300771077 /* FSColorWell.m */; }; + ED3CB64F1A1E5B3300771077 /* FSColorWell.m in Sources */ = {isa = PBXBuildFile; fileRef = ED3CB6401A1E5B3300771077 /* FSColorWell.m */; }; + ED3CB6501A1E5B3300771077 /* FSColorWell.m in Sources */ = {isa = PBXBuildFile; fileRef = ED3CB6401A1E5B3300771077 /* FSColorWell.m */; settings = {COMPILER_FLAGS = "-fobjc-arc"; }; }; + ED3CB6511A1E5B3300771077 /* FSColorWell.m in Sources */ = {isa = PBXBuildFile; fileRef = ED3CB6401A1E5B3300771077 /* FSColorWell.m */; settings = {COMPILER_FLAGS = "-fobjc-arc"; }; }; + ED3CB6521A1E5B9100771077 /* FSColorWell.m in Sources */ = {isa = PBXBuildFile; fileRef = ED3CB6401A1E5B3300771077 /* FSColorWell.m */; settings = {COMPILER_FLAGS = "-fobjc-arc"; }; }; + ED68BE421A35E39000968430 /* FSObjectBrowser.xib in Resources */ = {isa = PBXBuildFile; fileRef = ED68BE411A35E38F00968430 /* FSObjectBrowser.xib */; }; + ED68BE431A35E39000968430 /* FSObjectBrowser.xib in Resources */ = {isa = PBXBuildFile; fileRef = ED68BE411A35E38F00968430 /* FSObjectBrowser.xib */; }; + ED68BE441A35E39000968430 /* FSObjectBrowser.xib in Resources */ = {isa = PBXBuildFile; fileRef = ED68BE411A35E38F00968430 /* FSObjectBrowser.xib */; }; + ED68BE451A35E39000968430 /* FSObjectBrowser.xib in Resources */ = {isa = PBXBuildFile; fileRef = ED68BE411A35E38F00968430 /* FSObjectBrowser.xib */; }; + ED68BE461A35E39000968430 /* FSObjectBrowser.xib in Resources */ = {isa = PBXBuildFile; fileRef = ED68BE411A35E38F00968430 /* FSObjectBrowser.xib */; }; + ED68BE471A35E39000968430 /* FSObjectBrowser.xib in Resources */ = {isa = PBXBuildFile; fileRef = ED68BE411A35E38F00968430 /* FSObjectBrowser.xib */; }; + ED68BE481A35E39000968430 /* FSObjectBrowser.xib in Resources */ = {isa = PBXBuildFile; fileRef = ED68BE411A35E38F00968430 /* FSObjectBrowser.xib */; }; + ED68BE491A35E39000968430 /* FSObjectBrowser.xib in Resources */ = {isa = PBXBuildFile; fileRef = ED68BE411A35E38F00968430 /* FSObjectBrowser.xib */; }; + ED68BE4A1A35E39000968430 /* FSObjectBrowser.xib in Resources */ = {isa = PBXBuildFile; fileRef = ED68BE411A35E38F00968430 /* FSObjectBrowser.xib */; }; + ED68BE4B1A35E39000968430 /* FSObjectBrowser.xib in Resources */ = {isa = PBXBuildFile; fileRef = ED68BE411A35E38F00968430 /* FSObjectBrowser.xib */; }; + ED68BE4E1A35E94B00968430 /* FSObjectBrowserWindow.h in Headers */ = {isa = PBXBuildFile; fileRef = ED68BE4C1A35E94B00968430 /* FSObjectBrowserWindow.h */; }; + ED68BE4F1A35E94B00968430 /* FSObjectBrowserWindow.h in Headers */ = {isa = PBXBuildFile; fileRef = ED68BE4C1A35E94B00968430 /* FSObjectBrowserWindow.h */; }; + ED68BE501A35E94B00968430 /* FSObjectBrowserWindow.h in Headers */ = {isa = PBXBuildFile; fileRef = ED68BE4C1A35E94B00968430 /* FSObjectBrowserWindow.h */; }; + ED68BE511A35E94B00968430 /* FSObjectBrowserWindow.h in Headers */ = {isa = PBXBuildFile; fileRef = ED68BE4C1A35E94B00968430 /* FSObjectBrowserWindow.h */; }; + ED68BE521A35E94B00968430 /* FSObjectBrowserWindow.h in Headers */ = {isa = PBXBuildFile; fileRef = ED68BE4C1A35E94B00968430 /* FSObjectBrowserWindow.h */; }; + ED68BE531A35E94B00968430 /* FSObjectBrowserWindow.h in Headers */ = {isa = PBXBuildFile; fileRef = ED68BE4C1A35E94B00968430 /* FSObjectBrowserWindow.h */; }; + ED68BE541A35E94B00968430 /* FSObjectBrowserWindow.h in Headers */ = {isa = PBXBuildFile; fileRef = ED68BE4C1A35E94B00968430 /* FSObjectBrowserWindow.h */; }; + ED68BE551A35E94B00968430 /* FSObjectBrowserWindow.h in Headers */ = {isa = PBXBuildFile; fileRef = ED68BE4C1A35E94B00968430 /* FSObjectBrowserWindow.h */; }; + ED68BE561A35E94B00968430 /* FSObjectBrowserWindow.h in Headers */ = {isa = PBXBuildFile; fileRef = ED68BE4C1A35E94B00968430 /* FSObjectBrowserWindow.h */; }; + ED68BE571A35E94B00968430 /* FSObjectBrowserWindow.m in Sources */ = {isa = PBXBuildFile; fileRef = ED68BE4D1A35E94B00968430 /* FSObjectBrowserWindow.m */; settings = {COMPILER_FLAGS = "-fobjc-arc"; }; }; + ED68BE581A35E94B00968430 /* FSObjectBrowserWindow.m in Sources */ = {isa = PBXBuildFile; fileRef = ED68BE4D1A35E94B00968430 /* FSObjectBrowserWindow.m */; settings = {COMPILER_FLAGS = "-fobjc-arc"; }; }; + ED68BE591A35E94B00968430 /* FSObjectBrowserWindow.m in Sources */ = {isa = PBXBuildFile; fileRef = ED68BE4D1A35E94B00968430 /* FSObjectBrowserWindow.m */; settings = {COMPILER_FLAGS = "-fobjc-arc"; }; }; + ED68BE5A1A35E94B00968430 /* FSObjectBrowserWindow.m in Sources */ = {isa = PBXBuildFile; fileRef = ED68BE4D1A35E94B00968430 /* FSObjectBrowserWindow.m */; settings = {COMPILER_FLAGS = "-fobjc-arc"; }; }; + ED68BE5B1A35E94B00968430 /* FSObjectBrowserWindow.m in Sources */ = {isa = PBXBuildFile; fileRef = ED68BE4D1A35E94B00968430 /* FSObjectBrowserWindow.m */; settings = {COMPILER_FLAGS = "-fobjc-arc"; }; }; + ED68BE5C1A35E94B00968430 /* FSObjectBrowserWindow.m in Sources */ = {isa = PBXBuildFile; fileRef = ED68BE4D1A35E94B00968430 /* FSObjectBrowserWindow.m */; settings = {COMPILER_FLAGS = "-fobjc-arc"; }; }; + ED68BE5D1A35E94B00968430 /* FSObjectBrowserWindow.m in Sources */ = {isa = PBXBuildFile; fileRef = ED68BE4D1A35E94B00968430 /* FSObjectBrowserWindow.m */; settings = {COMPILER_FLAGS = "-fobjc-arc"; }; }; + ED68BE5E1A35E94B00968430 /* FSObjectBrowserWindow.m in Sources */ = {isa = PBXBuildFile; fileRef = ED68BE4D1A35E94B00968430 /* FSObjectBrowserWindow.m */; settings = {COMPILER_FLAGS = "-fobjc-arc"; }; }; + ED68BE5F1A35E94B00968430 /* FSObjectBrowserWindow.m in Sources */ = {isa = PBXBuildFile; fileRef = ED68BE4D1A35E94B00968430 /* FSObjectBrowserWindow.m */; settings = {COMPILER_FLAGS = "-fobjc-arc"; }; }; + ED68BE601A35E94B00968430 /* FSObjectBrowserWindow.m in Sources */ = {isa = PBXBuildFile; fileRef = ED68BE4D1A35E94B00968430 /* FSObjectBrowserWindow.m */; settings = {COMPILER_FLAGS = "-fobjc-arc"; }; }; + ED8222D61A194FD600C42C72 /* FSObjectInspectorViewModelItem.h in Headers */ = {isa = PBXBuildFile; fileRef = ED8222D41A194FD600C42C72 /* FSObjectInspectorViewModelItem.h */; }; + ED8222D71A194FD600C42C72 /* FSObjectInspectorViewModelItem.h in Headers */ = {isa = PBXBuildFile; fileRef = ED8222D41A194FD600C42C72 /* FSObjectInspectorViewModelItem.h */; }; + ED8222D81A194FD600C42C72 /* FSObjectInspectorViewModelItem.h in Headers */ = {isa = PBXBuildFile; fileRef = ED8222D41A194FD600C42C72 /* FSObjectInspectorViewModelItem.h */; }; + ED8222D91A194FD600C42C72 /* FSObjectInspectorViewModelItem.h in Headers */ = {isa = PBXBuildFile; fileRef = ED8222D41A194FD600C42C72 /* FSObjectInspectorViewModelItem.h */; }; + ED8222DA1A194FD600C42C72 /* FSObjectInspectorViewModelItem.h in Headers */ = {isa = PBXBuildFile; fileRef = ED8222D41A194FD600C42C72 /* FSObjectInspectorViewModelItem.h */; }; + ED8222DB1A194FD600C42C72 /* FSObjectInspectorViewModelItem.h in Headers */ = {isa = PBXBuildFile; fileRef = ED8222D41A194FD600C42C72 /* FSObjectInspectorViewModelItem.h */; }; + ED8222DC1A194FD600C42C72 /* FSObjectInspectorViewModelItem.h in Headers */ = {isa = PBXBuildFile; fileRef = ED8222D41A194FD600C42C72 /* FSObjectInspectorViewModelItem.h */; }; + ED8222DD1A194FD600C42C72 /* FSObjectInspectorViewModelItem.m in Sources */ = {isa = PBXBuildFile; fileRef = ED8222D51A194FD600C42C72 /* FSObjectInspectorViewModelItem.m */; settings = {COMPILER_FLAGS = "-fobjc-arc"; }; }; + ED8222DE1A194FD600C42C72 /* FSObjectInspectorViewModelItem.m in Sources */ = {isa = PBXBuildFile; fileRef = ED8222D51A194FD600C42C72 /* FSObjectInspectorViewModelItem.m */; settings = {COMPILER_FLAGS = "-fobjc-arc"; }; }; + ED8222DF1A194FD600C42C72 /* FSObjectInspectorViewModelItem.m in Sources */ = {isa = PBXBuildFile; fileRef = ED8222D51A194FD600C42C72 /* FSObjectInspectorViewModelItem.m */; settings = {COMPILER_FLAGS = "-fobjc-arc"; }; }; + ED8222E01A194FD600C42C72 /* FSObjectInspectorViewModelItem.m in Sources */ = {isa = PBXBuildFile; fileRef = ED8222D51A194FD600C42C72 /* FSObjectInspectorViewModelItem.m */; settings = {COMPILER_FLAGS = "-fobjc-arc"; }; }; + ED8222E11A194FD600C42C72 /* FSObjectInspectorViewModelItem.m in Sources */ = {isa = PBXBuildFile; fileRef = ED8222D51A194FD600C42C72 /* FSObjectInspectorViewModelItem.m */; settings = {COMPILER_FLAGS = "-fobjc-arc"; }; }; + ED8222E21A194FD600C42C72 /* FSObjectInspectorViewModelItem.m in Sources */ = {isa = PBXBuildFile; fileRef = ED8222D51A194FD600C42C72 /* FSObjectInspectorViewModelItem.m */; settings = {COMPILER_FLAGS = "-fobjc-arc"; }; }; + ED8222E31A194FD600C42C72 /* FSObjectInspectorViewModelItem.m in Sources */ = {isa = PBXBuildFile; fileRef = ED8222D51A194FD600C42C72 /* FSObjectInspectorViewModelItem.m */; settings = {COMPILER_FLAGS = "-fobjc-arc"; }; }; + ED8222E41A194FD600C42C72 /* FSObjectInspectorViewModelItem.m in Sources */ = {isa = PBXBuildFile; fileRef = ED8222D51A194FD600C42C72 /* FSObjectInspectorViewModelItem.m */; settings = {COMPILER_FLAGS = "-fobjc-arc"; }; }; + ED8222E71A19554F00C42C72 /* FSObjectEnumInfo.h in Headers */ = {isa = PBXBuildFile; fileRef = ED8222E51A19554F00C42C72 /* FSObjectEnumInfo.h */; }; + ED8222E81A19554F00C42C72 /* FSObjectEnumInfo.h in Headers */ = {isa = PBXBuildFile; fileRef = ED8222E51A19554F00C42C72 /* FSObjectEnumInfo.h */; }; + ED8222E91A19554F00C42C72 /* FSObjectEnumInfo.h in Headers */ = {isa = PBXBuildFile; fileRef = ED8222E51A19554F00C42C72 /* FSObjectEnumInfo.h */; }; + ED8222EA1A19554F00C42C72 /* FSObjectEnumInfo.h in Headers */ = {isa = PBXBuildFile; fileRef = ED8222E51A19554F00C42C72 /* FSObjectEnumInfo.h */; }; + ED8222EB1A19554F00C42C72 /* FSObjectEnumInfo.h in Headers */ = {isa = PBXBuildFile; fileRef = ED8222E51A19554F00C42C72 /* FSObjectEnumInfo.h */; }; + ED8222EC1A19554F00C42C72 /* FSObjectEnumInfo.h in Headers */ = {isa = PBXBuildFile; fileRef = ED8222E51A19554F00C42C72 /* FSObjectEnumInfo.h */; }; + ED8222ED1A19554F00C42C72 /* FSObjectEnumInfo.h in Headers */ = {isa = PBXBuildFile; fileRef = ED8222E51A19554F00C42C72 /* FSObjectEnumInfo.h */; }; + ED8222EE1A19554F00C42C72 /* FSObjectEnumInfo.m in Sources */ = {isa = PBXBuildFile; fileRef = ED8222E61A19554F00C42C72 /* FSObjectEnumInfo.m */; }; + ED8222EF1A19554F00C42C72 /* FSObjectEnumInfo.m in Sources */ = {isa = PBXBuildFile; fileRef = ED8222E61A19554F00C42C72 /* FSObjectEnumInfo.m */; }; + ED8222F01A19554F00C42C72 /* FSObjectEnumInfo.m in Sources */ = {isa = PBXBuildFile; fileRef = ED8222E61A19554F00C42C72 /* FSObjectEnumInfo.m */; }; + ED8222F11A19554F00C42C72 /* FSObjectEnumInfo.m in Sources */ = {isa = PBXBuildFile; fileRef = ED8222E61A19554F00C42C72 /* FSObjectEnumInfo.m */; }; + ED8222F21A19554F00C42C72 /* FSObjectEnumInfo.m in Sources */ = {isa = PBXBuildFile; fileRef = ED8222E61A19554F00C42C72 /* FSObjectEnumInfo.m */; }; + ED8222F31A19554F00C42C72 /* FSObjectEnumInfo.m in Sources */ = {isa = PBXBuildFile; fileRef = ED8222E61A19554F00C42C72 /* FSObjectEnumInfo.m */; }; + ED8222F41A19554F00C42C72 /* FSObjectEnumInfo.m in Sources */ = {isa = PBXBuildFile; fileRef = ED8222E61A19554F00C42C72 /* FSObjectEnumInfo.m */; }; + ED8222F51A19554F00C42C72 /* FSObjectEnumInfo.m in Sources */ = {isa = PBXBuildFile; fileRef = ED8222E61A19554F00C42C72 /* FSObjectEnumInfo.m */; }; + ED83191D1A1BC2B500290EE2 /* FSUtils.h in Headers */ = {isa = PBXBuildFile; fileRef = ED83191B1A1BC2B500290EE2 /* FSUtils.h */; }; + ED83191E1A1BC2B500290EE2 /* FSUtils.h in Headers */ = {isa = PBXBuildFile; fileRef = ED83191B1A1BC2B500290EE2 /* FSUtils.h */; }; + ED83191F1A1BC2B500290EE2 /* FSUtils.h in Headers */ = {isa = PBXBuildFile; fileRef = ED83191B1A1BC2B500290EE2 /* FSUtils.h */; }; + ED8319201A1BC2B500290EE2 /* FSUtils.h in Headers */ = {isa = PBXBuildFile; fileRef = ED83191B1A1BC2B500290EE2 /* FSUtils.h */; }; + ED8319211A1BC2B500290EE2 /* FSUtils.h in Headers */ = {isa = PBXBuildFile; fileRef = ED83191B1A1BC2B500290EE2 /* FSUtils.h */; }; + ED8319221A1BC2B500290EE2 /* FSUtils.h in Headers */ = {isa = PBXBuildFile; fileRef = ED83191B1A1BC2B500290EE2 /* FSUtils.h */; }; + ED8319231A1BC2B500290EE2 /* FSUtils.h in Headers */ = {isa = PBXBuildFile; fileRef = ED83191B1A1BC2B500290EE2 /* FSUtils.h */; }; + ED8319241A1BC2B500290EE2 /* FSUtils.h in Headers */ = {isa = PBXBuildFile; fileRef = ED83191B1A1BC2B500290EE2 /* FSUtils.h */; }; + ED8319251A1BC2B500290EE2 /* FSUtils.h in Headers */ = {isa = PBXBuildFile; fileRef = ED83191B1A1BC2B500290EE2 /* FSUtils.h */; }; + ED8319261A1BC2B500290EE2 /* FSUtils.m in Sources */ = {isa = PBXBuildFile; fileRef = ED83191C1A1BC2B500290EE2 /* FSUtils.m */; settings = {COMPILER_FLAGS = "-fobjc-arc"; }; }; + ED8319271A1BC2B500290EE2 /* FSUtils.m in Sources */ = {isa = PBXBuildFile; fileRef = ED83191C1A1BC2B500290EE2 /* FSUtils.m */; settings = {COMPILER_FLAGS = "-fobjc-arc"; }; }; + ED8319281A1BC2B500290EE2 /* FSUtils.m in Sources */ = {isa = PBXBuildFile; fileRef = ED83191C1A1BC2B500290EE2 /* FSUtils.m */; settings = {COMPILER_FLAGS = "-fobjc-arc"; }; }; + ED8319291A1BC2B500290EE2 /* FSUtils.m in Sources */ = {isa = PBXBuildFile; fileRef = ED83191C1A1BC2B500290EE2 /* FSUtils.m */; settings = {COMPILER_FLAGS = "-fobjc-arc"; }; }; + ED83192A1A1BC2B500290EE2 /* FSUtils.m in Sources */ = {isa = PBXBuildFile; fileRef = ED83191C1A1BC2B500290EE2 /* FSUtils.m */; }; + ED83192B1A1BC2B500290EE2 /* FSUtils.m in Sources */ = {isa = PBXBuildFile; fileRef = ED83191C1A1BC2B500290EE2 /* FSUtils.m */; }; + ED83192C1A1BC2B500290EE2 /* FSUtils.m in Sources */ = {isa = PBXBuildFile; fileRef = ED83191C1A1BC2B500290EE2 /* FSUtils.m */; }; + ED83192D1A1BC2B500290EE2 /* FSUtils.m in Sources */ = {isa = PBXBuildFile; fileRef = ED83191C1A1BC2B500290EE2 /* FSUtils.m */; }; + ED83192E1A1BC2B500290EE2 /* FSUtils.m in Sources */ = {isa = PBXBuildFile; fileRef = ED83191C1A1BC2B500290EE2 /* FSUtils.m */; }; + ED83192F1A1BC2B500290EE2 /* FSUtils.m in Sources */ = {isa = PBXBuildFile; fileRef = ED83191C1A1BC2B500290EE2 /* FSUtils.m */; settings = {COMPILER_FLAGS = "-fobjc-arc"; }; }; + ED8319321A1BFA7400290EE2 /* FSObjectInspectorViewController+NonArc.h in Headers */ = {isa = PBXBuildFile; fileRef = ED8319301A1BFA7400290EE2 /* FSObjectInspectorViewController+NonArc.h */; }; + ED8319331A1BFA7400290EE2 /* FSObjectInspectorViewController+NonArc.h in Headers */ = {isa = PBXBuildFile; fileRef = ED8319301A1BFA7400290EE2 /* FSObjectInspectorViewController+NonArc.h */; }; + ED8319341A1BFA7400290EE2 /* FSObjectInspectorViewController+NonArc.h in Headers */ = {isa = PBXBuildFile; fileRef = ED8319301A1BFA7400290EE2 /* FSObjectInspectorViewController+NonArc.h */; }; + ED8319351A1BFA7400290EE2 /* FSObjectInspectorViewController+NonArc.h in Headers */ = {isa = PBXBuildFile; fileRef = ED8319301A1BFA7400290EE2 /* FSObjectInspectorViewController+NonArc.h */; }; + ED8319361A1BFA7400290EE2 /* FSObjectInspectorViewController+NonArc.h in Headers */ = {isa = PBXBuildFile; fileRef = ED8319301A1BFA7400290EE2 /* FSObjectInspectorViewController+NonArc.h */; }; + ED8319371A1BFA7400290EE2 /* FSObjectInspectorViewController+NonArc.h in Headers */ = {isa = PBXBuildFile; fileRef = ED8319301A1BFA7400290EE2 /* FSObjectInspectorViewController+NonArc.h */; }; + ED8319381A1BFA7400290EE2 /* FSObjectInspectorViewController+NonArc.h in Headers */ = {isa = PBXBuildFile; fileRef = ED8319301A1BFA7400290EE2 /* FSObjectInspectorViewController+NonArc.h */; }; + ED8319391A1BFA7400290EE2 /* FSObjectInspectorViewController+NonArc.h in Headers */ = {isa = PBXBuildFile; fileRef = ED8319301A1BFA7400290EE2 /* FSObjectInspectorViewController+NonArc.h */; }; + ED83193A1A1BFA7400290EE2 /* FSObjectInspectorViewController+NonArc.h in Headers */ = {isa = PBXBuildFile; fileRef = ED8319301A1BFA7400290EE2 /* FSObjectInspectorViewController+NonArc.h */; }; + ED83193B1A1BFA7400290EE2 /* FSObjectInspectorViewController+NonArc.m in Sources */ = {isa = PBXBuildFile; fileRef = ED8319311A1BFA7400290EE2 /* FSObjectInspectorViewController+NonArc.m */; }; + ED83193C1A1BFA7400290EE2 /* FSObjectInspectorViewController+NonArc.m in Sources */ = {isa = PBXBuildFile; fileRef = ED8319311A1BFA7400290EE2 /* FSObjectInspectorViewController+NonArc.m */; }; + ED83193D1A1BFA7400290EE2 /* FSObjectInspectorViewController+NonArc.m in Sources */ = {isa = PBXBuildFile; fileRef = ED8319311A1BFA7400290EE2 /* FSObjectInspectorViewController+NonArc.m */; }; + ED83193E1A1BFA7400290EE2 /* FSObjectInspectorViewController+NonArc.m in Sources */ = {isa = PBXBuildFile; fileRef = ED8319311A1BFA7400290EE2 /* FSObjectInspectorViewController+NonArc.m */; }; + ED83193F1A1BFA7400290EE2 /* FSObjectInspectorViewController+NonArc.m in Sources */ = {isa = PBXBuildFile; fileRef = ED8319311A1BFA7400290EE2 /* FSObjectInspectorViewController+NonArc.m */; }; + ED8319401A1BFA7400290EE2 /* FSObjectInspectorViewController+NonArc.m in Sources */ = {isa = PBXBuildFile; fileRef = ED8319311A1BFA7400290EE2 /* FSObjectInspectorViewController+NonArc.m */; }; + ED8319411A1BFA7400290EE2 /* FSObjectInspectorViewController+NonArc.m in Sources */ = {isa = PBXBuildFile; fileRef = ED8319311A1BFA7400290EE2 /* FSObjectInspectorViewController+NonArc.m */; }; + ED8319421A1BFA7400290EE2 /* FSObjectInspectorViewController+NonArc.m in Sources */ = {isa = PBXBuildFile; fileRef = ED8319311A1BFA7400290EE2 /* FSObjectInspectorViewController+NonArc.m */; }; + ED8319431A1BFA7400290EE2 /* FSObjectInspectorViewController+NonArc.m in Sources */ = {isa = PBXBuildFile; fileRef = ED8319311A1BFA7400290EE2 /* FSObjectInspectorViewController+NonArc.m */; }; + ED8319441A1BFA7400290EE2 /* FSObjectInspectorViewController+NonArc.m in Sources */ = {isa = PBXBuildFile; fileRef = ED8319311A1BFA7400290EE2 /* FSObjectInspectorViewController+NonArc.m */; }; + EDA22BE01A24C28D0093DB91 /* view.png in Resources */ = {isa = PBXBuildFile; fileRef = EDA22BDE1A24C28D0093DB91 /* view.png */; }; + EDA22BE11A24C28D0093DB91 /* view.png in Resources */ = {isa = PBXBuildFile; fileRef = EDA22BDE1A24C28D0093DB91 /* view.png */; }; + EDA22BE21A24C28D0093DB91 /* view.png in Resources */ = {isa = PBXBuildFile; fileRef = EDA22BDE1A24C28D0093DB91 /* view.png */; }; + EDA22BE31A24C28D0093DB91 /* view.png in Resources */ = {isa = PBXBuildFile; fileRef = EDA22BDE1A24C28D0093DB91 /* view.png */; }; + EDA22BE41A24C28D0093DB91 /* view.png in Resources */ = {isa = PBXBuildFile; fileRef = EDA22BDE1A24C28D0093DB91 /* view.png */; }; + EDA22BE51A24C28D0093DB91 /* view.png in Resources */ = {isa = PBXBuildFile; fileRef = EDA22BDE1A24C28D0093DB91 /* view.png */; }; + EDA22BE61A24C28D0093DB91 /* view.png in Resources */ = {isa = PBXBuildFile; fileRef = EDA22BDE1A24C28D0093DB91 /* view.png */; }; + EDA22BE71A24C28D0093DB91 /* view.png in Resources */ = {isa = PBXBuildFile; fileRef = EDA22BDE1A24C28D0093DB91 /* view.png */; }; + EDA22BE81A24C28D0093DB91 /* view.png in Resources */ = {isa = PBXBuildFile; fileRef = EDA22BDE1A24C28D0093DB91 /* view.png */; }; + EDA22BE91A24C28D0093DB91 /* view.png in Resources */ = {isa = PBXBuildFile; fileRef = EDA22BDE1A24C28D0093DB91 /* view.png */; }; + EDA22BEA1A24C28D0093DB91 /* window.png in Resources */ = {isa = PBXBuildFile; fileRef = EDA22BDF1A24C28D0093DB91 /* window.png */; }; + EDA22BEB1A24C28D0093DB91 /* window.png in Resources */ = {isa = PBXBuildFile; fileRef = EDA22BDF1A24C28D0093DB91 /* window.png */; }; + EDA22BEC1A24C28D0093DB91 /* window.png in Resources */ = {isa = PBXBuildFile; fileRef = EDA22BDF1A24C28D0093DB91 /* window.png */; }; + EDA22BED1A24C28D0093DB91 /* window.png in Resources */ = {isa = PBXBuildFile; fileRef = EDA22BDF1A24C28D0093DB91 /* window.png */; }; + EDA22BEE1A24C28D0093DB91 /* window.png in Resources */ = {isa = PBXBuildFile; fileRef = EDA22BDF1A24C28D0093DB91 /* window.png */; }; + EDA22BEF1A24C28D0093DB91 /* window.png in Resources */ = {isa = PBXBuildFile; fileRef = EDA22BDF1A24C28D0093DB91 /* window.png */; }; + EDA22BF01A24C28D0093DB91 /* window.png in Resources */ = {isa = PBXBuildFile; fileRef = EDA22BDF1A24C28D0093DB91 /* window.png */; }; + EDA22BF11A24C28D0093DB91 /* window.png in Resources */ = {isa = PBXBuildFile; fileRef = EDA22BDF1A24C28D0093DB91 /* window.png */; }; + EDA22BF21A24C28D0093DB91 /* window.png in Resources */ = {isa = PBXBuildFile; fileRef = EDA22BDF1A24C28D0093DB91 /* window.png */; }; + EDA22BF31A24C28D0093DB91 /* window.png in Resources */ = {isa = PBXBuildFile; fileRef = EDA22BDF1A24C28D0093DB91 /* window.png */; }; + EDA6AC401A1F407C001CD1F2 /* FSObjectInspectorOutlineView.h in Headers */ = {isa = PBXBuildFile; fileRef = EDA6AC3E1A1F407C001CD1F2 /* FSObjectInspectorOutlineView.h */; }; + EDA6AC411A1F407C001CD1F2 /* FSObjectInspectorOutlineView.h in Headers */ = {isa = PBXBuildFile; fileRef = EDA6AC3E1A1F407C001CD1F2 /* FSObjectInspectorOutlineView.h */; }; + EDA6AC421A1F407C001CD1F2 /* FSObjectInspectorOutlineView.h in Headers */ = {isa = PBXBuildFile; fileRef = EDA6AC3E1A1F407C001CD1F2 /* FSObjectInspectorOutlineView.h */; }; + EDA6AC431A1F407C001CD1F2 /* FSObjectInspectorOutlineView.h in Headers */ = {isa = PBXBuildFile; fileRef = EDA6AC3E1A1F407C001CD1F2 /* FSObjectInspectorOutlineView.h */; }; + EDA6AC441A1F407C001CD1F2 /* FSObjectInspectorOutlineView.h in Headers */ = {isa = PBXBuildFile; fileRef = EDA6AC3E1A1F407C001CD1F2 /* FSObjectInspectorOutlineView.h */; }; + EDA6AC451A1F407C001CD1F2 /* FSObjectInspectorOutlineView.h in Headers */ = {isa = PBXBuildFile; fileRef = EDA6AC3E1A1F407C001CD1F2 /* FSObjectInspectorOutlineView.h */; }; + EDA6AC461A1F407C001CD1F2 /* FSObjectInspectorOutlineView.h in Headers */ = {isa = PBXBuildFile; fileRef = EDA6AC3E1A1F407C001CD1F2 /* FSObjectInspectorOutlineView.h */; }; + EDA6AC471A1F407C001CD1F2 /* FSObjectInspectorOutlineView.h in Headers */ = {isa = PBXBuildFile; fileRef = EDA6AC3E1A1F407C001CD1F2 /* FSObjectInspectorOutlineView.h */; }; + EDA6AC481A1F407C001CD1F2 /* FSObjectInspectorOutlineView.h in Headers */ = {isa = PBXBuildFile; fileRef = EDA6AC3E1A1F407C001CD1F2 /* FSObjectInspectorOutlineView.h */; }; + EDA6AC491A1F407C001CD1F2 /* FSObjectInspectorOutlineView.m in Sources */ = {isa = PBXBuildFile; fileRef = EDA6AC3F1A1F407C001CD1F2 /* FSObjectInspectorOutlineView.m */; settings = {COMPILER_FLAGS = "-fobjc-arc"; }; }; + EDA6AC4A1A1F407C001CD1F2 /* FSObjectInspectorOutlineView.m in Sources */ = {isa = PBXBuildFile; fileRef = EDA6AC3F1A1F407C001CD1F2 /* FSObjectInspectorOutlineView.m */; }; + EDA6AC4B1A1F407C001CD1F2 /* FSObjectInspectorOutlineView.m in Sources */ = {isa = PBXBuildFile; fileRef = EDA6AC3F1A1F407C001CD1F2 /* FSObjectInspectorOutlineView.m */; }; + EDA6AC4C1A1F407C001CD1F2 /* FSObjectInspectorOutlineView.m in Sources */ = {isa = PBXBuildFile; fileRef = EDA6AC3F1A1F407C001CD1F2 /* FSObjectInspectorOutlineView.m */; }; + EDA6AC4D1A1F407C001CD1F2 /* FSObjectInspectorOutlineView.m in Sources */ = {isa = PBXBuildFile; fileRef = EDA6AC3F1A1F407C001CD1F2 /* FSObjectInspectorOutlineView.m */; }; + EDA6AC4E1A1F407C001CD1F2 /* FSObjectInspectorOutlineView.m in Sources */ = {isa = PBXBuildFile; fileRef = EDA6AC3F1A1F407C001CD1F2 /* FSObjectInspectorOutlineView.m */; }; + EDA6AC4F1A1F407C001CD1F2 /* FSObjectInspectorOutlineView.m in Sources */ = {isa = PBXBuildFile; fileRef = EDA6AC3F1A1F407C001CD1F2 /* FSObjectInspectorOutlineView.m */; }; + EDA6AC501A1F407C001CD1F2 /* FSObjectInspectorOutlineView.m in Sources */ = {isa = PBXBuildFile; fileRef = EDA6AC3F1A1F407C001CD1F2 /* FSObjectInspectorOutlineView.m */; }; + EDA6AC511A1F407C001CD1F2 /* FSObjectInspectorOutlineView.m in Sources */ = {isa = PBXBuildFile; fileRef = EDA6AC3F1A1F407C001CD1F2 /* FSObjectInspectorOutlineView.m */; }; + EDA6AC521A1F407C001CD1F2 /* FSObjectInspectorOutlineView.m in Sources */ = {isa = PBXBuildFile; fileRef = EDA6AC3F1A1F407C001CD1F2 /* FSObjectInspectorOutlineView.m */; settings = {COMPILER_FLAGS = "-fobjc-arc"; }; }; + EDA6AC561A1F52E6001CD1F2 /* FSObjectInspectorOptionsViewController.h in Headers */ = {isa = PBXBuildFile; fileRef = EDA6AC531A1F52E6001CD1F2 /* FSObjectInspectorOptionsViewController.h */; }; + EDA6AC571A1F52E6001CD1F2 /* FSObjectInspectorOptionsViewController.h in Headers */ = {isa = PBXBuildFile; fileRef = EDA6AC531A1F52E6001CD1F2 /* FSObjectInspectorOptionsViewController.h */; }; + EDA6AC581A1F52E6001CD1F2 /* FSObjectInspectorOptionsViewController.h in Headers */ = {isa = PBXBuildFile; fileRef = EDA6AC531A1F52E6001CD1F2 /* FSObjectInspectorOptionsViewController.h */; }; + EDA6AC591A1F52E6001CD1F2 /* FSObjectInspectorOptionsViewController.h in Headers */ = {isa = PBXBuildFile; fileRef = EDA6AC531A1F52E6001CD1F2 /* FSObjectInspectorOptionsViewController.h */; }; + EDA6AC5A1A1F52E6001CD1F2 /* FSObjectInspectorOptionsViewController.h in Headers */ = {isa = PBXBuildFile; fileRef = EDA6AC531A1F52E6001CD1F2 /* FSObjectInspectorOptionsViewController.h */; }; + EDA6AC5B1A1F52E6001CD1F2 /* FSObjectInspectorOptionsViewController.h in Headers */ = {isa = PBXBuildFile; fileRef = EDA6AC531A1F52E6001CD1F2 /* FSObjectInspectorOptionsViewController.h */; }; + EDA6AC5C1A1F52E6001CD1F2 /* FSObjectInspectorOptionsViewController.h in Headers */ = {isa = PBXBuildFile; fileRef = EDA6AC531A1F52E6001CD1F2 /* FSObjectInspectorOptionsViewController.h */; }; + EDA6AC5D1A1F52E6001CD1F2 /* FSObjectInspectorOptionsViewController.h in Headers */ = {isa = PBXBuildFile; fileRef = EDA6AC531A1F52E6001CD1F2 /* FSObjectInspectorOptionsViewController.h */; }; + EDA6AC5E1A1F52E6001CD1F2 /* FSObjectInspectorOptionsViewController.h in Headers */ = {isa = PBXBuildFile; fileRef = EDA6AC531A1F52E6001CD1F2 /* FSObjectInspectorOptionsViewController.h */; }; + EDA6AC5F1A1F52E6001CD1F2 /* FSObjectInspectorOptionsViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = EDA6AC541A1F52E6001CD1F2 /* FSObjectInspectorOptionsViewController.m */; settings = {COMPILER_FLAGS = "-fobjc-arc"; }; }; + EDA6AC601A1F52E6001CD1F2 /* FSObjectInspectorOptionsViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = EDA6AC541A1F52E6001CD1F2 /* FSObjectInspectorOptionsViewController.m */; }; + EDA6AC611A1F52E6001CD1F2 /* FSObjectInspectorOptionsViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = EDA6AC541A1F52E6001CD1F2 /* FSObjectInspectorOptionsViewController.m */; }; + EDA6AC621A1F52E6001CD1F2 /* FSObjectInspectorOptionsViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = EDA6AC541A1F52E6001CD1F2 /* FSObjectInspectorOptionsViewController.m */; }; + EDA6AC631A1F52E6001CD1F2 /* FSObjectInspectorOptionsViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = EDA6AC541A1F52E6001CD1F2 /* FSObjectInspectorOptionsViewController.m */; }; + EDA6AC641A1F52E6001CD1F2 /* FSObjectInspectorOptionsViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = EDA6AC541A1F52E6001CD1F2 /* FSObjectInspectorOptionsViewController.m */; }; + EDA6AC651A1F52E6001CD1F2 /* FSObjectInspectorOptionsViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = EDA6AC541A1F52E6001CD1F2 /* FSObjectInspectorOptionsViewController.m */; }; + EDA6AC661A1F52E6001CD1F2 /* FSObjectInspectorOptionsViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = EDA6AC541A1F52E6001CD1F2 /* FSObjectInspectorOptionsViewController.m */; }; + EDA6AC671A1F52E6001CD1F2 /* FSObjectInspectorOptionsViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = EDA6AC541A1F52E6001CD1F2 /* FSObjectInspectorOptionsViewController.m */; }; + EDA6AC681A1F52E6001CD1F2 /* FSObjectInspectorOptionsViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = EDA6AC541A1F52E6001CD1F2 /* FSObjectInspectorOptionsViewController.m */; settings = {COMPILER_FLAGS = "-fobjc-arc"; }; }; + EDA6AC691A1F52E6001CD1F2 /* FSObjectInspectorOptionsViewController.xib in Resources */ = {isa = PBXBuildFile; fileRef = EDA6AC551A1F52E6001CD1F2 /* FSObjectInspectorOptionsViewController.xib */; }; + EDA6AC6A1A1F52E6001CD1F2 /* FSObjectInspectorOptionsViewController.xib in Resources */ = {isa = PBXBuildFile; fileRef = EDA6AC551A1F52E6001CD1F2 /* FSObjectInspectorOptionsViewController.xib */; }; + EDA6AC6B1A1F52E6001CD1F2 /* FSObjectInspectorOptionsViewController.xib in Resources */ = {isa = PBXBuildFile; fileRef = EDA6AC551A1F52E6001CD1F2 /* FSObjectInspectorOptionsViewController.xib */; }; + EDA6AC6C1A1F52E6001CD1F2 /* FSObjectInspectorOptionsViewController.xib in Resources */ = {isa = PBXBuildFile; fileRef = EDA6AC551A1F52E6001CD1F2 /* FSObjectInspectorOptionsViewController.xib */; }; + EDA6AC6D1A1F52E6001CD1F2 /* FSObjectInspectorOptionsViewController.xib in Resources */ = {isa = PBXBuildFile; fileRef = EDA6AC551A1F52E6001CD1F2 /* FSObjectInspectorOptionsViewController.xib */; }; + EDA6AC6E1A1F52E6001CD1F2 /* FSObjectInspectorOptionsViewController.xib in Resources */ = {isa = PBXBuildFile; fileRef = EDA6AC551A1F52E6001CD1F2 /* FSObjectInspectorOptionsViewController.xib */; }; + EDA6AC6F1A1F52E6001CD1F2 /* FSObjectInspectorOptionsViewController.xib in Resources */ = {isa = PBXBuildFile; fileRef = EDA6AC551A1F52E6001CD1F2 /* FSObjectInspectorOptionsViewController.xib */; }; + EDA6AC701A1F52E6001CD1F2 /* FSObjectInspectorOptionsViewController.xib in Resources */ = {isa = PBXBuildFile; fileRef = EDA6AC551A1F52E6001CD1F2 /* FSObjectInspectorOptionsViewController.xib */; }; + EDA6AC711A1F52E6001CD1F2 /* FSObjectInspectorOptionsViewController.xib in Resources */ = {isa = PBXBuildFile; fileRef = EDA6AC551A1F52E6001CD1F2 /* FSObjectInspectorOptionsViewController.xib */; }; + EDA6AC721A1F52E6001CD1F2 /* FSObjectInspectorOptionsViewController.xib in Resources */ = {isa = PBXBuildFile; fileRef = EDA6AC551A1F52E6001CD1F2 /* FSObjectInspectorOptionsViewController.xib */; }; + EDC2C8DE1A1A943600942777 /* FSDetailedObjectInspector.h in Headers */ = {isa = PBXBuildFile; fileRef = EDC2C8DC1A1A943600942777 /* FSDetailedObjectInspector.h */; }; + EDC2C8DF1A1A943600942777 /* FSDetailedObjectInspector.h in Headers */ = {isa = PBXBuildFile; fileRef = EDC2C8DC1A1A943600942777 /* FSDetailedObjectInspector.h */; }; + EDC2C8E01A1A943600942777 /* FSDetailedObjectInspector.h in Headers */ = {isa = PBXBuildFile; fileRef = EDC2C8DC1A1A943600942777 /* FSDetailedObjectInspector.h */; }; + EDC2C8E11A1A943600942777 /* FSDetailedObjectInspector.h in Headers */ = {isa = PBXBuildFile; fileRef = EDC2C8DC1A1A943600942777 /* FSDetailedObjectInspector.h */; }; + EDC2C8E21A1A943600942777 /* FSDetailedObjectInspector.h in Headers */ = {isa = PBXBuildFile; fileRef = EDC2C8DC1A1A943600942777 /* FSDetailedObjectInspector.h */; }; + EDC2C8E31A1A943600942777 /* FSDetailedObjectInspector.h in Headers */ = {isa = PBXBuildFile; fileRef = EDC2C8DC1A1A943600942777 /* FSDetailedObjectInspector.h */; }; + EDC2C8E41A1A943600942777 /* FSDetailedObjectInspector.m in Sources */ = {isa = PBXBuildFile; fileRef = EDC2C8DD1A1A943600942777 /* FSDetailedObjectInspector.m */; settings = {COMPILER_FLAGS = "-fobjc-arc"; }; }; + EDC2C8E51A1A943600942777 /* FSDetailedObjectInspector.m in Sources */ = {isa = PBXBuildFile; fileRef = EDC2C8DD1A1A943600942777 /* FSDetailedObjectInspector.m */; settings = {COMPILER_FLAGS = "-fobjc-arc"; }; }; + EDC2C8E61A1A943600942777 /* FSDetailedObjectInspector.m in Sources */ = {isa = PBXBuildFile; fileRef = EDC2C8DD1A1A943600942777 /* FSDetailedObjectInspector.m */; settings = {COMPILER_FLAGS = "-fobjc-arc"; }; }; + EDC2C8E71A1A943600942777 /* FSDetailedObjectInspector.m in Sources */ = {isa = PBXBuildFile; fileRef = EDC2C8DD1A1A943600942777 /* FSDetailedObjectInspector.m */; settings = {COMPILER_FLAGS = "-fobjc-arc"; }; }; + EDC2C8E81A1A943600942777 /* FSDetailedObjectInspector.m in Sources */ = {isa = PBXBuildFile; fileRef = EDC2C8DD1A1A943600942777 /* FSDetailedObjectInspector.m */; settings = {COMPILER_FLAGS = "-fobjc-arc"; }; }; + EDC2C8E91A1A943600942777 /* FSDetailedObjectInspector.m in Sources */ = {isa = PBXBuildFile; fileRef = EDC2C8DD1A1A943600942777 /* FSDetailedObjectInspector.m */; settings = {COMPILER_FLAGS = "-fobjc-arc"; }; }; + EDC2C8EA1A1A99BF00942777 /* FSDetailedObjectInspector.h in Headers */ = {isa = PBXBuildFile; fileRef = EDC2C8DC1A1A943600942777 /* FSDetailedObjectInspector.h */; }; + EDC2C8EB1A1A99BF00942777 /* FSDetailedObjectInspector.m in Sources */ = {isa = PBXBuildFile; fileRef = EDC2C8DD1A1A943600942777 /* FSDetailedObjectInspector.m */; settings = {COMPILER_FLAGS = "-fobjc-arc"; }; }; + EDC2C8EC1A1A99F600942777 /* FSObjectInspectorViewController.h in Headers */ = {isa = PBXBuildFile; fileRef = ED3004E51A1A86EF00675D94 /* FSObjectInspectorViewController.h */; }; + EDC2C8ED1A1A99F600942777 /* FSObjectInspectorViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = ED3004E61A1A86EF00675D94 /* FSObjectInspectorViewController.m */; settings = {COMPILER_FLAGS = "-fobjc-arc"; }; }; + EDC2C8F01A1AA34D00942777 /* FSObjectInspectorBackgroundView.h in Headers */ = {isa = PBXBuildFile; fileRef = EDC2C8EE1A1AA34D00942777 /* FSObjectInspectorBackgroundView.h */; }; + EDC2C8F11A1AA34D00942777 /* FSObjectInspectorBackgroundView.h in Headers */ = {isa = PBXBuildFile; fileRef = EDC2C8EE1A1AA34D00942777 /* FSObjectInspectorBackgroundView.h */; }; + EDC2C8F21A1AA34D00942777 /* FSObjectInspectorBackgroundView.h in Headers */ = {isa = PBXBuildFile; fileRef = EDC2C8EE1A1AA34D00942777 /* FSObjectInspectorBackgroundView.h */; }; + EDC2C8F31A1AA34D00942777 /* FSObjectInspectorBackgroundView.h in Headers */ = {isa = PBXBuildFile; fileRef = EDC2C8EE1A1AA34D00942777 /* FSObjectInspectorBackgroundView.h */; }; + EDC2C8F41A1AA34D00942777 /* FSObjectInspectorBackgroundView.h in Headers */ = {isa = PBXBuildFile; fileRef = EDC2C8EE1A1AA34D00942777 /* FSObjectInspectorBackgroundView.h */; }; + EDC2C8F51A1AA34D00942777 /* FSObjectInspectorBackgroundView.h in Headers */ = {isa = PBXBuildFile; fileRef = EDC2C8EE1A1AA34D00942777 /* FSObjectInspectorBackgroundView.h */; }; + EDC2C8F61A1AA34D00942777 /* FSObjectInspectorBackgroundView.h in Headers */ = {isa = PBXBuildFile; fileRef = EDC2C8EE1A1AA34D00942777 /* FSObjectInspectorBackgroundView.h */; }; + EDC2C8F71A1AA34D00942777 /* FSObjectInspectorBackgroundView.m in Sources */ = {isa = PBXBuildFile; fileRef = EDC2C8EF1A1AA34D00942777 /* FSObjectInspectorBackgroundView.m */; }; + EDC2C8F81A1AA34D00942777 /* FSObjectInspectorBackgroundView.m in Sources */ = {isa = PBXBuildFile; fileRef = EDC2C8EF1A1AA34D00942777 /* FSObjectInspectorBackgroundView.m */; }; + EDC2C8F91A1AA34D00942777 /* FSObjectInspectorBackgroundView.m in Sources */ = {isa = PBXBuildFile; fileRef = EDC2C8EF1A1AA34D00942777 /* FSObjectInspectorBackgroundView.m */; }; + EDC2C8FA1A1AA34D00942777 /* FSObjectInspectorBackgroundView.m in Sources */ = {isa = PBXBuildFile; fileRef = EDC2C8EF1A1AA34D00942777 /* FSObjectInspectorBackgroundView.m */; }; + EDC2C8FB1A1AA34D00942777 /* FSObjectInspectorBackgroundView.m in Sources */ = {isa = PBXBuildFile; fileRef = EDC2C8EF1A1AA34D00942777 /* FSObjectInspectorBackgroundView.m */; }; + EDC2C8FC1A1AA34D00942777 /* FSObjectInspectorBackgroundView.m in Sources */ = {isa = PBXBuildFile; fileRef = EDC2C8EF1A1AA34D00942777 /* FSObjectInspectorBackgroundView.m */; }; + EDC2C8FD1A1AA34D00942777 /* FSObjectInspectorBackgroundView.m in Sources */ = {isa = PBXBuildFile; fileRef = EDC2C8EF1A1AA34D00942777 /* FSObjectInspectorBackgroundView.m */; }; + EDC2C8FE1A1AA34D00942777 /* FSObjectInspectorBackgroundView.m in Sources */ = {isa = PBXBuildFile; fileRef = EDC2C8EF1A1AA34D00942777 /* FSObjectInspectorBackgroundView.m */; }; + EDC2C9051A1AA50D00942777 /* FSAirplane.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E30F00D7DFE17BE9C1BD /* FSAirplane.h */; }; + EDC2C9061A1AA50D00942777 /* ArrayPrivate.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E31300D7DFE17BE9C1BD /* ArrayPrivate.h */; }; + EDC2C9071A1AA50D00942777 /* ArrayRep.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E31400D7DFE17BE9C1BD /* ArrayRep.h */; }; + EDC2C9081A1AA50D00942777 /* ArrayRepDouble.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E31700D7DFE17BE9C1BD /* ArrayRepDouble.h */; }; + EDC2C9091A1AA50D00942777 /* ArrayRepEmpty.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E31900D7DFE17BE9C1BD /* ArrayRepEmpty.h */; }; + EDC2C90A1A1AA50D00942777 /* ArrayRepId.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E31B00D7DFE17BE9C1BD /* ArrayRepId.h */; }; + EDC2C90B1A1AA50D00942777 /* FSCollectionInspector.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E31D00D7DFE17BE9C1BD /* FSCollectionInspector.h */; }; + EDC2C90C1A1AA50D00942777 /* FSObjectBrowser.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E32000D7DFE17BE9C1BD /* FSObjectBrowser.h */; }; + EDC2C90D1A1AA50D00942777 /* FSObjectBrowserArgumentPanel.h in Headers */ = {isa = PBXBuildFile; fileRef = F5FA8A6C0215D44C01AFEEFD /* FSObjectBrowserArgumentPanel.h */; }; + EDC2C90E1A1AA50D00942777 /* FSObjectBrowserCell.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E32200D7DFE17BE9C1BD /* FSObjectBrowserCell.h */; }; + EDC2C90F1A1AA50D00942777 /* FSObjectBrowserView.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E32400D7DFE17BE9C1BD /* FSObjectBrowserView.h */; }; + EDC2C9101A1AA50D00942777 /* FSBlock.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E32600D7DFE17BE9C1BD /* FSBlock.h */; }; + EDC2C9111A1AA50D00942777 /* BlockInspector.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E32800D7DFE17BE9C1BD /* BlockInspector.h */; }; + EDC2C9121A1AA50D00942777 /* BlockPrivate.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E32B00D7DFE17BE9C1BD /* BlockPrivate.h */; }; + EDC2C9131A1AA50D00942777 /* BlockRep.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E32C00D7DFE17BE9C1BD /* BlockRep.h */; }; + EDC2C9141A1AA50D00942777 /* BlockSignature.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E32E00D7DFE17BE9C1BD /* BlockSignature.h */; }; + EDC2C9151A1AA50D00942777 /* BlockStackElem.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E32F00D7DFE17BE9C1BD /* BlockStackElem.h */; }; + EDC2C9161A1AA50D00942777 /* build_config.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E33200D7DFE17BE9C1BD /* build_config.h */; }; + EDC2C9171A1AA50D00942777 /* FSDetailedObjectInspector.h in Headers */ = {isa = PBXBuildFile; fileRef = EDC2C8DC1A1A943600942777 /* FSDetailedObjectInspector.h */; }; + EDC2C9181A1AA50D00942777 /* CLIView.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E33300D7DFE17BE9C1BD /* CLIView.h */; }; + EDC2C9191A1AA50D00942777 /* FSCompilationResult.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E33500D7DFE17BE9C1BD /* FSCompilationResult.h */; }; + EDC2C91A1A1AA50D00942777 /* CompiledCodeNode.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E33700D7DFE17BE9C1BD /* CompiledCodeNode.h */; }; + EDC2C91B1A1AA50D00942777 /* FSCompiler.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E33900D7DFE17BE9C1BD /* FSCompiler.h */; }; + EDC2C91C1A1AA50D00942777 /* FSConstantsInitialization.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E33B00D7DFE17BE9C1BD /* FSConstantsInitialization.h */; }; + EDC2C91D1A1AA50D00942777 /* FSExecEngine.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E33D00D7DFE17BE9C1BD /* FSExecEngine.h */; }; + EDC2C91E1A1AA50D00942777 /* FSExecutor.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E33F00D7DFE17BE9C1BD /* FSExecutor.h */; }; + EDC2C91F1A1AA50D00942777 /* FSFlight.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E34200D7DFE17BE9C1BD /* FSFlight.h */; }; + EDC2C9201A1AA50D00942777 /* FSArchiver.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E34500D7DFE17BE9C1BD /* FSArchiver.h */; }; + EDC2C9211A1AA50D00942777 /* FSBoolean.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E34700D7DFE17BE9C1BD /* FSBoolean.h */; }; + EDC2C9221A1AA50D00942777 /* FSBooleanPrivate.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E34900D7DFE17BE9C1BD /* FSBooleanPrivate.h */; }; + EDC2C9231A1AA50D00942777 /* FScript.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E34C00D7DFE17BE9C1BD /* FScript.h */; }; + EDC2C9241A1AA50D00942777 /* FScriptFunctions.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E34E00D7DFE17BE9C1BD /* FScriptFunctions.h */; }; + EDC2C9251A1AA50D00942777 /* FScriptTextView.h in Headers */ = {isa = PBXBuildFile; fileRef = F5FBEF2802149D32018C0134 /* FScriptTextView.h */; }; + EDC2C9261A1AA50D00942777 /* FSInterpreter.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E35000D7DFE17BE9C1BD /* FSInterpreter.h */; }; + EDC2C9271A1AA50D00942777 /* FSInterpreterResult.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E35200D7DFE17BE9C1BD /* FSInterpreterResult.h */; }; + EDC2C9281A1AA50D00942777 /* FSInterpreterResultPrivate.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E35400D7DFE17BE9C1BD /* FSInterpreterResultPrivate.h */; }; + EDC2C9291A1AA50D00942777 /* FSInterpreterView.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E35500D7DFE17BE9C1BD /* FSInterpreterView.h */; }; + EDC2C92A1A1AA50D00942777 /* FSInterpreterViewIBHeader.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E35700D7DFE17BE9C1BD /* FSInterpreterViewIBHeader.h */; }; + EDC2C92B1A1AA50D00942777 /* FSNSArray.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E35800D7DFE17BE9C1BD /* FSNSArray.h */; }; + EDC2C92C1A1AA50D00942777 /* FSNSArrayPrivate.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E35A00D7DFE17BE9C1BD /* FSNSArrayPrivate.h */; }; + EDC2C92D1A1AA50D00942777 /* FSNSDate.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E35B00D7DFE17BE9C1BD /* FSNSDate.h */; }; + EDC2C92F1A1AA50D00942777 /* FSNSDictionary.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E35D00D7DFE17BE9C1BD /* FSNSDictionary.h */; }; + EDC2C9301A1AA50D00942777 /* FSNSDistantObject.h in Headers */ = {isa = PBXBuildFile; fileRef = F51CA01401B013C401BFBB24 /* FSNSDistantObject.h */; }; + EDC2C9311A1AA50D00942777 /* FSNSMutableString.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E35F00D7DFE17BE9C1BD /* FSNSMutableString.h */; }; + EDC2C9321A1AA50D00942777 /* FSNSNumber.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E36100D7DFE17BE9C1BD /* FSNSNumber.h */; }; + EDC2C9331A1AA50D00942777 /* FSNSObject.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E36300D7DFE17BE9C1BD /* FSNSObject.h */; }; + EDC2C9351A1AA50D00942777 /* FSNSProxy.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E36500D7DFE17BE9C1BD /* FSNSProxy.h */; }; + EDC2C9361A1AA50D00942777 /* FSPattern.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E36C00D7DFE17BE9C1BD /* FSPattern.h */; }; + EDC2C9371A1AA50D00942777 /* FSUnarchiver.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E37200D7DFE17BE9C1BD /* FSUnarchiver.h */; }; + EDC2C9381A1AA50D00942777 /* FSVoid.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E37400D7DFE17BE9C1BD /* FSVoid.h */; }; + EDC2C9391A1AA50D00942777 /* FSVoidPrivate.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E37600D7DFE17BE9C1BD /* FSVoidPrivate.h */; }; + EDC2C93A1A1AA50D00942777 /* FSGenericObjectInspector.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E37700D7DFE17BE9C1BD /* FSGenericObjectInspector.h */; }; + EDC2C93B1A1AA50D00942777 /* KTestManager.h in Headers */ = {isa = PBXBuildFile; fileRef = 66029E580161E0650055708C /* KTestManager.h */; }; + EDC2C93C1A1AA50D00942777 /* MessagePatternCodeNode.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E37F00D7DFE17BE9C1BD /* MessagePatternCodeNode.h */; }; + EDC2C93D1A1AA50D00942777 /* FSMiscTools.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E38100D7DFE17BE9C1BD /* FSMiscTools.h */; }; + EDC2C93E1A1AA50D00942777 /* FSMsgContext.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E38300D7DFE17BE9C1BD /* FSMsgContext.h */; }; + EDC2C93F1A1AA50D00942777 /* FSNewlyAllocatedObjectHolder.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E38700D7DFE17BE9C1BD /* FSNewlyAllocatedObjectHolder.h */; }; + EDC2C9401A1AA50D00942777 /* FSNumber.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E38D00D7DFE17BE9C1BD /* FSNumber.h */; }; + EDC2C9411A1AA50D00942777 /* NumberPrivate.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E38F00D7DFE17BE9C1BD /* NumberPrivate.h */; }; + EDC2C9421A1AA50D00942777 /* FSPilot.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E39000D7DFE17BE9C1BD /* FSPilot.h */; }; + EDC2C9431A1AA50D00942777 /* FSReplacementForCoderForClass.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E39400D7DFE17BE9C1BD /* FSReplacementForCoderForClass.h */; }; + EDC2C9441A1AA50D00942777 /* FSObjectEnumInfo.h in Headers */ = {isa = PBXBuildFile; fileRef = ED8222E51A19554F00C42C72 /* FSObjectEnumInfo.h */; }; + EDC2C9451A1AA50D00942777 /* ShellView.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E39600D7DFE17BE9C1BD /* ShellView.h */; }; + EDC2C9461A1AA50D00942777 /* Space.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E39800D7DFE17BE9C1BD /* Space.h */; }; + EDC2C9471A1AA50D00942777 /* FSCommandHistory.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E39A00D7DFE17BE9C1BD /* FSCommandHistory.h */; }; + EDC2C9481A1AA50D00942777 /* FSSystem.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E39E00D7DFE17BE9C1BD /* FSSystem.h */; }; + EDC2C9491A1AA50D00942777 /* DOTest.h in Headers */ = {isa = PBXBuildFile; fileRef = F5F13B4701C8BE3401CB6DF7 /* DOTest.h */; }; + EDC2C94A1A1AA50D00942777 /* FSNSProtocolChecker.h in Headers */ = {isa = PBXBuildFile; fileRef = F5F140590223CC9D01DD698C /* FSNSProtocolChecker.h */; }; + EDC2C94B1A1AA50D00942777 /* FScriptAppController.h in Headers */ = {isa = PBXBuildFile; fileRef = F5F1A9F9022E9A96011160FE /* FScriptAppController.h */; }; + EDC2C94C1A1AA50D00942777 /* FSObjectBrowserToolbar.h in Headers */ = {isa = PBXBuildFile; fileRef = F538EF6C0279FD3C01345511 /* FSObjectBrowserToolbar.h */; }; + EDC2C94D1A1AA50D00942777 /* FSEvalCommand.h in Headers */ = {isa = PBXBuildFile; fileRef = F538EF700279FD3C01345511 /* FSEvalCommand.h */; }; + EDC2C94E1A1AA50D00942777 /* FSServicesProvider.h in Headers */ = {isa = PBXBuildFile; fileRef = F538EF7C0279FD3C01345511 /* FSServicesProvider.h */; }; + EDC2C94F1A1AA50D00942777 /* FSTask.h in Headers */ = {isa = PBXBuildFile; fileRef = F538EF7E0279FD3C01345511 /* FSTask.h */; }; + EDC2C9501A1AA50D00942777 /* FSObjectBrowserToolbarButton.h in Headers */ = {isa = PBXBuildFile; fileRef = F5F0AD420285792F0103CD49 /* FSObjectBrowserToolbarButton.h */; }; + EDC2C9511A1AA50D00942777 /* FSObjectBrowserButtonCtxBlock.h in Headers */ = {isa = PBXBuildFile; fileRef = F5F0261F02C243D20155CB83 /* FSObjectBrowserButtonCtxBlock.h */; }; + EDC2C9521A1AA50D00942777 /* DOCustom.h in Headers */ = {isa = PBXBuildFile; fileRef = F5F1AAAE022E9E4F011160FE /* DOCustom.h */; }; + EDC2C9531A1AA50D00942777 /* FSObjectInspectorViewModelItem.h in Headers */ = {isa = PBXBuildFile; fileRef = ED8222D41A194FD600C42C72 /* FSObjectInspectorViewModelItem.h */; }; + EDC2C9541A1AA50D00942777 /* Pointer.h in Headers */ = {isa = PBXBuildFile; fileRef = F505648002DF417501FE0326 /* Pointer.h */; }; + EDC2C9551A1AA50D00942777 /* FSObjectInspectorViewController.h in Headers */ = {isa = PBXBuildFile; fileRef = ED3004E51A1A86EF00675D94 /* FSObjectInspectorViewController.h */; }; + EDC2C9561A1AA50D00942777 /* PointerPrivate.h in Headers */ = {isa = PBXBuildFile; fileRef = F5F856C002EB281C01F7E6F0 /* PointerPrivate.h */; }; + EDC2C9571A1AA50D00942777 /* metamacros.h in Headers */ = {isa = PBXBuildFile; fileRef = EDFB302E1A18CA26002C8DD7 /* metamacros.h */; }; + EDC2C9581A1AA50D00942777 /* FSInterpreterPrivate.h in Headers */ = {isa = PBXBuildFile; fileRef = F54CA17602FB2CAF01C25A35 /* FSInterpreterPrivate.h */; }; + EDC2C9591A1AA50D00942777 /* FSIdentifierFormatter.h in Headers */ = {isa = PBXBuildFile; fileRef = F5073A2102FC5400013656B0 /* FSIdentifierFormatter.h */; }; + EDC2C95A1A1AA50D00942777 /* FSObjectFormatter.h in Headers */ = {isa = PBXBuildFile; fileRef = F5EBBE820321029601CA10C6 /* FSObjectFormatter.h */; }; + EDC2C95B1A1AA50D00942777 /* FSSystemPrivate.h in Headers */ = {isa = PBXBuildFile; fileRef = F5A25E260357B373011A39F8 /* FSSystemPrivate.h */; }; + EDC2C95C1A1AA50D00942777 /* FSKeyedUnarchiver.h in Headers */ = {isa = PBXBuildFile; fileRef = F55D44C40358A88801B9E934 /* FSKeyedUnarchiver.h */; }; + EDC2C95D1A1AA50D00942777 /* FSKeyedArchiver.h in Headers */ = {isa = PBXBuildFile; fileRef = F55D44CE0358B5D201B9E934 /* FSKeyedArchiver.h */; }; + EDC2C95E1A1AA50D00942777 /* FSConstantListBuilder.h in Headers */ = {isa = PBXBuildFile; fileRef = F52EECA6036210E2016141BB /* FSConstantListBuilder.h */; }; + EDC2C95F1A1AA50D00942777 /* FSImageInspector.h in Headers */ = {isa = PBXBuildFile; fileRef = F54B55B9036B45770140C608 /* FSImageInspector.h */; }; + EDC2C9601A1AA50D00942777 /* FSNSImage.h in Headers */ = {isa = PBXBuildFile; fileRef = F54B55C8036B4A330140C608 /* FSNSImage.h */; }; + EDC2C9611A1AA50D00942777 /* FSObjectBrowserToolbarItem.h in Headers */ = {isa = PBXBuildFile; fileRef = F58090CF03755FC701AED2EF /* FSObjectBrowserToolbarItem.h */; }; + EDC2C9621A1AA50D00942777 /* FSNSObjectPrivate.h in Headers */ = {isa = PBXBuildFile; fileRef = 8F63CC08044B95DB00B84480 /* FSNSObjectPrivate.h */; }; + EDC2C9631A1AA50D00942777 /* FSArrayEnumerator.h in Headers */ = {isa = PBXBuildFile; fileRef = 8FA3AE55044D4D6700CF7A3A /* FSArrayEnumerator.h */; }; + EDC2C9641A1AA50D00942777 /* FSNSMutableArray.h in Headers */ = {isa = PBXBuildFile; fileRef = 8F66F85404666E8100AFC811 /* FSNSMutableArray.h */; }; + EDC2C9651A1AA50D00942777 /* FSObjectBrowserButtonsInspector.h in Headers */ = {isa = PBXBuildFile; fileRef = F5F9569602B272FB0121B3BA /* FSObjectBrowserButtonsInspector.h */; }; + EDC2C9661A1AA50D00942777 /* ArrayRepBoolean.h in Headers */ = {isa = PBXBuildFile; fileRef = F5D4BE29038511FF01461810 /* ArrayRepBoolean.h */; }; + EDC2C9671A1AA50D00942777 /* FSNSValue.h in Headers */ = {isa = PBXBuildFile; fileRef = 8F553BF70585222700A92293 /* FSNSValue.h */; }; + EDC2C9681A1AA50D00942777 /* FSReplacementForCoderForNilInArray.h in Headers */ = {isa = PBXBuildFile; fileRef = 8F7D7DB7058E32CD00F1B8A8 /* FSReplacementForCoderForNilInArray.h */; }; + EDC2C9691A1AA50D00942777 /* FSNamedNumber.h in Headers */ = {isa = PBXBuildFile; fileRef = 8F0E3B7E059F3DBB003F6CE9 /* FSNamedNumber.h */; }; + EDC2C96A1A1AA50D00942777 /* FSCollectionInspectorTableView.h in Headers */ = {isa = PBXBuildFile; fileRef = 8F60216E05A25CDC0004EFF1 /* FSCollectionInspectorTableView.h */; }; + EDC2C96B1A1AA50D00942777 /* FSNSSet.h in Headers */ = {isa = PBXBuildFile; fileRef = 8F60F24505A9FE8B00985FEC /* FSNSSet.h */; }; + EDC2C96C1A1AA50D00942777 /* FSAttributedStringInspector.h in Headers */ = {isa = PBXBuildFile; fileRef = 8FDCCD4E05C09F8200747C0A /* FSAttributedStringInspector.h */; }; + EDC2C96D1A1AA50D00942777 /* FSNSAttributedString.h in Headers */ = {isa = PBXBuildFile; fileRef = 8FDCCDBF05C0A23000747C0A /* FSNSAttributedString.h */; }; + EDC2C96E1A1AA50D00942777 /* FSInterpreterViewPrivate.h in Headers */ = {isa = PBXBuildFile; fileRef = 8F71F72205C43A7D00C34794 /* FSInterpreterViewPrivate.h */; }; + EDC2C96F1A1AA50D00942777 /* FScriptMenuItem.h in Headers */ = {isa = PBXBuildFile; fileRef = 8F0B66FB05C5639E0099180D /* FScriptMenuItem.h */; }; + EDC2C9701A1AA50D00942777 /* FSNSFont.h in Headers */ = {isa = PBXBuildFile; fileRef = 8F658B2705C9694F0040FB24 /* FSNSFont.h */; }; + EDC2C9711A1AA50D00942777 /* FSObjectBrowserMatrix.h in Headers */ = {isa = PBXBuildFile; fileRef = 8FB505FF05D53C8600153B33 /* FSObjectBrowserMatrix.h */; }; + EDC2C9721A1AA50D00942777 /* FSNSString.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E36700D7DFE17BE9C1BD /* FSNSString.h */; }; + EDC2C9741A1AA50D00942777 /* FSNSStringPrivate.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E36900D7DFE17BE9C1BD /* FSNSStringPrivate.h */; }; + EDC2C9751A1AA50D00942777 /* FSSymbolTable.h in Headers */ = {isa = PBXBuildFile; fileRef = 8F17C07D06B1309C00F07862 /* FSSymbolTable.h */; }; + EDC2C9761A1AA50D00942777 /* TestFS.h in Headers */ = {isa = PBXBuildFile; fileRef = 8FBB10A4044E28FD00181279 /* TestFS.h */; }; + EDC2C9771A1AA50D00942777 /* FSObjectBrowserViewObjectInfo.h in Headers */ = {isa = PBXBuildFile; fileRef = 8F4E294C075B8E5600F8DCDB /* FSObjectBrowserViewObjectInfo.h */; }; + EDC2C9781A1AA50D00942777 /* FSCollectionInspectorView.h in Headers */ = {isa = PBXBuildFile; fileRef = 8FA8EDC607735B3B001BEC7B /* FSCollectionInspectorView.h */; }; + EDC2C9791A1AA50D00942777 /* ArrayRepFetchRequest.h in Headers */ = {isa = PBXBuildFile; fileRef = 8FBC2877077B7D5200F9B4A2 /* ArrayRepFetchRequest.h */; }; + EDC2C97A1A1AA50D00942777 /* FSPointer.h in Headers */ = {isa = PBXBuildFile; fileRef = 8F8EA70B077F6A5200AC1C96 /* FSPointer.h */; }; + EDC2C97B1A1AA50D00942777 /* FSGenericPointer.h in Headers */ = {isa = PBXBuildFile; fileRef = 8F8EA779077F6C9300AC1C96 /* FSGenericPointer.h */; }; + EDC2C97C1A1AA50D00942777 /* FSPointerPrivate.h in Headers */ = {isa = PBXBuildFile; fileRef = 8F8EA7E8077F719800AC1C96 /* FSPointerPrivate.h */; }; + EDC2C97D1A1AA50D00942777 /* FSGenericPointerPrivate.h in Headers */ = {isa = PBXBuildFile; fileRef = 8F8EA841077F79A000AC1C96 /* FSGenericPointerPrivate.h */; }; + EDC2C97E1A1AA50D00942777 /* FSObjectPointer.h in Headers */ = {isa = PBXBuildFile; fileRef = 8FE9AE12078071CC005B2CC4 /* FSObjectPointer.h */; }; + EDC2C97F1A1AA50D00942777 /* FSObjectPointerPrivate.h in Headers */ = {isa = PBXBuildFile; fileRef = 8FE9AE8207807269005B2CC4 /* FSObjectPointerPrivate.h */; }; + EDC2C9801A1AA50D00942777 /* FSManagedObjectContextInspector.h in Headers */ = {isa = PBXBuildFile; fileRef = 8F37AEC2078B7E900083565D /* FSManagedObjectContextInspector.h */; }; + EDC2C9811A1AA50D00942777 /* FSObjectBrowserNamedObjectWrapper.h in Headers */ = {isa = PBXBuildFile; fileRef = 8F86923607F19BA8000D20A4 /* FSObjectBrowserNamedObjectWrapper.h */; }; + EDC2C9821A1AA50D00942777 /* FSInspectorUniquier.h in Headers */ = {isa = PBXBuildFile; fileRef = 8F7F4F9C07FB274C008E42F4 /* FSInspectorUniquier.h */; }; + EDC2C9831A1AA50D00942777 /* FSPredicateTextView.h in Headers */ = {isa = PBXBuildFile; fileRef = 8F95E3C108034A670030B65C /* FSPredicateTextView.h */; }; + EDC2C9841A1AA50D00942777 /* FSCoreDataSample.h in Headers */ = {isa = PBXBuildFile; fileRef = 8FE7E0E6082AD964008231E8 /* FSCoreDataSample.h */; }; + EDC2C9851A1AA50D00942777 /* FSNSManagedObjectContext.h in Headers */ = {isa = PBXBuildFile; fileRef = 8F5189E707F072EA00A50735 /* FSNSManagedObjectContext.h */; }; + EDC2C9861A1AA50D00942777 /* FSObjectBrowserSearchField.h in Headers */ = {isa = PBXBuildFile; fileRef = 8F585F6E059B23F100C12B6F /* FSObjectBrowserSearchField.h */; }; + EDC2C9871A1AA50D00942777 /* FSBlockCompilationResult.h in Headers */ = {isa = PBXBuildFile; fileRef = 8F90A2EF096DB0660064F4BC /* FSBlockCompilationResult.h */; }; + EDC2C9881A1AA50D00942777 /* FSReturnSignal.h in Headers */ = {isa = PBXBuildFile; fileRef = 8FD7D4A60975B377009B2685 /* FSReturnSignal.h */; }; + EDC2C9891A1AA50D00942777 /* FSConstantsDictionaryGenerator.h in Headers */ = {isa = PBXBuildFile; fileRef = 8F92F0340463F03300F4C61F /* FSConstantsDictionaryGenerator.h */; }; + EDC2C98A1A1AA50D00942777 /* FSMethod.h in Headers */ = {isa = PBXBuildFile; fileRef = 8F3C13980C65E66400948776 /* FSMethod.h */; }; + EDC2C98B1A1AA50D00942777 /* FSCNClassDefinition.h in Headers */ = {isa = PBXBuildFile; fileRef = 8F5AD3200D05CFFE000CEAC6 /* FSCNClassDefinition.h */; }; + EDC2C98C1A1AA50D00942777 /* FSCNBase.h in Headers */ = {isa = PBXBuildFile; fileRef = 8FE6397E0D09C0F400255EBA /* FSCNBase.h */; }; + EDC2C98D1A1AA50D00942777 /* FSCNIdentifier.h in Headers */ = {isa = PBXBuildFile; fileRef = 8FE6398E0D09DCB600255EBA /* FSCNIdentifier.h */; }; + EDC2C98E1A1AA50D00942777 /* FSTestObjCClass1.h in Headers */ = {isa = PBXBuildFile; fileRef = 8FE3DD200D26D49900A1D767 /* FSTestObjCClass1.h */; }; + EDC2C98F1A1AA50D00942777 /* FSTestObjCClass2.h in Headers */ = {isa = PBXBuildFile; fileRef = 8F4822020D2C317700754A4E /* FSTestObjCClass2.h */; }; + EDC2C9901A1AA50D00942777 /* FSCNCategory.h in Headers */ = {isa = PBXBuildFile; fileRef = 8F8112F00D85E58200CB3407 /* FSCNCategory.h */; }; + EDC2C9911A1AA50D00942777 /* FSCNMessage.h in Headers */ = {isa = PBXBuildFile; fileRef = 8F59CA6F0D86DD0800D67A78 /* FSCNMessage.h */; }; + EDC2C9921A1AA50D00942777 /* FSCNSuper.h in Headers */ = {isa = PBXBuildFile; fileRef = 8F72237D0D870C6A00394C99 /* FSCNSuper.h */; }; + EDC2C9931A1AA50D00942777 /* FSCNUnaryMessage.h in Headers */ = {isa = PBXBuildFile; fileRef = 8F2E341E0D8DB61C00912543 /* FSCNUnaryMessage.h */; }; + EDC2C9941A1AA50D00942777 /* FSCNBinaryMessage.h in Headers */ = {isa = PBXBuildFile; fileRef = 8F2E34310D8DBF6A00912543 /* FSCNBinaryMessage.h */; }; + EDC2C9951A1AA50D00942777 /* FSCNKeywordMessage.h in Headers */ = {isa = PBXBuildFile; fileRef = 8F2E343A0D8DBFE700912543 /* FSCNKeywordMessage.h */; }; + EDC2C9961A1AA50D00942777 /* FSCNCascade.h in Headers */ = {isa = PBXBuildFile; fileRef = 8F5900130D9468FC003A8B17 /* FSCNCascade.h */; }; + EDC2C9971A1AA50D00942777 /* FSCNStatementList.h in Headers */ = {isa = PBXBuildFile; fileRef = 8F8F58640D9FE6A900ED0FED /* FSCNStatementList.h */; }; + EDC2C9981A1AA50D00942777 /* FSCNPrecomputedObject.h in Headers */ = {isa = PBXBuildFile; fileRef = 8F747DA70DA03AE200148342 /* FSCNPrecomputedObject.h */; }; + EDC2C9991A1AA50D00942777 /* FSCNArray.h in Headers */ = {isa = PBXBuildFile; fileRef = 8F747DB60DA0467100148342 /* FSCNArray.h */; }; + EDC2C99A1A1AA50D00942777 /* FSCNBlock.h in Headers */ = {isa = PBXBuildFile; fileRef = 8FAE79AA0DA0ED5D00CB6E14 /* FSCNBlock.h */; }; + EDC2C99B1A1AA50D00942777 /* FSCNAssignment.h in Headers */ = {isa = PBXBuildFile; fileRef = 8FAE79F10DA109C500CB6E14 /* FSCNAssignment.h */; }; + EDC2C99C1A1AA50D00942777 /* FSCNMethod.h in Headers */ = {isa = PBXBuildFile; fileRef = 8F45CBBD0DA813F200AFA8C8 /* FSCNMethod.h */; }; + EDC2C99D1A1AA50D00942777 /* FSCNReturn.h in Headers */ = {isa = PBXBuildFile; fileRef = 8FD0A3120DD7276000E47459 /* FSCNReturn.h */; }; + EDC2C99E1A1AA50D00942777 /* FSObjectInspectorBackgroundView.h in Headers */ = {isa = PBXBuildFile; fileRef = EDC2C8EE1A1AA34D00942777 /* FSObjectInspectorBackgroundView.h */; }; + EDC2C99F1A1AA50D00942777 /* FSClassDefinition.h in Headers */ = {isa = PBXBuildFile; fileRef = 8F8949D50DE08B110094EC14 /* FSClassDefinition.h */; }; + EDC2C9A01A1AA50D00942777 /* FSTranscript.h in Headers */ = {isa = PBXBuildFile; fileRef = 8F2DE6590E57254700CF83CB /* FSTranscript.h */; }; + EDC2C9A11A1AA50D00942777 /* FSArray.h in Headers */ = {isa = PBXBuildFile; fileRef = 8FE6AD8F0EC740650096019D /* FSArray.h */; settings = {ATTRIBUTES = (Public, ); }; }; + EDC2C9A21A1AA50D00942777 /* Array_fscript.h in Headers */ = {isa = PBXBuildFile; fileRef = 8F31A4C00EC74A2E00D1B8E8 /* Array_fscript.h */; settings = {ATTRIBUTES = (Public, ); }; }; + EDC2C9A31A1AA50D00942777 /* Block_fscript.h in Headers */ = {isa = PBXBuildFile; fileRef = 8FCA00C10EEAF34300B10420 /* Block_fscript.h */; }; + EDC2C9A41A1AA50D00942777 /* Number_fscript.h in Headers */ = {isa = PBXBuildFile; fileRef = 8FBB2FF00EEB3467007A3163 /* Number_fscript.h */; }; + EDC2C9A51A1AA50D00942777 /* FSGlobalScope.h in Headers */ = {isa = PBXBuildFile; fileRef = 8FB9D5970F1CEE2100E10274 /* FSGlobalScope.h */; }; + EDC2C9A61A1AA50D00942777 /* FSNSFileHandle.h in Headers */ = {isa = PBXBuildFile; fileRef = 8F9D04170F1DF1CB001B8286 /* FSNSFileHandle.h */; }; + EDC2C9A71A1AA50D00942777 /* FSAssociation.h in Headers */ = {isa = PBXBuildFile; fileRef = 8F940B810F2393B0004525E1 /* FSAssociation.h */; }; + EDC2C9A81A1AA50D00942777 /* FSCNDictionary.h in Headers */ = {isa = PBXBuildFile; fileRef = 8F940C6E0F23BC2E004525E1 /* FSCNDictionary.h */; }; + EDC2C9A91A1AA50D00942777 /* FSObjectBrowserBottomBarTextDisplay.h in Headers */ = {isa = PBXBuildFile; fileRef = 8F7A71290F48397C00E95364 /* FSObjectBrowserBottomBarTextDisplay.h */; }; + EDC2C9AA1A1AA50D00942777 /* FSNSAffineTransform.h in Headers */ = {isa = PBXBuildFile; fileRef = 8F2D72090F6BD9B100F0862A /* FSNSAffineTransform.h */; }; + EDC2C9AB1A1AA50D00942777 /* FSDemoAssistant.h in Headers */ = {isa = PBXBuildFile; fileRef = 8F9636430F8DF6AB00A70F39 /* FSDemoAssistant.h */; }; + EDC2C9AC1A1AA50D00942777 /* FSNewlyAllocatedObject.h in Headers */ = {isa = PBXBuildFile; fileRef = 8FCA593110883B0100F67841 /* FSNewlyAllocatedObject.h */; }; + EDC2C9AD1A1AA50D00942777 /* FSWorksWhenModalWindow.h in Headers */ = {isa = PBXBuildFile; fileRef = 8F5EDA00109B384A003A2F4C /* FSWorksWhenModalWindow.h */; }; + EDC2C9AE1A1AA50D00942777 /* FSNSMutableDictionary.h in Headers */ = {isa = PBXBuildFile; fileRef = 8F44270B116549C700E88F21 /* FSNSMutableDictionary.h */; }; + EDC2C9B21A1AA50D00942777 /* FSObjectBrowserButtonsInspector.xib in Resources */ = {isa = PBXBuildFile; fileRef = EDFB2FF21A17E345002C8DD7 /* FSObjectBrowserButtonsInspector.xib */; }; + EDC2C9B51A1AA50D00942777 /* FlightTutorial.txt in Resources */ = {isa = PBXBuildFile; fileRef = 0CD4E34400D7DFE17BE9C1BD /* FlightTutorial.txt */; }; + EDC2C9B61A1AA50D00942777 /* genObjInspector.nib in Resources */ = {isa = PBXBuildFile; fileRef = 0CD4E37900D7DFE17BE9C1BD /* genObjInspector.nib */; }; + EDC2C9B71A1AA50D00942777 /* FSConsole.xib in Resources */ = {isa = PBXBuildFile; fileRef = EDE508D119DD4D310012F16A /* FSConsole.xib */; }; + EDC2C9B81A1AA50D00942777 /* KTest.txt in Resources */ = {isa = PBXBuildFile; fileRef = 0CD4E37D00D7DFE17BE9C1BD /* KTest.txt */; }; + EDC2C9B91A1AA50D00942777 /* license.txt in Resources */ = {isa = PBXBuildFile; fileRef = 0CD4E37E00D7DFE17BE9C1BD /* license.txt */; }; + EDC2C9BA1A1AA50D00942777 /* fs.icns in Resources */ = {isa = PBXBuildFile; fileRef = F5F1A9F7022E9A96011160FE /* fs.icns */; }; + EDC2C9BD1A1AA50D00942777 /* fs.scriptSuite in Resources */ = {isa = PBXBuildFile; fileRef = F538EF6E0279FD3C01345511 /* fs.scriptSuite */; }; + EDC2C9BE1A1AA50D00942777 /* fs.scriptTerminology in Resources */ = {isa = PBXBuildFile; fileRef = F538EF6F0279FD3C01345511 /* fs.scriptTerminology */; }; + EDC2C9C11A1AA50D00942777 /* constantsDictionary in Resources */ = {isa = PBXBuildFile; fileRef = 8F92F0380463F2A400F4C61F /* constantsDictionary */; }; + EDC2C9C21A1AA50D00942777 /* FSObjectInspectorViewController.xib in Resources */ = {isa = PBXBuildFile; fileRef = ED3004E71A1A86EF00675D94 /* FSObjectInspectorViewController.xib */; }; + EDC2C9C41A1AA50D00942777 /* FScriptPreferences.xib in Resources */ = {isa = PBXBuildFile; fileRef = EDE508DA19DD4FDC0012F16A /* FScriptPreferences.xib */; }; + EDC2C9C51A1AA50D00942777 /* run.tiff in Resources */ = {isa = PBXBuildFile; fileRef = 8F2D066F05CED9B9007EA81B /* run.tiff */; }; + EDC2C9C61A1AA50D00942777 /* build.tiff in Resources */ = {isa = PBXBuildFile; fileRef = 8F56036505CF22660044FA65 /* build.tiff */; }; + EDC2C9C91A1AA50D00942777 /* FSMovieInspector.nib in Resources */ = {isa = PBXBuildFile; fileRef = 8F7472BE056B7ACE00E87339 /* FSMovieInspector.nib */; }; + EDC2C9CA1A1AA50D00942777 /* FSTestClasses.txt in Resources */ = {isa = PBXBuildFile; fileRef = 8FE3DC990D26C0FD00A1D767 /* FSTestClasses.txt */; }; + EDC2C9CB1A1AA50D00942777 /* DemoAssistant.xib in Resources */ = {isa = PBXBuildFile; fileRef = 8F9636480F8DF86600A70F39 /* DemoAssistant.xib */; }; + EDC2C9CD1A1AA50D00942777 /* FSAirplane.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E31000D7DFE17BE9C1BD /* FSAirplane.m */; }; + EDC2C9CE1A1AA50D00942777 /* ArrayRepDouble.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E31800D7DFE17BE9C1BD /* ArrayRepDouble.m */; }; + EDC2C9CF1A1AA50D00942777 /* ArrayRepEmpty.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E31A00D7DFE17BE9C1BD /* ArrayRepEmpty.m */; }; + EDC2C9D01A1AA50D00942777 /* ArrayRepId.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E31C00D7DFE17BE9C1BD /* ArrayRepId.m */; }; + EDC2C9D11A1AA50D00942777 /* FSCollectionInspector.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E31E00D7DFE17BE9C1BD /* FSCollectionInspector.m */; }; + EDC2C9D21A1AA50D00942777 /* FSObjectBrowser.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E32100D7DFE17BE9C1BD /* FSObjectBrowser.m */; settings = {COMPILER_FLAGS = "-fobjc-arc"; }; }; + EDC2C9D31A1AA50D00942777 /* FSObjectBrowserArgumentPanel.m in Sources */ = {isa = PBXBuildFile; fileRef = F5FA8A6D0215D44C01AFEEFD /* FSObjectBrowserArgumentPanel.m */; }; + EDC2C9D41A1AA50D00942777 /* FSObjectBrowserCell.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E32300D7DFE17BE9C1BD /* FSObjectBrowserCell.m */; }; + EDC2C9D51A1AA50D00942777 /* FSObjectBrowserView.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E32500D7DFE17BE9C1BD /* FSObjectBrowserView.m */; }; + EDC2C9D61A1AA50D00942777 /* FSBlock.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E32700D7DFE17BE9C1BD /* FSBlock.m */; }; + EDC2C9D71A1AA50D00942777 /* BlockInspector.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E32900D7DFE17BE9C1BD /* BlockInspector.m */; }; + EDC2C9D81A1AA50D00942777 /* BlockRep.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E32D00D7DFE17BE9C1BD /* BlockRep.m */; }; + EDC2C9D91A1AA50D00942777 /* BlockStackElem.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E33000D7DFE17BE9C1BD /* BlockStackElem.m */; }; + EDC2C9DA1A1AA50D00942777 /* CLIView.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E33400D7DFE17BE9C1BD /* CLIView.m */; }; + EDC2C9DB1A1AA50D00942777 /* FSCompilationResult.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E33600D7DFE17BE9C1BD /* FSCompilationResult.m */; }; + EDC2C9DC1A1AA50D00942777 /* FSObjectInspectorViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = ED3004E61A1A86EF00675D94 /* FSObjectInspectorViewController.m */; settings = {COMPILER_FLAGS = "-fobjc-arc"; }; }; + EDC2C9DD1A1AA50D00942777 /* CompiledCodeNode.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E33800D7DFE17BE9C1BD /* CompiledCodeNode.m */; }; + EDC2C9DE1A1AA50D00942777 /* FSCompiler.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E33A00D7DFE17BE9C1BD /* FSCompiler.m */; }; + EDC2C9DF1A1AA50D00942777 /* FSConstantsInitialization.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E33C00D7DFE17BE9C1BD /* FSConstantsInitialization.m */; }; + EDC2C9E01A1AA50D00942777 /* FSExecEngine.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E33E00D7DFE17BE9C1BD /* FSExecEngine.m */; }; + EDC2C9E11A1AA50D00942777 /* FSExecutor.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E34000D7DFE17BE9C1BD /* FSExecutor.m */; }; + EDC2C9E21A1AA50D00942777 /* FSFlight.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E34300D7DFE17BE9C1BD /* FSFlight.m */; }; + EDC2C9E41A1AA50D00942777 /* FSArchiver.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E34600D7DFE17BE9C1BD /* FSArchiver.m */; }; + EDC2C9E51A1AA50D00942777 /* FSBoolean.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E34800D7DFE17BE9C1BD /* FSBoolean.m */; }; + EDC2C9E61A1AA50D00942777 /* FScriptFunctions.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E34F00D7DFE17BE9C1BD /* FScriptFunctions.m */; }; + EDC2C9E71A1AA50D00942777 /* FScriptTextView.m in Sources */ = {isa = PBXBuildFile; fileRef = F501AF7B021497C401A75EC5 /* FScriptTextView.m */; }; + EDC2C9E81A1AA50D00942777 /* FSInterpreter.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E35100D7DFE17BE9C1BD /* FSInterpreter.m */; }; + EDC2C9E91A1AA50D00942777 /* FSInterpreterResult.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E35300D7DFE17BE9C1BD /* FSInterpreterResult.m */; }; + EDC2C9EA1A1AA50D00942777 /* FSInterpreterView.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E35600D7DFE17BE9C1BD /* FSInterpreterView.m */; }; + EDC2C9EB1A1AA50D00942777 /* FSNSArray.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E35900D7DFE17BE9C1BD /* FSNSArray.m */; }; + EDC2C9EC1A1AA50D00942777 /* FSNSDate.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E35C00D7DFE17BE9C1BD /* FSNSDate.m */; }; + EDC2C9ED1A1AA50D00942777 /* FSNSDictionary.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E35E00D7DFE17BE9C1BD /* FSNSDictionary.m */; }; + EDC2C9EE1A1AA50D00942777 /* FSNSDistantObject.m in Sources */ = {isa = PBXBuildFile; fileRef = F51CA01501B013C401BFBB24 /* FSNSDistantObject.m */; }; + EDC2C9EF1A1AA50D00942777 /* FSNSMutableString.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E36000D7DFE17BE9C1BD /* FSNSMutableString.m */; }; + EDC2C9F11A1AA50D00942777 /* FSNSNumber.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E36200D7DFE17BE9C1BD /* FSNSNumber.m */; }; + EDC2C9F21A1AA50D00942777 /* FSNSObject.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E36400D7DFE17BE9C1BD /* FSNSObject.m */; }; + EDC2C9F31A1AA50D00942777 /* FSNSProxy.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E36600D7DFE17BE9C1BD /* FSNSProxy.m */; }; + EDC2C9F41A1AA50D00942777 /* FSPattern.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E36D00D7DFE17BE9C1BD /* FSPattern.m */; }; + EDC2C9F51A1AA50D00942777 /* FSUnarchiver.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E37300D7DFE17BE9C1BD /* FSUnarchiver.m */; }; + EDC2C9F61A1AA50D00942777 /* FSVoid.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E37500D7DFE17BE9C1BD /* FSVoid.m */; }; + EDC2C9F71A1AA50D00942777 /* FSGenericObjectInspector.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E37800D7DFE17BE9C1BD /* FSGenericObjectInspector.m */; }; + EDC2C9F81A1AA50D00942777 /* KTestManager.m in Sources */ = {isa = PBXBuildFile; fileRef = 66029E590161E0650055708C /* KTestManager.m */; }; + EDC2C9F91A1AA50D00942777 /* FSMiscTools.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E38200D7DFE17BE9C1BD /* FSMiscTools.m */; }; + EDC2C9FA1A1AA50D00942777 /* FSMsgContext.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E38400D7DFE17BE9C1BD /* FSMsgContext.m */; }; + EDC2C9FB1A1AA50D00942777 /* FSNewlyAllocatedObjectHolder.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E38800D7DFE17BE9C1BD /* FSNewlyAllocatedObjectHolder.m */; }; + EDC2C9FC1A1AA50D00942777 /* FSNumber.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E38E00D7DFE17BE9C1BD /* FSNumber.m */; }; + EDC2C9FD1A1AA50D00942777 /* FSPilot.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E39100D7DFE17BE9C1BD /* FSPilot.m */; }; + EDC2C9FE1A1AA50D00942777 /* MessagePatternCodeNode.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E38000D7DFE17BE9C1BD /* MessagePatternCodeNode.m */; }; + EDC2C9FF1A1AA50D00942777 /* FSReplacementForCoderForClass.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E39500D7DFE17BE9C1BD /* FSReplacementForCoderForClass.m */; }; + EDC2CA001A1AA50D00942777 /* ShellView.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E39700D7DFE17BE9C1BD /* ShellView.m */; }; + EDC2CA011A1AA50D00942777 /* Space.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E39900D7DFE17BE9C1BD /* Space.m */; }; + EDC2CA021A1AA50D00942777 /* FSCommandHistory.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E39B00D7DFE17BE9C1BD /* FSCommandHistory.m */; }; + EDC2CA031A1AA50D00942777 /* FSSystem.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E39F00D7DFE17BE9C1BD /* FSSystem.m */; }; + EDC2CA041A1AA50D00942777 /* FSObjectEnumInfo.m in Sources */ = {isa = PBXBuildFile; fileRef = ED8222E61A19554F00C42C72 /* FSObjectEnumInfo.m */; }; + EDC2CA051A1AA50D00942777 /* DOTest.m in Sources */ = {isa = PBXBuildFile; fileRef = F5F13B4801C8BE3401CB6DF7 /* DOTest.m */; }; + EDC2CA061A1AA50D00942777 /* FSNSProtocolChecker.m in Sources */ = {isa = PBXBuildFile; fileRef = F5F1405A0223CC9D01DD698C /* FSNSProtocolChecker.m */; }; + EDC2CA071A1AA50D00942777 /* fs_main.m in Sources */ = {isa = PBXBuildFile; fileRef = F5F1A9F8022E9A96011160FE /* fs_main.m */; }; + EDC2CA081A1AA50D00942777 /* FScriptAppController.m in Sources */ = {isa = PBXBuildFile; fileRef = F5F1A9FA022E9A96011160FE /* FScriptAppController.m */; }; + EDC2CA091A1AA50D00942777 /* FSObjectBrowserToolbar.m in Sources */ = {isa = PBXBuildFile; fileRef = F538EF6D0279FD3C01345511 /* FSObjectBrowserToolbar.m */; }; + EDC2CA0A1A1AA50D00942777 /* FSEvalCommand.m in Sources */ = {isa = PBXBuildFile; fileRef = F538EF710279FD3C01345511 /* FSEvalCommand.m */; }; + EDC2CA0B1A1AA50D00942777 /* FSServicesProvider.m in Sources */ = {isa = PBXBuildFile; fileRef = F538EF7D0279FD3C01345511 /* FSServicesProvider.m */; }; + EDC2CA0C1A1AA50D00942777 /* FSTask.m in Sources */ = {isa = PBXBuildFile; fileRef = F538EF7F0279FD3C01345511 /* FSTask.m */; }; + EDC2CA0D1A1AA50D00942777 /* FSObjectBrowserToolbarButton.m in Sources */ = {isa = PBXBuildFile; fileRef = F5F0AD430285792F0103CD49 /* FSObjectBrowserToolbarButton.m */; }; + EDC2CA0E1A1AA50D00942777 /* FSObjectBrowserButtonsInspector.m in Sources */ = {isa = PBXBuildFile; fileRef = F5F9569502B272FB0121B3BA /* FSObjectBrowserButtonsInspector.m */; }; + EDC2CA0F1A1AA50D00942777 /* FSObjectBrowserButtonCtxBlock.m in Sources */ = {isa = PBXBuildFile; fileRef = F5F0261E02C243D20155CB83 /* FSObjectBrowserButtonCtxBlock.m */; }; + EDC2CA101A1AA50D00942777 /* DOCustom.m in Sources */ = {isa = PBXBuildFile; fileRef = F5F1AAAF022E9E4F011160FE /* DOCustom.m */; }; + EDC2CA111A1AA50D00942777 /* Pointer.m in Sources */ = {isa = PBXBuildFile; fileRef = F505647F02DF417501FE0326 /* Pointer.m */; }; + EDC2CA121A1AA50D00942777 /* FSIdentifierFormatter.m in Sources */ = {isa = PBXBuildFile; fileRef = F5073A2002FC5400013656B0 /* FSIdentifierFormatter.m */; }; + EDC2CA131A1AA50D00942777 /* FSObjectFormatter.m in Sources */ = {isa = PBXBuildFile; fileRef = F5EBBE810321029601CA10C6 /* FSObjectFormatter.m */; }; + EDC2CA141A1AA50D00942777 /* FSKeyedUnarchiver.m in Sources */ = {isa = PBXBuildFile; fileRef = F55D44C50358A88801B9E934 /* FSKeyedUnarchiver.m */; }; + EDC2CA151A1AA50D00942777 /* FSKeyedArchiver.m in Sources */ = {isa = PBXBuildFile; fileRef = F55D44CF0358B5D201B9E934 /* FSKeyedArchiver.m */; }; + EDC2CA161A1AA50D00942777 /* FSObjectInspectorViewModelItem.m in Sources */ = {isa = PBXBuildFile; fileRef = ED8222D51A194FD600C42C72 /* FSObjectInspectorViewModelItem.m */; settings = {COMPILER_FLAGS = "-fobjc-arc"; }; }; + EDC2CA171A1AA50D00942777 /* FSConstantListBuilder.m in Sources */ = {isa = PBXBuildFile; fileRef = F52EECA7036210E2016141BB /* FSConstantListBuilder.m */; }; + EDC2CA181A1AA50D00942777 /* FSImageInspector.m in Sources */ = {isa = PBXBuildFile; fileRef = F54B55BA036B45770140C608 /* FSImageInspector.m */; }; + EDC2CA191A1AA50D00942777 /* FSNSImage.m in Sources */ = {isa = PBXBuildFile; fileRef = F54B55C9036B4A330140C608 /* FSNSImage.m */; }; + EDC2CA1A1A1AA50D00942777 /* FSDetailedObjectInspector.m in Sources */ = {isa = PBXBuildFile; fileRef = EDC2C8DD1A1A943600942777 /* FSDetailedObjectInspector.m */; settings = {COMPILER_FLAGS = "-fobjc-arc"; }; }; + EDC2CA1B1A1AA50D00942777 /* FSObjectBrowserToolbarItem.m in Sources */ = {isa = PBXBuildFile; fileRef = F58090D003755FC701AED2EF /* FSObjectBrowserToolbarItem.m */; }; + EDC2CA1C1A1AA50D00942777 /* FSArrayEnumerator.m in Sources */ = {isa = PBXBuildFile; fileRef = 8FA3AE56044D4D6700CF7A3A /* FSArrayEnumerator.m */; }; + EDC2CA1D1A1AA50D00942777 /* FSNSMutableArray.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F66F85504666E8100AFC811 /* FSNSMutableArray.m */; }; + EDC2CA1E1A1AA50D00942777 /* ArrayRepBoolean.m in Sources */ = {isa = PBXBuildFile; fileRef = F5D4BE2A038511FF01461810 /* ArrayRepBoolean.m */; }; + EDC2CA1F1A1AA50D00942777 /* FSNSValue.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F553BF80585222700A92293 /* FSNSValue.m */; }; + EDC2CA201A1AA50D00942777 /* FSReplacementForCoderForNilInArray.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F7D7DB8058E32CD00F1B8A8 /* FSReplacementForCoderForNilInArray.m */; }; + EDC2CA211A1AA50D00942777 /* FSNamedNumber.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F0E3B7F059F3DBB003F6CE9 /* FSNamedNumber.m */; }; + EDC2CA221A1AA50D00942777 /* FSCollectionInspectorTableView.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F60216F05A25CDC0004EFF1 /* FSCollectionInspectorTableView.m */; }; + EDC2CA231A1AA50D00942777 /* FSNSSet.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F60F24605A9FE8B00985FEC /* FSNSSet.m */; }; + EDC2CA241A1AA50D00942777 /* FSAttributedStringInspector.m in Sources */ = {isa = PBXBuildFile; fileRef = 8FDCCD4F05C09F8200747C0A /* FSAttributedStringInspector.m */; }; + EDC2CA251A1AA50D00942777 /* FSNSAttributedString.m in Sources */ = {isa = PBXBuildFile; fileRef = 8FDCCDC005C0A23000747C0A /* FSNSAttributedString.m */; }; + EDC2CA261A1AA50D00942777 /* FScriptMenuItem.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F0B66FC05C5639E0099180D /* FScriptMenuItem.m */; }; + EDC2CA271A1AA50D00942777 /* FSNSFont.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F658B2805C9694F0040FB24 /* FSNSFont.m */; }; + EDC2CA281A1AA50D00942777 /* FSObjectBrowserMatrix.m in Sources */ = {isa = PBXBuildFile; fileRef = 8FB5060005D53C8600153B33 /* FSObjectBrowserMatrix.m */; settings = {COMPILER_FLAGS = "-fobjc-arc"; }; }; + EDC2CA291A1AA50D00942777 /* FSNSString.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E36800D7DFE17BE9C1BD /* FSNSString.m */; }; + EDC2CA2A1A1AA50D00942777 /* FSObjectInspectorBackgroundView.m in Sources */ = {isa = PBXBuildFile; fileRef = EDC2C8EF1A1AA34D00942777 /* FSObjectInspectorBackgroundView.m */; }; + EDC2CA2B1A1AA50D00942777 /* FSSymbolTable.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F17C07E06B1309C00F07862 /* FSSymbolTable.m */; }; + EDC2CA2C1A1AA50D00942777 /* TestFS.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E3A000D7DFE17BE9C1BD /* TestFS.m */; }; + EDC2CA2D1A1AA50D00942777 /* FSObjectBrowserViewObjectInfo.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F4E294D075B8E5600F8DCDB /* FSObjectBrowserViewObjectInfo.m */; }; + EDC2CA2E1A1AA50D00942777 /* FSCollectionInspectorView.m in Sources */ = {isa = PBXBuildFile; fileRef = 8FA8EDD307735B3B001BEC7B /* FSCollectionInspectorView.m */; }; + EDC2CA2F1A1AA50D00942777 /* ArrayRepFetchRequest.m in Sources */ = {isa = PBXBuildFile; fileRef = 8FBC2884077B7D5200F9B4A2 /* ArrayRepFetchRequest.m */; }; + EDC2CA301A1AA50D00942777 /* FSPointer.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F8EA718077F6A5200AC1C96 /* FSPointer.m */; }; + EDC2CA311A1AA50D00942777 /* FSGenericPointer.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F8EA786077F6C9300AC1C96 /* FSGenericPointer.m */; }; + EDC2CA321A1AA50D00942777 /* FSObjectPointer.m in Sources */ = {isa = PBXBuildFile; fileRef = 8FE9AE1F078071CC005B2CC4 /* FSObjectPointer.m */; }; + EDC2CA331A1AA50D00942777 /* FSManagedObjectContextInspector.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F37AEC3078B7E900083565D /* FSManagedObjectContextInspector.m */; }; + EDC2CA341A1AA50D00942777 /* FSObjectBrowserNamedObjectWrapper.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F86923707F19BA8000D20A4 /* FSObjectBrowserNamedObjectWrapper.m */; }; + EDC2CA351A1AA50D00942777 /* FSInspectorUniquier.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F7F4F9D07FB274C008E42F4 /* FSInspectorUniquier.m */; }; + EDC2CA361A1AA50D00942777 /* FSPredicateTextView.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F95E3C208034A670030B65C /* FSPredicateTextView.m */; }; + EDC2CA371A1AA50D00942777 /* FSCoreDataSample.m in Sources */ = {isa = PBXBuildFile; fileRef = 8FE7E0E7082AD964008231E8 /* FSCoreDataSample.m */; }; + EDC2CA381A1AA50D00942777 /* FSNSManagedObjectContext.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F5189E807F072EA00A50735 /* FSNSManagedObjectContext.m */; }; + EDC2CA391A1AA50D00942777 /* FSObjectBrowserSearchField.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F585F6F059B23F100C12B6F /* FSObjectBrowserSearchField.m */; }; + EDC2CA3A1A1AA50D00942777 /* FSBlockCompilationResult.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F90A2F0096DB0660064F4BC /* FSBlockCompilationResult.m */; }; + EDC2CA3B1A1AA50D00942777 /* FSReturnSignal.m in Sources */ = {isa = PBXBuildFile; fileRef = 8FD7D4A70975B377009B2685 /* FSReturnSignal.m */; }; + EDC2CA3C1A1AA50D00942777 /* FSConstantsDictionaryGenerator.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F92F0350463F03300F4C61F /* FSConstantsDictionaryGenerator.m */; }; + EDC2CA3D1A1AA50D00942777 /* FSQTMovie.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F573F90056B780500F2796A /* FSQTMovie.m */; }; + EDC2CA3E1A1AA50D00942777 /* FSMovieInspector.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F573F7E056B754B00F2796A /* FSMovieInspector.m */; }; + EDC2CA3F1A1AA50D00942777 /* FSMethod.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F3C13990C65E66400948776 /* FSMethod.m */; }; + EDC2CA401A1AA50D00942777 /* FSCNClassDefinition.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F5AD3210D05CFFE000CEAC6 /* FSCNClassDefinition.m */; }; + EDC2CA411A1AA50D00942777 /* FSCNBase.m in Sources */ = {isa = PBXBuildFile; fileRef = 8FE6397F0D09C0F400255EBA /* FSCNBase.m */; }; + EDC2CA421A1AA50D00942777 /* FSCNIdentifier.m in Sources */ = {isa = PBXBuildFile; fileRef = 8FE6398F0D09DCB600255EBA /* FSCNIdentifier.m */; }; + EDC2CA431A1AA50D00942777 /* FSTestObjCClass1.m in Sources */ = {isa = PBXBuildFile; fileRef = 8FE3DD210D26D49900A1D767 /* FSTestObjCClass1.m */; }; + EDC2CA451A1AA50D00942777 /* FSTestObjCClass2.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F4822030D2C317700754A4E /* FSTestObjCClass2.m */; }; + EDC2CA461A1AA50D00942777 /* FSCNCategory.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F8112F10D85E58200CB3407 /* FSCNCategory.m */; }; + EDC2CA471A1AA50D00942777 /* FSCNMessage.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F59CA700D86DD0800D67A78 /* FSCNMessage.m */; }; + EDC2CA481A1AA50D00942777 /* FSCNSuper.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F72237E0D870C6A00394C99 /* FSCNSuper.m */; }; + EDC2CA491A1AA50D00942777 /* FSCNUnaryMessage.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F2E341F0D8DB61C00912543 /* FSCNUnaryMessage.m */; }; + EDC2CA4A1A1AA50D00942777 /* FSCNBinaryMessage.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F2E34320D8DBF6A00912543 /* FSCNBinaryMessage.m */; }; + EDC2CA4B1A1AA50D00942777 /* FSCNKeywordMessage.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F2E343B0D8DBFE700912543 /* FSCNKeywordMessage.m */; }; + EDC2CA4C1A1AA50D00942777 /* FSCNCascade.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F5900140D9468FC003A8B17 /* FSCNCascade.m */; }; + EDC2CA4D1A1AA50D00942777 /* FSCNStatementList.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F8F58650D9FE6A900ED0FED /* FSCNStatementList.m */; }; + EDC2CA4E1A1AA50D00942777 /* FSCNPrecomputedObject.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F747DA80DA03AE200148342 /* FSCNPrecomputedObject.m */; }; + EDC2CA4F1A1AA50D00942777 /* FSCNArray.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F747DB70DA0467100148342 /* FSCNArray.m */; }; + EDC2CA501A1AA50D00942777 /* FSCNBlock.m in Sources */ = {isa = PBXBuildFile; fileRef = 8FAE79AB0DA0ED5D00CB6E14 /* FSCNBlock.m */; }; + EDC2CA511A1AA50D00942777 /* FSCNAssignment.m in Sources */ = {isa = PBXBuildFile; fileRef = 8FAE79F20DA109C500CB6E14 /* FSCNAssignment.m */; }; + EDC2CA521A1AA50D00942777 /* FSCNMethod.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F45CBBE0DA813F200AFA8C8 /* FSCNMethod.m */; }; + EDC2CA531A1AA50D00942777 /* FSCNReturn.m in Sources */ = {isa = PBXBuildFile; fileRef = 8FD0A3130DD7276000E47459 /* FSCNReturn.m */; }; + EDC2CA541A1AA50D00942777 /* FSClassDefinition.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F8949D60DE08B110094EC14 /* FSClassDefinition.m */; }; + EDC2CA551A1AA50D00942777 /* FSTranscript.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F2DE65A0E57254700CF83CB /* FSTranscript.m */; }; + EDC2CA561A1AA50D00942777 /* FSArray.m in Sources */ = {isa = PBXBuildFile; fileRef = 8FE6AD900EC740650096019D /* FSArray.m */; }; + EDC2CA571A1AA50D00942777 /* Array.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F31A4C10EC74A2E00D1B8E8 /* Array.m */; }; + EDC2CA581A1AA50D00942777 /* Block.m in Sources */ = {isa = PBXBuildFile; fileRef = 8FCA00C20EEAF34300B10420 /* Block.m */; }; + EDC2CA591A1AA50D00942777 /* Number.m in Sources */ = {isa = PBXBuildFile; fileRef = 8FBB2FF10EEB3467007A3163 /* Number.m */; }; + EDC2CA5A1A1AA50D00942777 /* FSGlobalScope.m in Sources */ = {isa = PBXBuildFile; fileRef = 8FB9D5980F1CEE2100E10274 /* FSGlobalScope.m */; }; + EDC2CA5B1A1AA50D00942777 /* FSNSFileHandle.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F9D04180F1DF1CB001B8286 /* FSNSFileHandle.m */; }; + EDC2CA5C1A1AA50D00942777 /* FSAssociation.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F940B820F2393B0004525E1 /* FSAssociation.m */; }; + EDC2CA5D1A1AA50D00942777 /* FSCNDictionary.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F940C6F0F23BC2E004525E1 /* FSCNDictionary.m */; }; + EDC2CA5E1A1AA50D00942777 /* FSObjectBrowserBottomBarTextDisplay.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F7A712A0F48397C00E95364 /* FSObjectBrowserBottomBarTextDisplay.m */; }; + EDC2CA5F1A1AA50D00942777 /* FSNSAffineTransform.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F2D720A0F6BD9B100F0862A /* FSNSAffineTransform.m */; }; + EDC2CA601A1AA50D00942777 /* FSDemoAssistant.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F9636410F8DF69F00A70F39 /* FSDemoAssistant.m */; }; + EDC2CA611A1AA50D00942777 /* FSNewlyAllocatedObject.m in Sources */ = {isa = PBXBuildFile; fileRef = 8FCA593210883B0100F67841 /* FSNewlyAllocatedObject.m */; }; + EDC2CA621A1AA50D00942777 /* FSWorksWhenModalWindow.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F5EDA01109B384A003A2F4C /* FSWorksWhenModalWindow.m */; }; + EDC2CA631A1AA50D00942777 /* FSNSMutableDictionary.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F44270C116549C700E88F21 /* FSNSMutableDictionary.m */; }; + EDC2CA651A1AA50D00942777 /* Accelerate.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA223095189F9924002C5B6A /* Accelerate.framework */; }; + EDC2CA661A1AA50D00942777 /* Accounts.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = E2DBA31F161CA5D00035A675 /* Accounts.framework */; }; + EDC2CA671A1AA50D00942777 /* AddressBook.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA22309F189F9A14002C5B6A /* AddressBook.framework */; }; + EDC2CA681A1AA50D00942777 /* AGL.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA2230A0189F9A14002C5B6A /* AGL.framework */; }; + EDC2CA691A1AA50D00942777 /* AppKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA2230A1189F9A14002C5B6A /* AppKit.framework */; }; + EDC2CA6A1A1AA50D00942777 /* AppleScriptKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA2230A3189F9A14002C5B6A /* AppleScriptKit.framework */; }; + EDC2CA6B1A1AA50D00942777 /* AppleScriptObjC.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA2230A4189F9A14002C5B6A /* AppleScriptObjC.framework */; }; + EDC2CA6C1A1AA50D00942777 /* ApplicationServices.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA2230A6189F9A14002C5B6A /* ApplicationServices.framework */; }; + EDC2CA6D1A1AA50D00942777 /* AudioToolbox.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA223097189F9958002C5B6A /* AudioToolbox.framework */; }; + EDC2CA6E1A1AA50D00942777 /* AudioUnit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA2230A7189F9A14002C5B6A /* AudioUnit.framework */; }; + EDC2CA6F1A1AA50D00942777 /* AudioVideoBridging.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = E2DBA321161CA60C0035A675 /* AudioVideoBridging.framework */; }; + EDC2CA701A1AA50D00942777 /* Automator.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA2230A8189F9A14002C5B6A /* Automator.framework */; }; + EDC2CA711A1AA50D00942777 /* AVFoundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = E2DBA32D161CA7180035A675 /* AVFoundation.framework */; }; + EDC2CA721A1AA50D00942777 /* AVKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA223099189F9976002C5B6A /* AVKit.framework */; }; + EDC2CA731A1AA50D00942777 /* CalendarStore.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA2230B3189F9A2E002C5B6A /* CalendarStore.framework */; }; + EDC2CA741A1AA50D00942777 /* Carbon.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA2230B4189F9A2E002C5B6A /* Carbon.framework */; }; + EDC2CA751A1AA50D00942777 /* CFNetwork.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA2230B5189F9A2E002C5B6A /* CFNetwork.framework */; }; + EDC2CA761A1AA50D00942777 /* Cocoa.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA2230B6189F9A2E002C5B6A /* Cocoa.framework */; }; + EDC2CA771A1AA50D00942777 /* Collaboration.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA2230B7189F9A2E002C5B6A /* Collaboration.framework */; }; + EDC2CA781A1AA50D00942777 /* CoreAudio.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA22309B189F9988002C5B6A /* CoreAudio.framework */; }; + EDC2CA791A1AA50D00942777 /* CoreAudioKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA2230B8189F9A2F002C5B6A /* CoreAudioKit.framework */; }; + EDC2CA7A1A1AA50D00942777 /* CoreData.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA2230B9189F9A2F002C5B6A /* CoreData.framework */; }; + EDC2CA7B1A1AA50D00942777 /* CoreFoundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA2230BA189F9A2F002C5B6A /* CoreFoundation.framework */; }; + EDC2CA7C1A1AA50D00942777 /* CoreGraphics.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA2230BB189F9A2F002C5B6A /* CoreGraphics.framework */; }; + EDC2CA7D1A1AA50D00942777 /* CoreLocation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA22309D189F99CC002C5B6A /* CoreLocation.framework */; }; + EDC2CA7E1A1AA50D00942777 /* CoreMedia.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA2230BC189F9A2F002C5B6A /* CoreMedia.framework */; }; + EDC2CA7F1A1AA50D00942777 /* CoreMediaIO.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA2230BD189F9A2F002C5B6A /* CoreMediaIO.framework */; }; + EDC2CA801A1AA50D00942777 /* CoreMIDI.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA2230BE189F9A2F002C5B6A /* CoreMIDI.framework */; }; + EDC2CA811A1AA50D00942777 /* CoreServices.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA2230BF189F9A2F002C5B6A /* CoreServices.framework */; }; + EDC2CA821A1AA50D00942777 /* CoreText.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA2230C0189F9A2F002C5B6A /* CoreText.framework */; }; + EDC2CA831A1AA50D00942777 /* CoreVideo.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA2230C1189F9A2F002C5B6A /* CoreVideo.framework */; }; + EDC2CA841A1AA50D00942777 /* CoreWLAN.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA2230C2189F9A2F002C5B6A /* CoreWLAN.framework */; }; + EDC2CA851A1AA50D00942777 /* DirectoryService.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA2230D3189F9A7A002C5B6A /* DirectoryService.framework */; }; + EDC2CA861A1AA50D00942777 /* DiscRecording.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA2230D4189F9A7A002C5B6A /* DiscRecording.framework */; }; + EDC2CA871A1AA50D00942777 /* DiscRecordingUI.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA2230D5189F9A7A002C5B6A /* DiscRecordingUI.framework */; }; + EDC2CA881A1AA50D00942777 /* DiskArbitration.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA2230D6189F9A7A002C5B6A /* DiskArbitration.framework */; }; + EDC2CA891A1AA50D00942777 /* DVDPlayback.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA2230D9189F9A7A002C5B6A /* DVDPlayback.framework */; }; + EDC2CA8A1A1AA50D00942777 /* EventKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = E2DBA31C161CA57C0035A675 /* EventKit.framework */; }; + EDC2CA8B1A1AA50D00942777 /* ExceptionHandling.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA22316F189F9AD3002C5B6A /* ExceptionHandling.framework */; }; + EDC2CA8C1A1AA50D00942777 /* ForceFeedback.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA223170189F9AD3002C5B6A /* ForceFeedback.framework */; }; + EDC2CA8D1A1AA50D00942777 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA223171189F9AD3002C5B6A /* Foundation.framework */; }; + EDC2CA8E1A1AA50D00942777 /* FWAUserLib.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA223172189F9AD3002C5B6A /* FWAUserLib.framework */; }; + EDC2CA8F1A1AA50D00942777 /* GameController.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA223173189F9AD3002C5B6A /* GameController.framework */; }; + EDC2CA901A1AA50D00942777 /* GameKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = E2DBA323161CA6270035A675 /* GameKit.framework */; }; + EDC2CA911A1AA50D00942777 /* GLUT.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA223147189F9AC5002C5B6A /* GLUT.framework */; }; + EDC2CA921A1AA50D00942777 /* GSS.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA223148189F9AC5002C5B6A /* GSS.framework */; }; + EDC2CA931A1AA50D00942777 /* ICADevices.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA223149189F9AC6002C5B6A /* ICADevices.framework */; }; + EDC2CA941A1AA50D00942777 /* ImageCaptureCore.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA22314A189F9AC6002C5B6A /* ImageCaptureCore.framework */; }; + EDC2CA951A1AA50D00942777 /* ImageIO.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA22314B189F9AC6002C5B6A /* ImageIO.framework */; }; + EDC2CA961A1AA50D00942777 /* IMServicePlugIn.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA22314C189F9AC6002C5B6A /* IMServicePlugIn.framework */; }; + EDC2CA971A1AA50D00942777 /* InputMethodKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA22314D189F9AC6002C5B6A /* InputMethodKit.framework */; }; + EDC2CA981A1AA50D00942777 /* InstallerPlugins.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA22314E189F9AC6002C5B6A /* InstallerPlugins.framework */; }; + EDC2CA991A1AA50D00942777 /* InstantMessage.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA22314F189F9AC6002C5B6A /* InstantMessage.framework */; }; + EDC2CA9A1A1AA50D00942777 /* IOBluetooth.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA223150189F9AC6002C5B6A /* IOBluetooth.framework */; }; + EDC2CA9B1A1AA50D00942777 /* IOBluetoothUI.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA223151189F9AC6002C5B6A /* IOBluetoothUI.framework */; }; + EDC2CA9C1A1AA50D00942777 /* IOKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA223152189F9AC6002C5B6A /* IOKit.framework */; }; + EDC2CA9D1A1AA50D00942777 /* IOSurface.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA223153189F9AC6002C5B6A /* IOSurface.framework */; }; + EDC2CA9F1A1AA50D00942777 /* JavaScriptCore.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA223155189F9AC6002C5B6A /* JavaScriptCore.framework */; }; + EDC2CAA11A1AA50D00942777 /* Kerberos.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA223157189F9AC6002C5B6A /* Kerberos.framework */; }; + EDC2CAA21A1AA50D00942777 /* LatentSemanticMapping.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA223159189F9AC7002C5B6A /* LatentSemanticMapping.framework */; }; + EDC2CAA31A1AA50D00942777 /* GLKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = E2DBA325161CA64B0035A675 /* GLKit.framework */; }; + EDC2CAA41A1AA50D00942777 /* LDAP.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA223144189F9ABD002C5B6A /* LDAP.framework */; }; + EDC2CAA51A1AA50D00942777 /* MapKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA2230F4189F9A99002C5B6A /* MapKit.framework */; }; + EDC2CAA61A1AA50D00942777 /* MediaAccessibility.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA2230F5189F9A99002C5B6A /* MediaAccessibility.framework */; }; + EDC2CAA71A1AA50D00942777 /* MediaLibrary.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA2230F6189F9A99002C5B6A /* MediaLibrary.framework */; }; + EDC2CAA81A1AA50D00942777 /* MediaToolbox.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA2230F7189F9A99002C5B6A /* MediaToolbox.framework */; }; + EDC2CAA91A1AA50D00942777 /* NetFS.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA2230F8189F9A99002C5B6A /* NetFS.framework */; }; + EDC2CAAA1A1AA50D00942777 /* OpenAL.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA2230F9189F9A99002C5B6A /* OpenAL.framework */; }; + EDC2CAAB1A1AA50D00942777 /* OpenCL.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA2230FA189F9A99002C5B6A /* OpenCL.framework */; }; + EDC2CAAC1A1AA50D00942777 /* OpenDirectory.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA2230FB189F9A99002C5B6A /* OpenDirectory.framework */; }; + EDC2CAAD1A1AA50D00942777 /* OpenGL.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA2230FC189F9A99002C5B6A /* OpenGL.framework */; }; + EDC2CAAE1A1AA50D00942777 /* OSAKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA2230FD189F9A99002C5B6A /* OSAKit.framework */; }; + EDC2CAAF1A1AA50D00942777 /* PCSC.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA2230FE189F9A99002C5B6A /* PCSC.framework */; }; + EDC2CAB01A1AA50D00942777 /* PreferencePanes.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA2230FF189F9A99002C5B6A /* PreferencePanes.framework */; }; + EDC2CAB11A1AA50D00942777 /* PubSub.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA223100189F9A99002C5B6A /* PubSub.framework */; }; + EDC2CAB21A1AA50D00942777 /* QTKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA223101189F9A99002C5B6A /* QTKit.framework */; }; + EDC2CAB31A1AA50D00942777 /* Quartz.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA223102189F9A99002C5B6A /* Quartz.framework */; }; + EDC2CAB41A1AA50D00942777 /* QuartzCore.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA223103189F9A99002C5B6A /* QuartzCore.framework */; }; + EDC2CAB51A1AA50D00942777 /* QuickLook.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA223104189F9A99002C5B6A /* QuickLook.framework */; }; + EDC2CAB61A1AA50D00942777 /* Ruby.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA223106189F9A9A002C5B6A /* Ruby.framework */; }; + EDC2CAB71A1AA50D00942777 /* ScreenSaver.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA223108189F9A9A002C5B6A /* ScreenSaver.framework */; }; + EDC2CAB81A1AA50D00942777 /* ScriptingBridge.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA22310A189F9A9A002C5B6A /* ScriptingBridge.framework */; }; + EDC2CAB91A1AA50D00942777 /* Security.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA22310B189F9A9A002C5B6A /* Security.framework */; }; + EDC2CABA1A1AA50D00942777 /* SecurityFoundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA22310C189F9A9A002C5B6A /* SecurityFoundation.framework */; }; + EDC2CABB1A1AA50D00942777 /* SecurityInterface.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA22310D189F9A9A002C5B6A /* SecurityInterface.framework */; }; + EDC2CABC1A1AA50D00942777 /* ServiceManagement.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA22310E189F9A9A002C5B6A /* ServiceManagement.framework */; }; + EDC2CABD1A1AA50D00942777 /* SpriteKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA22310F189F9A9A002C5B6A /* SpriteKit.framework */; }; + EDC2CABE1A1AA50D00942777 /* StoreKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA223110189F9A9A002C5B6A /* StoreKit.framework */; }; + EDC2CABF1A1AA50D00942777 /* SyncServices.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA223111189F9A9A002C5B6A /* SyncServices.framework */; }; + EDC2CAC01A1AA50D00942777 /* SystemConfiguration.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA223112189F9A9A002C5B6A /* SystemConfiguration.framework */; }; + EDC2CAC11A1AA50D00942777 /* Tcl.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA223113189F9A9A002C5B6A /* Tcl.framework */; }; + EDC2CAC21A1AA50D00942777 /* Tk.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA223114189F9A9A002C5B6A /* Tk.framework */; }; + EDC2CAC31A1AA50D00942777 /* TWAIN.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA223115189F9A9A002C5B6A /* TWAIN.framework */; }; + EDC2CAC41A1AA50D00942777 /* VideoDecodeAcceleration.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA223116189F9A9A002C5B6A /* VideoDecodeAcceleration.framework */; }; + EDC2CAC51A1AA50D00942777 /* WebKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA223117189F9A9A002C5B6A /* WebKit.framework */; }; + EDC2CAC61A1AA50D00942777 /* SceneKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = E2DBA327161CA65A0035A675 /* SceneKit.framework */; }; + EDC2CAC71A1AA50D00942777 /* Social.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = E2DBA329161CA6600035A675 /* Social.framework */; }; + EDC2CAC81A1AA50D00942777 /* VideoToolbox.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = E2DBA32B161CA6660035A675 /* VideoToolbox.framework */; }; + EDC2CAD11A1AA52500942777 /* BlockSignature.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E32E00D7DFE17BE9C1BD /* BlockSignature.h */; settings = {ATTRIBUTES = (Public, ); }; }; + EDC2CAD21A1AA52500942777 /* FSAirplane.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E30F00D7DFE17BE9C1BD /* FSAirplane.h */; settings = {ATTRIBUTES = (Public, ); }; }; + EDC2CAD31A1AA52500942777 /* ArrayPrivate.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E31300D7DFE17BE9C1BD /* ArrayPrivate.h */; }; + EDC2CAD41A1AA52500942777 /* ArrayRep.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E31400D7DFE17BE9C1BD /* ArrayRep.h */; settings = {ATTRIBUTES = (); }; }; + EDC2CAD51A1AA52500942777 /* ArrayRepDouble.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E31700D7DFE17BE9C1BD /* ArrayRepDouble.h */; }; + EDC2CAD61A1AA52500942777 /* ArrayRepEmpty.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E31900D7DFE17BE9C1BD /* ArrayRepEmpty.h */; }; + EDC2CAD71A1AA52500942777 /* ArrayRepId.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E31B00D7DFE17BE9C1BD /* ArrayRepId.h */; }; + EDC2CAD81A1AA52500942777 /* FSCollectionInspector.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E31D00D7DFE17BE9C1BD /* FSCollectionInspector.h */; }; + EDC2CAD91A1AA52500942777 /* FSObjectBrowser.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E32000D7DFE17BE9C1BD /* FSObjectBrowser.h */; }; + EDC2CADA1A1AA52500942777 /* FSObjectBrowserCell.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E32200D7DFE17BE9C1BD /* FSObjectBrowserCell.h */; }; + EDC2CADB1A1AA52500942777 /* FSObjectInspectorViewModelItem.h in Headers */ = {isa = PBXBuildFile; fileRef = ED8222D41A194FD600C42C72 /* FSObjectInspectorViewModelItem.h */; }; + EDC2CADC1A1AA52500942777 /* FSBlock.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E32600D7DFE17BE9C1BD /* FSBlock.h */; settings = {ATTRIBUTES = (Public, ); }; }; + EDC2CADD1A1AA52500942777 /* BlockInspector.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E32800D7DFE17BE9C1BD /* BlockInspector.h */; }; + EDC2CADE1A1AA52500942777 /* BlockPrivate.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E32B00D7DFE17BE9C1BD /* BlockPrivate.h */; }; + EDC2CADF1A1AA52500942777 /* BlockRep.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E32C00D7DFE17BE9C1BD /* BlockRep.h */; }; + EDC2CAE01A1AA52500942777 /* BlockStackElem.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E32F00D7DFE17BE9C1BD /* BlockStackElem.h */; }; + EDC2CAE11A1AA52500942777 /* build_config.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E33200D7DFE17BE9C1BD /* build_config.h */; settings = {ATTRIBUTES = (); }; }; + EDC2CAE21A1AA52500942777 /* FSDetailedObjectInspector.h in Headers */ = {isa = PBXBuildFile; fileRef = EDC2C8DC1A1A943600942777 /* FSDetailedObjectInspector.h */; }; + EDC2CAE31A1AA52500942777 /* CLIView.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E33300D7DFE17BE9C1BD /* CLIView.h */; }; + EDC2CAE41A1AA52500942777 /* FSCompilationResult.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E33500D7DFE17BE9C1BD /* FSCompilationResult.h */; }; + EDC2CAE51A1AA52500942777 /* CompiledCodeNode.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E33700D7DFE17BE9C1BD /* CompiledCodeNode.h */; }; + EDC2CAE61A1AA52500942777 /* FSCompiler.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E33900D7DFE17BE9C1BD /* FSCompiler.h */; }; + EDC2CAE71A1AA52500942777 /* FSConstantsInitialization.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E33B00D7DFE17BE9C1BD /* FSConstantsInitialization.h */; }; + EDC2CAE81A1AA52500942777 /* FSExecEngine.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E33D00D7DFE17BE9C1BD /* FSExecEngine.h */; }; + EDC2CAE91A1AA52500942777 /* FSExecutor.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E33F00D7DFE17BE9C1BD /* FSExecutor.h */; }; + EDC2CAEA1A1AA52500942777 /* FSFlight.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E34200D7DFE17BE9C1BD /* FSFlight.h */; settings = {ATTRIBUTES = (Public, ); }; }; + EDC2CAEB1A1AA52500942777 /* FSArchiver.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E34500D7DFE17BE9C1BD /* FSArchiver.h */; }; + EDC2CAEC1A1AA52500942777 /* FSBoolean.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E34700D7DFE17BE9C1BD /* FSBoolean.h */; settings = {ATTRIBUTES = (Public, ); }; }; + EDC2CAED1A1AA52500942777 /* FSBooleanPrivate.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E34900D7DFE17BE9C1BD /* FSBooleanPrivate.h */; }; + EDC2CAEE1A1AA52500942777 /* FScript.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E34C00D7DFE17BE9C1BD /* FScript.h */; settings = {ATTRIBUTES = (Public, ); }; }; + EDC2CAEF1A1AA52500942777 /* FScriptFunctions.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E34E00D7DFE17BE9C1BD /* FScriptFunctions.h */; settings = {ATTRIBUTES = (Public, ); }; }; + EDC2CAF01A1AA52500942777 /* FSInterpreter.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E35000D7DFE17BE9C1BD /* FSInterpreter.h */; settings = {ATTRIBUTES = (Public, ); }; }; + EDC2CAF11A1AA52500942777 /* FSInterpreterResult.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E35200D7DFE17BE9C1BD /* FSInterpreterResult.h */; settings = {ATTRIBUTES = (Public, ); }; }; + EDC2CAF21A1AA52500942777 /* FSInterpreterResultPrivate.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E35400D7DFE17BE9C1BD /* FSInterpreterResultPrivate.h */; }; + EDC2CAF31A1AA52500942777 /* FSInterpreterView.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E35500D7DFE17BE9C1BD /* FSInterpreterView.h */; settings = {ATTRIBUTES = (Public, ); }; }; + EDC2CAF41A1AA52500942777 /* FSInterpreterViewIBHeader.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E35700D7DFE17BE9C1BD /* FSInterpreterViewIBHeader.h */; }; + EDC2CAF51A1AA52500942777 /* FSNSArray.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E35800D7DFE17BE9C1BD /* FSNSArray.h */; settings = {ATTRIBUTES = (Public, ); }; }; + EDC2CAF61A1AA52500942777 /* FSNSArrayPrivate.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E35A00D7DFE17BE9C1BD /* FSNSArrayPrivate.h */; settings = {ATTRIBUTES = (); }; }; + EDC2CAF71A1AA52500942777 /* FSNSDate.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E35B00D7DFE17BE9C1BD /* FSNSDate.h */; settings = {ATTRIBUTES = (Public, ); }; }; + EDC2CAF81A1AA52500942777 /* FSNSDictionary.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E35D00D7DFE17BE9C1BD /* FSNSDictionary.h */; settings = {ATTRIBUTES = (Public, ); }; }; + EDC2CAF91A1AA52500942777 /* FSNSMutableString.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E35F00D7DFE17BE9C1BD /* FSNSMutableString.h */; settings = {ATTRIBUTES = (Public, ); }; }; + EDC2CAFA1A1AA52500942777 /* FSNSNumber.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E36100D7DFE17BE9C1BD /* FSNSNumber.h */; settings = {ATTRIBUTES = (Public, ); }; }; + EDC2CAFB1A1AA52500942777 /* FSNSObject.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E36300D7DFE17BE9C1BD /* FSNSObject.h */; settings = {ATTRIBUTES = (Public, ); }; }; + EDC2CAFC1A1AA52500942777 /* FSNSProxy.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E36500D7DFE17BE9C1BD /* FSNSProxy.h */; settings = {ATTRIBUTES = (Public, ); }; }; + EDC2CAFD1A1AA52500942777 /* FSNSString.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E36700D7DFE17BE9C1BD /* FSNSString.h */; settings = {ATTRIBUTES = (Public, ); }; }; + EDC2CAFE1A1AA52500942777 /* FSNSStringPrivate.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E36900D7DFE17BE9C1BD /* FSNSStringPrivate.h */; }; + EDC2CAFF1A1AA52500942777 /* FSPattern.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E36C00D7DFE17BE9C1BD /* FSPattern.h */; }; + EDC2CB001A1AA52500942777 /* FSUnarchiver.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E37200D7DFE17BE9C1BD /* FSUnarchiver.h */; }; + EDC2CB011A1AA52500942777 /* FSVoid.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E37400D7DFE17BE9C1BD /* FSVoid.h */; settings = {ATTRIBUTES = (Public, ); }; }; + EDC2CB021A1AA52500942777 /* FSVoidPrivate.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E37600D7DFE17BE9C1BD /* FSVoidPrivate.h */; }; + EDC2CB031A1AA52500942777 /* FSGenericObjectInspector.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E37700D7DFE17BE9C1BD /* FSGenericObjectInspector.h */; }; + EDC2CB041A1AA52500942777 /* MessagePatternCodeNode.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E37F00D7DFE17BE9C1BD /* MessagePatternCodeNode.h */; }; + EDC2CB051A1AA52500942777 /* FSMiscTools.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E38100D7DFE17BE9C1BD /* FSMiscTools.h */; }; + EDC2CB061A1AA52500942777 /* FSMsgContext.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E38300D7DFE17BE9C1BD /* FSMsgContext.h */; }; + EDC2CB071A1AA52500942777 /* FSNewlyAllocatedObjectHolder.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E38700D7DFE17BE9C1BD /* FSNewlyAllocatedObjectHolder.h */; }; + EDC2CB081A1AA52500942777 /* FSNumber.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E38D00D7DFE17BE9C1BD /* FSNumber.h */; settings = {ATTRIBUTES = (Public, ); }; }; + EDC2CB091A1AA52500942777 /* NumberPrivate.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E38F00D7DFE17BE9C1BD /* NumberPrivate.h */; }; + EDC2CB0A1A1AA52500942777 /* FSPilot.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E39000D7DFE17BE9C1BD /* FSPilot.h */; settings = {ATTRIBUTES = (Public, ); }; }; + EDC2CB0B1A1AA52500942777 /* Pointer.h in Headers */ = {isa = PBXBuildFile; fileRef = F505648002DF417501FE0326 /* Pointer.h */; settings = {ATTRIBUTES = (Public, ); }; }; + EDC2CB0C1A1AA52500942777 /* FSReplacementForCoderForClass.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E39400D7DFE17BE9C1BD /* FSReplacementForCoderForClass.h */; }; + EDC2CB0D1A1AA52500942777 /* FSObjectInspectorViewController.h in Headers */ = {isa = PBXBuildFile; fileRef = ED3004E51A1A86EF00675D94 /* FSObjectInspectorViewController.h */; }; + EDC2CB0E1A1AA52500942777 /* metamacros.h in Headers */ = {isa = PBXBuildFile; fileRef = EDFB302E1A18CA26002C8DD7 /* metamacros.h */; }; + EDC2CB0F1A1AA52500942777 /* ShellView.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E39600D7DFE17BE9C1BD /* ShellView.h */; }; + EDC2CB101A1AA52500942777 /* Space.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E39800D7DFE17BE9C1BD /* Space.h */; }; + EDC2CB111A1AA52500942777 /* FSCommandHistory.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E39A00D7DFE17BE9C1BD /* FSCommandHistory.h */; }; + EDC2CB121A1AA52500942777 /* FSSystem.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E39E00D7DFE17BE9C1BD /* FSSystem.h */; settings = {ATTRIBUTES = (Public, ); }; }; + EDC2CB131A1AA52500942777 /* KTestManager.h in Headers */ = {isa = PBXBuildFile; fileRef = 66029E580161E0650055708C /* KTestManager.h */; }; + EDC2CB141A1AA52500942777 /* FSNSDistantObject.h in Headers */ = {isa = PBXBuildFile; fileRef = F51CA01401B013C401BFBB24 /* FSNSDistantObject.h */; }; + EDC2CB151A1AA52500942777 /* DOTest.h in Headers */ = {isa = PBXBuildFile; fileRef = F5F13B4701C8BE3401CB6DF7 /* DOTest.h */; }; + EDC2CB161A1AA52500942777 /* FScriptTextView.h in Headers */ = {isa = PBXBuildFile; fileRef = F5FBEF2802149D32018C0134 /* FScriptTextView.h */; }; + EDC2CB171A1AA52500942777 /* FSObjectBrowserArgumentPanel.h in Headers */ = {isa = PBXBuildFile; fileRef = F5FA8A6C0215D44C01AFEEFD /* FSObjectBrowserArgumentPanel.h */; }; + EDC2CB181A1AA52500942777 /* FSNSProtocolChecker.h in Headers */ = {isa = PBXBuildFile; fileRef = F5F140590223CC9D01DD698C /* FSNSProtocolChecker.h */; }; + EDC2CB191A1AA52500942777 /* FSObjectBrowserToolbar.h in Headers */ = {isa = PBXBuildFile; fileRef = F538EF6C0279FD3C01345511 /* FSObjectBrowserToolbar.h */; }; + EDC2CB1A1A1AA52500942777 /* FSEvalCommand.h in Headers */ = {isa = PBXBuildFile; fileRef = F538EF700279FD3C01345511 /* FSEvalCommand.h */; }; + EDC2CB1B1A1AA52500942777 /* FSServicesProvider.h in Headers */ = {isa = PBXBuildFile; fileRef = F538EF7C0279FD3C01345511 /* FSServicesProvider.h */; settings = {ATTRIBUTES = (); }; }; + EDC2CB1C1A1AA52500942777 /* FSTask.h in Headers */ = {isa = PBXBuildFile; fileRef = F538EF7E0279FD3C01345511 /* FSTask.h */; settings = {ATTRIBUTES = (); }; }; + EDC2CB1D1A1AA52500942777 /* FSObjectBrowserToolbarButton.h in Headers */ = {isa = PBXBuildFile; fileRef = F5F0AD420285792F0103CD49 /* FSObjectBrowserToolbarButton.h */; }; + EDC2CB1E1A1AA52500942777 /* FSObjectBrowserButtonCtxBlock.h in Headers */ = {isa = PBXBuildFile; fileRef = F5F0261F02C243D20155CB83 /* FSObjectBrowserButtonCtxBlock.h */; }; + EDC2CB1F1A1AA52500942777 /* FSObjectBrowserButtonsInspector.h in Headers */ = {isa = PBXBuildFile; fileRef = F5F9569602B272FB0121B3BA /* FSObjectBrowserButtonsInspector.h */; }; + EDC2CB201A1AA52500942777 /* FSObjectBrowserView.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD4E32400D7DFE17BE9C1BD /* FSObjectBrowserView.h */; }; + EDC2CB211A1AA52500942777 /* PointerPrivate.h in Headers */ = {isa = PBXBuildFile; fileRef = F5F856C002EB281C01F7E6F0 /* PointerPrivate.h */; }; + EDC2CB221A1AA52500942777 /* FSInterpreterPrivate.h in Headers */ = {isa = PBXBuildFile; fileRef = F54CA17602FB2CAF01C25A35 /* FSInterpreterPrivate.h */; }; + EDC2CB231A1AA52500942777 /* FSObjectFormatter.h in Headers */ = {isa = PBXBuildFile; fileRef = F5EBBE820321029601CA10C6 /* FSObjectFormatter.h */; }; + EDC2CB241A1AA52500942777 /* FSIdentifierFormatter.h in Headers */ = {isa = PBXBuildFile; fileRef = F5073A2102FC5400013656B0 /* FSIdentifierFormatter.h */; }; + EDC2CB251A1AA52500942777 /* FSSystemPrivate.h in Headers */ = {isa = PBXBuildFile; fileRef = F5A25E260357B373011A39F8 /* FSSystemPrivate.h */; }; + EDC2CB261A1AA52500942777 /* FSKeyedUnarchiver.h in Headers */ = {isa = PBXBuildFile; fileRef = F55D44C40358A88801B9E934 /* FSKeyedUnarchiver.h */; }; + EDC2CB271A1AA52500942777 /* FSKeyedArchiver.h in Headers */ = {isa = PBXBuildFile; fileRef = F55D44CE0358B5D201B9E934 /* FSKeyedArchiver.h */; }; + EDC2CB281A1AA52500942777 /* FSConstantListBuilder.h in Headers */ = {isa = PBXBuildFile; fileRef = F52EECA6036210E2016141BB /* FSConstantListBuilder.h */; }; + EDC2CB291A1AA52500942777 /* FSImageInspector.h in Headers */ = {isa = PBXBuildFile; fileRef = F54B55B9036B45770140C608 /* FSImageInspector.h */; }; + EDC2CB2A1A1AA52500942777 /* FSNSImage.h in Headers */ = {isa = PBXBuildFile; fileRef = F54B55C8036B4A330140C608 /* FSNSImage.h */; settings = {ATTRIBUTES = (Public, ); }; }; + EDC2CB2B1A1AA52500942777 /* FSObjectBrowserToolbarItem.h in Headers */ = {isa = PBXBuildFile; fileRef = F58090CF03755FC701AED2EF /* FSObjectBrowserToolbarItem.h */; }; + EDC2CB2C1A1AA52500942777 /* ArrayRepBoolean.h in Headers */ = {isa = PBXBuildFile; fileRef = F5D4BE29038511FF01461810 /* ArrayRepBoolean.h */; }; + EDC2CB2D1A1AA52500942777 /* FSNSObjectPrivate.h in Headers */ = {isa = PBXBuildFile; fileRef = 8F63CC08044B95DB00B84480 /* FSNSObjectPrivate.h */; }; + EDC2CB2E1A1AA52500942777 /* FSArrayEnumerator.h in Headers */ = {isa = PBXBuildFile; fileRef = 8FA3AE55044D4D6700CF7A3A /* FSArrayEnumerator.h */; }; + EDC2CB301A1AA52500942777 /* TestFS.h in Headers */ = {isa = PBXBuildFile; fileRef = 8FBB10A4044E28FD00181279 /* TestFS.h */; }; + EDC2CB311A1AA52500942777 /* FSNSMutableArray.h in Headers */ = {isa = PBXBuildFile; fileRef = 8F66F85404666E8100AFC811 /* FSNSMutableArray.h */; settings = {ATTRIBUTES = (Public, ); }; }; + EDC2CB321A1AA52500942777 /* FSNSValue.h in Headers */ = {isa = PBXBuildFile; fileRef = 8F553BF70585222700A92293 /* FSNSValue.h */; settings = {ATTRIBUTES = (Public, ); }; }; + EDC2CB331A1AA52500942777 /* FSReplacementForCoderForNilInArray.h in Headers */ = {isa = PBXBuildFile; fileRef = 8F7D7DB7058E32CD00F1B8A8 /* FSReplacementForCoderForNilInArray.h */; }; + EDC2CB341A1AA52500942777 /* FSNamedNumber.h in Headers */ = {isa = PBXBuildFile; fileRef = 8F0E3B7E059F3DBB003F6CE9 /* FSNamedNumber.h */; }; + EDC2CB361A1AA52500942777 /* FSCollectionInspectorTableView.h in Headers */ = {isa = PBXBuildFile; fileRef = 8F60216E05A25CDC0004EFF1 /* FSCollectionInspectorTableView.h */; }; + EDC2CB371A1AA52500942777 /* FSNSSet.h in Headers */ = {isa = PBXBuildFile; fileRef = 8F60F24505A9FE8B00985FEC /* FSNSSet.h */; settings = {ATTRIBUTES = (Public, ); }; }; + EDC2CB391A1AA52500942777 /* FSAttributedStringInspector.h in Headers */ = {isa = PBXBuildFile; fileRef = 8FDCCD4E05C09F8200747C0A /* FSAttributedStringInspector.h */; }; + EDC2CB3A1A1AA52500942777 /* FSNSAttributedString.h in Headers */ = {isa = PBXBuildFile; fileRef = 8FDCCDBF05C0A23000747C0A /* FSNSAttributedString.h */; settings = {ATTRIBUTES = (Public, ); }; }; + EDC2CB3B1A1AA52500942777 /* FSInterpreterViewPrivate.h in Headers */ = {isa = PBXBuildFile; fileRef = 8F71F72205C43A7D00C34794 /* FSInterpreterViewPrivate.h */; }; + EDC2CB3C1A1AA52500942777 /* FScriptMenuItem.h in Headers */ = {isa = PBXBuildFile; fileRef = 8F0B66FB05C5639E0099180D /* FScriptMenuItem.h */; settings = {ATTRIBUTES = (Public, ); }; }; + EDC2CB3D1A1AA52500942777 /* FSNSFont.h in Headers */ = {isa = PBXBuildFile; fileRef = 8F658B2705C9694F0040FB24 /* FSNSFont.h */; settings = {ATTRIBUTES = (Public, ); }; }; + EDC2CB3E1A1AA52500942777 /* FSObjectBrowserMatrix.h in Headers */ = {isa = PBXBuildFile; fileRef = 8FB505FF05D53C8600153B33 /* FSObjectBrowserMatrix.h */; }; + EDC2CB3F1A1AA52500942777 /* FSSymbolTable.h in Headers */ = {isa = PBXBuildFile; fileRef = 8F17C07D06B1309C00F07862 /* FSSymbolTable.h */; }; + EDC2CB401A1AA52500942777 /* FSObjectBrowserViewObjectInfo.h in Headers */ = {isa = PBXBuildFile; fileRef = 8F4E294C075B8E5600F8DCDB /* FSObjectBrowserViewObjectInfo.h */; }; + EDC2CB411A1AA52500942777 /* FSCollectionInspectorView.h in Headers */ = {isa = PBXBuildFile; fileRef = 8FA8EDC607735B3B001BEC7B /* FSCollectionInspectorView.h */; }; + EDC2CB421A1AA52500942777 /* ArrayRepFetchRequest.h in Headers */ = {isa = PBXBuildFile; fileRef = 8FBC2877077B7D5200F9B4A2 /* ArrayRepFetchRequest.h */; }; + EDC2CB431A1AA52500942777 /* FSPointer.h in Headers */ = {isa = PBXBuildFile; fileRef = 8F8EA70B077F6A5200AC1C96 /* FSPointer.h */; settings = {ATTRIBUTES = (Public, ); }; }; + EDC2CB441A1AA52500942777 /* FSGenericPointer.h in Headers */ = {isa = PBXBuildFile; fileRef = 8F8EA779077F6C9300AC1C96 /* FSGenericPointer.h */; settings = {ATTRIBUTES = (Public, ); }; }; + EDC2CB451A1AA52500942777 /* FSPointerPrivate.h in Headers */ = {isa = PBXBuildFile; fileRef = 8F8EA7E8077F719800AC1C96 /* FSPointerPrivate.h */; }; + EDC2CB461A1AA52500942777 /* FSGenericPointerPrivate.h in Headers */ = {isa = PBXBuildFile; fileRef = 8F8EA841077F79A000AC1C96 /* FSGenericPointerPrivate.h */; }; + EDC2CB471A1AA52500942777 /* FSObjectPointer.h in Headers */ = {isa = PBXBuildFile; fileRef = 8FE9AE12078071CC005B2CC4 /* FSObjectPointer.h */; settings = {ATTRIBUTES = (Public, ); }; }; + EDC2CB481A1AA52500942777 /* FSObjectPointerPrivate.h in Headers */ = {isa = PBXBuildFile; fileRef = 8FE9AE8207807269005B2CC4 /* FSObjectPointerPrivate.h */; }; + EDC2CB491A1AA52500942777 /* FSObjectBrowserNamedObjectWrapper.h in Headers */ = {isa = PBXBuildFile; fileRef = 8F86923607F19BA8000D20A4 /* FSObjectBrowserNamedObjectWrapper.h */; }; + EDC2CB4A1A1AA52500942777 /* FSInspectorUniquier.h in Headers */ = {isa = PBXBuildFile; fileRef = 8F7F4F9C07FB274C008E42F4 /* FSInspectorUniquier.h */; }; + EDC2CB4B1A1AA52500942777 /* FSPredicateTextView.h in Headers */ = {isa = PBXBuildFile; fileRef = 8F95E3C108034A670030B65C /* FSPredicateTextView.h */; }; + EDC2CB4C1A1AA52500942777 /* FSCoreDataSample.h in Headers */ = {isa = PBXBuildFile; fileRef = 8FE7E0E6082AD964008231E8 /* FSCoreDataSample.h */; }; + EDC2CB4D1A1AA52500942777 /* FSManagedObjectContextInspector.h in Headers */ = {isa = PBXBuildFile; fileRef = 8F37AEC2078B7E900083565D /* FSManagedObjectContextInspector.h */; }; + EDC2CB4E1A1AA52500942777 /* FSObjectInspectorBackgroundView.h in Headers */ = {isa = PBXBuildFile; fileRef = EDC2C8EE1A1AA34D00942777 /* FSObjectInspectorBackgroundView.h */; }; + EDC2CB4F1A1AA52500942777 /* FSNSManagedObjectContext.h in Headers */ = {isa = PBXBuildFile; fileRef = 8F5189E707F072EA00A50735 /* FSNSManagedObjectContext.h */; settings = {ATTRIBUTES = (Public, ); }; }; + EDC2CB501A1AA52500942777 /* FSObjectBrowserSearchField.h in Headers */ = {isa = PBXBuildFile; fileRef = 8F585F6E059B23F100C12B6F /* FSObjectBrowserSearchField.h */; }; + EDC2CB511A1AA52500942777 /* FSBlockCompilationResult.h in Headers */ = {isa = PBXBuildFile; fileRef = 8F90A2EF096DB0660064F4BC /* FSBlockCompilationResult.h */; }; + EDC2CB521A1AA52500942777 /* FSObjectEnumInfo.h in Headers */ = {isa = PBXBuildFile; fileRef = ED8222E51A19554F00C42C72 /* FSObjectEnumInfo.h */; }; + EDC2CB531A1AA52500942777 /* FSReturnSignal.h in Headers */ = {isa = PBXBuildFile; fileRef = 8FD7D4A60975B377009B2685 /* FSReturnSignal.h */; }; + EDC2CB541A1AA52500942777 /* FSMethod.h in Headers */ = {isa = PBXBuildFile; fileRef = 8F3C13980C65E66400948776 /* FSMethod.h */; }; + EDC2CB551A1AA52500942777 /* FSCNClassDefinition.h in Headers */ = {isa = PBXBuildFile; fileRef = 8F5AD3200D05CFFE000CEAC6 /* FSCNClassDefinition.h */; }; + EDC2CB561A1AA52500942777 /* FSCNBase.h in Headers */ = {isa = PBXBuildFile; fileRef = 8FE6397E0D09C0F400255EBA /* FSCNBase.h */; }; + EDC2CB571A1AA52500942777 /* FSCNIdentifier.h in Headers */ = {isa = PBXBuildFile; fileRef = 8FE6398E0D09DCB600255EBA /* FSCNIdentifier.h */; }; + EDC2CB581A1AA52500942777 /* FSTestObjCClass1.h in Headers */ = {isa = PBXBuildFile; fileRef = 8FE3DD200D26D49900A1D767 /* FSTestObjCClass1.h */; }; + EDC2CB591A1AA52500942777 /* FSTestObjCClass2.h in Headers */ = {isa = PBXBuildFile; fileRef = 8F4822020D2C317700754A4E /* FSTestObjCClass2.h */; }; + EDC2CB5A1A1AA52500942777 /* FSCNCategory.h in Headers */ = {isa = PBXBuildFile; fileRef = 8F8112F00D85E58200CB3407 /* FSCNCategory.h */; }; + EDC2CB5B1A1AA52500942777 /* FSCNMessage.h in Headers */ = {isa = PBXBuildFile; fileRef = 8F59CA6F0D86DD0800D67A78 /* FSCNMessage.h */; }; + EDC2CB5C1A1AA52500942777 /* FSCNSuper.h in Headers */ = {isa = PBXBuildFile; fileRef = 8F72237D0D870C6A00394C99 /* FSCNSuper.h */; }; + EDC2CB5D1A1AA52500942777 /* FSCNUnaryMessage.h in Headers */ = {isa = PBXBuildFile; fileRef = 8F2E341E0D8DB61C00912543 /* FSCNUnaryMessage.h */; }; + EDC2CB5E1A1AA52500942777 /* FSCNBinaryMessage.h in Headers */ = {isa = PBXBuildFile; fileRef = 8F2E34310D8DBF6A00912543 /* FSCNBinaryMessage.h */; }; + EDC2CB5F1A1AA52500942777 /* FSCNKeywordMessage.h in Headers */ = {isa = PBXBuildFile; fileRef = 8F2E343A0D8DBFE700912543 /* FSCNKeywordMessage.h */; }; + EDC2CB601A1AA52500942777 /* FSCNCascade.h in Headers */ = {isa = PBXBuildFile; fileRef = 8F5900130D9468FC003A8B17 /* FSCNCascade.h */; }; + EDC2CB611A1AA52500942777 /* FSCNStatementList.h in Headers */ = {isa = PBXBuildFile; fileRef = 8F8F58640D9FE6A900ED0FED /* FSCNStatementList.h */; }; + EDC2CB621A1AA52500942777 /* FSCNPrecomputedObject.h in Headers */ = {isa = PBXBuildFile; fileRef = 8F747DA70DA03AE200148342 /* FSCNPrecomputedObject.h */; }; + EDC2CB631A1AA52500942777 /* FSCNArray.h in Headers */ = {isa = PBXBuildFile; fileRef = 8F747DB60DA0467100148342 /* FSCNArray.h */; }; + EDC2CB641A1AA52500942777 /* FSCNBlock.h in Headers */ = {isa = PBXBuildFile; fileRef = 8FAE79AA0DA0ED5D00CB6E14 /* FSCNBlock.h */; }; + EDC2CB651A1AA52500942777 /* FSCNAssignment.h in Headers */ = {isa = PBXBuildFile; fileRef = 8FAE79F10DA109C500CB6E14 /* FSCNAssignment.h */; }; + EDC2CB661A1AA52500942777 /* FSCNMethod.h in Headers */ = {isa = PBXBuildFile; fileRef = 8F45CBBD0DA813F200AFA8C8 /* FSCNMethod.h */; }; + EDC2CB671A1AA52500942777 /* FSCNReturn.h in Headers */ = {isa = PBXBuildFile; fileRef = 8FD0A3120DD7276000E47459 /* FSCNReturn.h */; }; + EDC2CB681A1AA52500942777 /* FSClassDefinition.h in Headers */ = {isa = PBXBuildFile; fileRef = 8F8949D50DE08B110094EC14 /* FSClassDefinition.h */; }; + EDC2CB691A1AA52500942777 /* FSTranscript.h in Headers */ = {isa = PBXBuildFile; fileRef = 8F2DE6590E57254700CF83CB /* FSTranscript.h */; }; + EDC2CB6A1A1AA52500942777 /* FSArray.h in Headers */ = {isa = PBXBuildFile; fileRef = 8FE6AD8F0EC740650096019D /* FSArray.h */; settings = {ATTRIBUTES = (Public, ); }; }; + EDC2CB6B1A1AA52500942777 /* Array_fscript.h in Headers */ = {isa = PBXBuildFile; fileRef = 8F31A4C00EC74A2E00D1B8E8 /* Array_fscript.h */; settings = {ATTRIBUTES = (Public, ); }; }; + EDC2CB6C1A1AA52500942777 /* Block_fscript.h in Headers */ = {isa = PBXBuildFile; fileRef = 8FCA00C10EEAF34300B10420 /* Block_fscript.h */; settings = {ATTRIBUTES = (Public, ); }; }; + EDC2CB6D1A1AA52500942777 /* Number_fscript.h in Headers */ = {isa = PBXBuildFile; fileRef = 8FBB2FF00EEB3467007A3163 /* Number_fscript.h */; settings = {ATTRIBUTES = (Public, ); }; }; + EDC2CB6E1A1AA52500942777 /* FSGlobalScope.h in Headers */ = {isa = PBXBuildFile; fileRef = 8FB9D5970F1CEE2100E10274 /* FSGlobalScope.h */; }; + EDC2CB6F1A1AA52500942777 /* FSNSFileHandle.h in Headers */ = {isa = PBXBuildFile; fileRef = 8F9D04170F1DF1CB001B8286 /* FSNSFileHandle.h */; settings = {ATTRIBUTES = (); }; }; + EDC2CB701A1AA52500942777 /* FSAssociation.h in Headers */ = {isa = PBXBuildFile; fileRef = 8F940B810F2393B0004525E1 /* FSAssociation.h */; settings = {ATTRIBUTES = (Public, ); }; }; + EDC2CB711A1AA52500942777 /* FSCNDictionary.h in Headers */ = {isa = PBXBuildFile; fileRef = 8F940C6E0F23BC2E004525E1 /* FSCNDictionary.h */; }; + EDC2CB721A1AA52500942777 /* FSObjectBrowserBottomBarTextDisplay.h in Headers */ = {isa = PBXBuildFile; fileRef = 8F7A71290F48397C00E95364 /* FSObjectBrowserBottomBarTextDisplay.h */; }; + EDC2CB731A1AA52500942777 /* FSNSAffineTransform.h in Headers */ = {isa = PBXBuildFile; fileRef = 8F2D72090F6BD9B100F0862A /* FSNSAffineTransform.h */; settings = {ATTRIBUTES = (Public, ); }; }; + EDC2CB741A1AA52500942777 /* FSNewlyAllocatedObject.h in Headers */ = {isa = PBXBuildFile; fileRef = 8FCA593110883B0100F67841 /* FSNewlyAllocatedObject.h */; }; + EDC2CB751A1AA52500942777 /* FSWorksWhenModalWindow.h in Headers */ = {isa = PBXBuildFile; fileRef = 8F5EDA00109B384A003A2F4C /* FSWorksWhenModalWindow.h */; }; + EDC2CB761A1AA52500942777 /* FSNSMutableDictionary.h in Headers */ = {isa = PBXBuildFile; fileRef = 8F44270B116549C700E88F21 /* FSNSMutableDictionary.h */; settings = {ATTRIBUTES = (Public, ); }; }; + EDC2CB781A1AA52500942777 /* FSConsole.xib in Resources */ = {isa = PBXBuildFile; fileRef = EDE508D119DD4D310012F16A /* FSConsole.xib */; }; + EDC2CB791A1AA52500942777 /* FSObjectInspectorViewController.xib in Resources */ = {isa = PBXBuildFile; fileRef = ED3004E71A1A86EF00675D94 /* FSObjectInspectorViewController.xib */; }; + EDC2CB7C1A1AA52500942777 /* FlightTutorial.txt in Resources */ = {isa = PBXBuildFile; fileRef = 0CD4E34400D7DFE17BE9C1BD /* FlightTutorial.txt */; }; + EDC2CB7D1A1AA52500942777 /* genObjInspector.nib in Resources */ = {isa = PBXBuildFile; fileRef = 0CD4E37900D7DFE17BE9C1BD /* genObjInspector.nib */; }; + EDC2CB7E1A1AA52500942777 /* FScriptPreferences.xib in Resources */ = {isa = PBXBuildFile; fileRef = EDE508DA19DD4FDC0012F16A /* FScriptPreferences.xib */; }; + EDC2CB7F1A1AA52500942777 /* KTest.txt in Resources */ = {isa = PBXBuildFile; fileRef = 0CD4E37D00D7DFE17BE9C1BD /* KTest.txt */; }; + EDC2CB801A1AA52500942777 /* license.txt in Resources */ = {isa = PBXBuildFile; fileRef = 0CD4E37E00D7DFE17BE9C1BD /* license.txt */; }; + EDC2CB811A1AA52500942777 /* fs.scriptSuite in Resources */ = {isa = PBXBuildFile; fileRef = F538EF6E0279FD3C01345511 /* fs.scriptSuite */; }; + EDC2CB821A1AA52500942777 /* fs.scriptTerminology in Resources */ = {isa = PBXBuildFile; fileRef = F538EF6F0279FD3C01345511 /* fs.scriptTerminology */; }; + EDC2CB841A1AA52500942777 /* ReadMe.txt in Resources */ = {isa = PBXBuildFile; fileRef = F58090EB0375648201AED2EF /* ReadMe.txt */; }; + EDC2CB861A1AA52500942777 /* constantsDictionary in Resources */ = {isa = PBXBuildFile; fileRef = 8F92F0380463F2A400F4C61F /* constantsDictionary */; }; + EDC2CB881A1AA52500942777 /* run.tiff in Resources */ = {isa = PBXBuildFile; fileRef = 8F2D066F05CED9B9007EA81B /* run.tiff */; }; + EDC2CB891A1AA52500942777 /* build.tiff in Resources */ = {isa = PBXBuildFile; fileRef = 8F56036505CF22660044FA65 /* build.tiff */; }; + EDC2CB8A1A1AA52500942777 /* FSObjectBrowserButtonsInspector.xib in Resources */ = {isa = PBXBuildFile; fileRef = EDFB2FF21A17E345002C8DD7 /* FSObjectBrowserButtonsInspector.xib */; }; + EDC2CB8D1A1AA52500942777 /* FSMovieInspector.nib in Resources */ = {isa = PBXBuildFile; fileRef = 8F7472BE056B7ACE00E87339 /* FSMovieInspector.nib */; }; + EDC2CB8E1A1AA52500942777 /* FSTestClasses.txt in Resources */ = {isa = PBXBuildFile; fileRef = 8FE3DC990D26C0FD00A1D767 /* FSTestClasses.txt */; }; + EDC2CB901A1AA52500942777 /* FSAirplane.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E31000D7DFE17BE9C1BD /* FSAirplane.m */; }; + EDC2CB911A1AA52500942777 /* ArrayRepDouble.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E31800D7DFE17BE9C1BD /* ArrayRepDouble.m */; }; + EDC2CB921A1AA52500942777 /* ArrayRepEmpty.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E31A00D7DFE17BE9C1BD /* ArrayRepEmpty.m */; }; + EDC2CB931A1AA52500942777 /* ArrayRepId.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E31C00D7DFE17BE9C1BD /* ArrayRepId.m */; }; + EDC2CB941A1AA52500942777 /* FSCollectionInspector.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E31E00D7DFE17BE9C1BD /* FSCollectionInspector.m */; }; + EDC2CB951A1AA52500942777 /* FSObjectBrowser.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E32100D7DFE17BE9C1BD /* FSObjectBrowser.m */; settings = {COMPILER_FLAGS = "-fobjc-arc"; }; }; + EDC2CB961A1AA52500942777 /* FSObjectBrowserCell.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E32300D7DFE17BE9C1BD /* FSObjectBrowserCell.m */; }; + EDC2CB971A1AA52500942777 /* FSBlock.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E32700D7DFE17BE9C1BD /* FSBlock.m */; }; + EDC2CB981A1AA52500942777 /* BlockInspector.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E32900D7DFE17BE9C1BD /* BlockInspector.m */; }; + EDC2CB991A1AA52500942777 /* BlockRep.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E32D00D7DFE17BE9C1BD /* BlockRep.m */; }; + EDC2CB9A1A1AA52500942777 /* BlockStackElem.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E33000D7DFE17BE9C1BD /* BlockStackElem.m */; }; + EDC2CB9B1A1AA52500942777 /* CLIView.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E33400D7DFE17BE9C1BD /* CLIView.m */; }; + EDC2CB9C1A1AA52500942777 /* FSCompilationResult.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E33600D7DFE17BE9C1BD /* FSCompilationResult.m */; }; + EDC2CB9D1A1AA52500942777 /* CompiledCodeNode.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E33800D7DFE17BE9C1BD /* CompiledCodeNode.m */; }; + EDC2CB9E1A1AA52500942777 /* FSCompiler.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E33A00D7DFE17BE9C1BD /* FSCompiler.m */; }; + EDC2CB9F1A1AA52500942777 /* FSConstantsInitialization.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E33C00D7DFE17BE9C1BD /* FSConstantsInitialization.m */; }; + EDC2CBA11A1AA52500942777 /* FSExecEngine.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E33E00D7DFE17BE9C1BD /* FSExecEngine.m */; }; + EDC2CBA21A1AA52500942777 /* FSExecutor.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E34000D7DFE17BE9C1BD /* FSExecutor.m */; }; + EDC2CBA31A1AA52500942777 /* FSFlight.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E34300D7DFE17BE9C1BD /* FSFlight.m */; }; + EDC2CBA41A1AA52500942777 /* FSArchiver.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E34600D7DFE17BE9C1BD /* FSArchiver.m */; }; + EDC2CBA51A1AA52500942777 /* FSBoolean.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E34800D7DFE17BE9C1BD /* FSBoolean.m */; }; + EDC2CBA61A1AA52500942777 /* FSObjectInspectorViewModelItem.m in Sources */ = {isa = PBXBuildFile; fileRef = ED8222D51A194FD600C42C72 /* FSObjectInspectorViewModelItem.m */; settings = {COMPILER_FLAGS = "-fobjc-arc"; }; }; + EDC2CBA71A1AA52500942777 /* FScriptFunctions.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E34F00D7DFE17BE9C1BD /* FScriptFunctions.m */; }; + EDC2CBA81A1AA52500942777 /* FSDetailedObjectInspector.m in Sources */ = {isa = PBXBuildFile; fileRef = EDC2C8DD1A1A943600942777 /* FSDetailedObjectInspector.m */; settings = {COMPILER_FLAGS = "-fobjc-arc"; }; }; + EDC2CBA91A1AA52500942777 /* FSInterpreter.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E35100D7DFE17BE9C1BD /* FSInterpreter.m */; }; + EDC2CBAA1A1AA52500942777 /* FSInterpreterResult.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E35300D7DFE17BE9C1BD /* FSInterpreterResult.m */; }; + EDC2CBAB1A1AA52500942777 /* FSInterpreterView.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E35600D7DFE17BE9C1BD /* FSInterpreterView.m */; }; + EDC2CBAC1A1AA52500942777 /* FSNSArray.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E35900D7DFE17BE9C1BD /* FSNSArray.m */; }; + EDC2CBAD1A1AA52500942777 /* FSNSDate.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E35C00D7DFE17BE9C1BD /* FSNSDate.m */; }; + EDC2CBAE1A1AA52500942777 /* FSNSDictionary.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E35E00D7DFE17BE9C1BD /* FSNSDictionary.m */; }; + EDC2CBB01A1AA52500942777 /* FSNSMutableString.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E36000D7DFE17BE9C1BD /* FSNSMutableString.m */; }; + EDC2CBB11A1AA52500942777 /* FSNSNumber.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E36200D7DFE17BE9C1BD /* FSNSNumber.m */; }; + EDC2CBB21A1AA52500942777 /* FSNSObject.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E36400D7DFE17BE9C1BD /* FSNSObject.m */; }; + EDC2CBB31A1AA52500942777 /* FSNSProxy.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E36600D7DFE17BE9C1BD /* FSNSProxy.m */; }; + EDC2CBB41A1AA52500942777 /* FSNSString.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E36800D7DFE17BE9C1BD /* FSNSString.m */; }; + EDC2CBB51A1AA52500942777 /* FSPattern.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E36D00D7DFE17BE9C1BD /* FSPattern.m */; }; + EDC2CBB61A1AA52500942777 /* FSUnarchiver.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E37300D7DFE17BE9C1BD /* FSUnarchiver.m */; }; + EDC2CBB71A1AA52500942777 /* FSVoid.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E37500D7DFE17BE9C1BD /* FSVoid.m */; }; + EDC2CBB81A1AA52500942777 /* FSGenericObjectInspector.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E37800D7DFE17BE9C1BD /* FSGenericObjectInspector.m */; }; + EDC2CBB91A1AA52500942777 /* MessagePatternCodeNode.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E38000D7DFE17BE9C1BD /* MessagePatternCodeNode.m */; }; + EDC2CBBA1A1AA52500942777 /* FSMiscTools.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E38200D7DFE17BE9C1BD /* FSMiscTools.m */; }; + EDC2CBBB1A1AA52500942777 /* FSMsgContext.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E38400D7DFE17BE9C1BD /* FSMsgContext.m */; }; + EDC2CBBC1A1AA52500942777 /* FSNewlyAllocatedObjectHolder.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E38800D7DFE17BE9C1BD /* FSNewlyAllocatedObjectHolder.m */; }; + EDC2CBBD1A1AA52500942777 /* FSNumber.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E38E00D7DFE17BE9C1BD /* FSNumber.m */; }; + EDC2CBBE1A1AA52500942777 /* FSPilot.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E39100D7DFE17BE9C1BD /* FSPilot.m */; }; + EDC2CBBF1A1AA52500942777 /* FSReplacementForCoderForClass.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E39500D7DFE17BE9C1BD /* FSReplacementForCoderForClass.m */; }; + EDC2CBC01A1AA52500942777 /* ShellView.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E39700D7DFE17BE9C1BD /* ShellView.m */; }; + EDC2CBC11A1AA52500942777 /* Space.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E39900D7DFE17BE9C1BD /* Space.m */; }; + EDC2CBC21A1AA52500942777 /* FSCommandHistory.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E39B00D7DFE17BE9C1BD /* FSCommandHistory.m */; }; + EDC2CBC31A1AA52500942777 /* FSSystem.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E39F00D7DFE17BE9C1BD /* FSSystem.m */; }; + EDC2CBC41A1AA52500942777 /* KTestManager.m in Sources */ = {isa = PBXBuildFile; fileRef = 66029E590161E0650055708C /* KTestManager.m */; }; + EDC2CBC51A1AA52500942777 /* FSNSDistantObject.m in Sources */ = {isa = PBXBuildFile; fileRef = F51CA01501B013C401BFBB24 /* FSNSDistantObject.m */; }; + EDC2CBC61A1AA52500942777 /* DOTest.m in Sources */ = {isa = PBXBuildFile; fileRef = F5F13B4801C8BE3401CB6DF7 /* DOTest.m */; }; + EDC2CBC71A1AA52500942777 /* FScriptTextView.m in Sources */ = {isa = PBXBuildFile; fileRef = F501AF7B021497C401A75EC5 /* FScriptTextView.m */; }; + EDC2CBC81A1AA52500942777 /* FSObjectBrowserArgumentPanel.m in Sources */ = {isa = PBXBuildFile; fileRef = F5FA8A6D0215D44C01AFEEFD /* FSObjectBrowserArgumentPanel.m */; }; + EDC2CBC91A1AA52500942777 /* FSNSProtocolChecker.m in Sources */ = {isa = PBXBuildFile; fileRef = F5F1405A0223CC9D01DD698C /* FSNSProtocolChecker.m */; }; + EDC2CBCA1A1AA52500942777 /* FSObjectBrowserToolbar.m in Sources */ = {isa = PBXBuildFile; fileRef = F538EF6D0279FD3C01345511 /* FSObjectBrowserToolbar.m */; }; + EDC2CBCB1A1AA52500942777 /* FSEvalCommand.m in Sources */ = {isa = PBXBuildFile; fileRef = F538EF710279FD3C01345511 /* FSEvalCommand.m */; }; + EDC2CBCC1A1AA52500942777 /* FSServicesProvider.m in Sources */ = {isa = PBXBuildFile; fileRef = F538EF7D0279FD3C01345511 /* FSServicesProvider.m */; }; + EDC2CBCD1A1AA52500942777 /* FSTask.m in Sources */ = {isa = PBXBuildFile; fileRef = F538EF7F0279FD3C01345511 /* FSTask.m */; }; + EDC2CBCE1A1AA52500942777 /* FSObjectBrowserToolbarButton.m in Sources */ = {isa = PBXBuildFile; fileRef = F5F0AD430285792F0103CD49 /* FSObjectBrowserToolbarButton.m */; }; + EDC2CBCF1A1AA52500942777 /* FSObjectBrowserButtonCtxBlock.m in Sources */ = {isa = PBXBuildFile; fileRef = F5F0261E02C243D20155CB83 /* FSObjectBrowserButtonCtxBlock.m */; }; + EDC2CBD01A1AA52500942777 /* FSObjectBrowserButtonsInspector.m in Sources */ = {isa = PBXBuildFile; fileRef = F5F9569502B272FB0121B3BA /* FSObjectBrowserButtonsInspector.m */; }; + EDC2CBD11A1AA52500942777 /* FSObjectBrowserView.m in Sources */ = {isa = PBXBuildFile; fileRef = 0CD4E32500D7DFE17BE9C1BD /* FSObjectBrowserView.m */; }; + EDC2CBD21A1AA52500942777 /* Pointer.m in Sources */ = {isa = PBXBuildFile; fileRef = F505647F02DF417501FE0326 /* Pointer.m */; }; + EDC2CBD31A1AA52500942777 /* FSObjectFormatter.m in Sources */ = {isa = PBXBuildFile; fileRef = F5EBBE810321029601CA10C6 /* FSObjectFormatter.m */; }; + EDC2CBD41A1AA52500942777 /* FSIdentifierFormatter.m in Sources */ = {isa = PBXBuildFile; fileRef = F5073A2002FC5400013656B0 /* FSIdentifierFormatter.m */; }; + EDC2CBD51A1AA52500942777 /* FSKeyedUnarchiver.m in Sources */ = {isa = PBXBuildFile; fileRef = F55D44C50358A88801B9E934 /* FSKeyedUnarchiver.m */; }; + EDC2CBD61A1AA52500942777 /* FSKeyedArchiver.m in Sources */ = {isa = PBXBuildFile; fileRef = F55D44CF0358B5D201B9E934 /* FSKeyedArchiver.m */; }; + EDC2CBD71A1AA52500942777 /* FSConstantListBuilder.m in Sources */ = {isa = PBXBuildFile; fileRef = F52EECA7036210E2016141BB /* FSConstantListBuilder.m */; }; + EDC2CBD81A1AA52500942777 /* FSImageInspector.m in Sources */ = {isa = PBXBuildFile; fileRef = F54B55BA036B45770140C608 /* FSImageInspector.m */; }; + EDC2CBD91A1AA52500942777 /* FSNSImage.m in Sources */ = {isa = PBXBuildFile; fileRef = F54B55C9036B4A330140C608 /* FSNSImage.m */; }; + EDC2CBDA1A1AA52500942777 /* FSObjectBrowserToolbarItem.m in Sources */ = {isa = PBXBuildFile; fileRef = F58090D003755FC701AED2EF /* FSObjectBrowserToolbarItem.m */; }; + EDC2CBDB1A1AA52500942777 /* ArrayRepBoolean.m in Sources */ = {isa = PBXBuildFile; fileRef = F5D4BE2A038511FF01461810 /* ArrayRepBoolean.m */; }; + EDC2CBDC1A1AA52500942777 /* FSArrayEnumerator.m in Sources */ = {isa = PBXBuildFile; fileRef = 8FA3AE56044D4D6700CF7A3A /* FSArrayEnumerator.m */; }; + EDC2CBDD1A1AA52500942777 /* FSNSMutableArray.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F66F85504666E8100AFC811 /* FSNSMutableArray.m */; }; + EDC2CBDE1A1AA52500942777 /* FSNSValue.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F553BF80585222700A92293 /* FSNSValue.m */; }; + EDC2CBDF1A1AA52500942777 /* FSReplacementForCoderForNilInArray.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F7D7DB8058E32CD00F1B8A8 /* FSReplacementForCoderForNilInArray.m */; }; + EDC2CBE01A1AA52500942777 /* FSNamedNumber.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F0E3B7F059F3DBB003F6CE9 /* FSNamedNumber.m */; }; + EDC2CBE11A1AA52500942777 /* FSCollectionInspectorTableView.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F60216F05A25CDC0004EFF1 /* FSCollectionInspectorTableView.m */; }; + EDC2CBE21A1AA52500942777 /* FSNSSet.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F60F24605A9FE8B00985FEC /* FSNSSet.m */; }; + EDC2CBE31A1AA52500942777 /* FSAttributedStringInspector.m in Sources */ = {isa = PBXBuildFile; fileRef = 8FDCCD4F05C09F8200747C0A /* FSAttributedStringInspector.m */; }; + EDC2CBE41A1AA52500942777 /* FSNSAttributedString.m in Sources */ = {isa = PBXBuildFile; fileRef = 8FDCCDC005C0A23000747C0A /* FSNSAttributedString.m */; }; + EDC2CBE51A1AA52500942777 /* FScriptMenuItem.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F0B66FC05C5639E0099180D /* FScriptMenuItem.m */; }; + EDC2CBE61A1AA52500942777 /* FSNSFont.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F658B2805C9694F0040FB24 /* FSNSFont.m */; }; + EDC2CBE71A1AA52500942777 /* FSObjectBrowserMatrix.m in Sources */ = {isa = PBXBuildFile; fileRef = 8FB5060005D53C8600153B33 /* FSObjectBrowserMatrix.m */; settings = {COMPILER_FLAGS = "-fobjc-arc"; }; }; + EDC2CBE81A1AA52500942777 /* FSSymbolTable.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F17C07E06B1309C00F07862 /* FSSymbolTable.m */; }; + EDC2CBE91A1AA52500942777 /* FSObjectBrowserViewObjectInfo.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F4E294D075B8E5600F8DCDB /* FSObjectBrowserViewObjectInfo.m */; }; + EDC2CBEA1A1AA52500942777 /* FSCollectionInspectorView.m in Sources */ = {isa = PBXBuildFile; fileRef = 8FA8EDD307735B3B001BEC7B /* FSCollectionInspectorView.m */; }; + EDC2CBEB1A1AA52500942777 /* ArrayRepFetchRequest.m in Sources */ = {isa = PBXBuildFile; fileRef = 8FBC2884077B7D5200F9B4A2 /* ArrayRepFetchRequest.m */; }; + EDC2CBED1A1AA52500942777 /* FSPointer.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F8EA718077F6A5200AC1C96 /* FSPointer.m */; }; + EDC2CBEE1A1AA52500942777 /* FSGenericPointer.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F8EA786077F6C9300AC1C96 /* FSGenericPointer.m */; }; + EDC2CBEF1A1AA52500942777 /* FSObjectPointer.m in Sources */ = {isa = PBXBuildFile; fileRef = 8FE9AE1F078071CC005B2CC4 /* FSObjectPointer.m */; }; + EDC2CBF01A1AA52500942777 /* FSObjectBrowserNamedObjectWrapper.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F86923707F19BA8000D20A4 /* FSObjectBrowserNamedObjectWrapper.m */; }; + EDC2CBF11A1AA52500942777 /* FSInspectorUniquier.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F7F4F9D07FB274C008E42F4 /* FSInspectorUniquier.m */; }; + EDC2CBF21A1AA52500942777 /* FSPredicateTextView.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F95E3C208034A670030B65C /* FSPredicateTextView.m */; }; + EDC2CBF31A1AA52500942777 /* FSCoreDataSample.m in Sources */ = {isa = PBXBuildFile; fileRef = 8FE7E0E7082AD964008231E8 /* FSCoreDataSample.m */; }; + EDC2CBF41A1AA52500942777 /* FSManagedObjectContextInspector.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F37AEC3078B7E900083565D /* FSManagedObjectContextInspector.m */; }; + EDC2CBF51A1AA52500942777 /* FSNSManagedObjectContext.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F5189E807F072EA00A50735 /* FSNSManagedObjectContext.m */; }; + EDC2CBF61A1AA52500942777 /* FSObjectBrowserSearchField.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F585F6F059B23F100C12B6F /* FSObjectBrowserSearchField.m */; }; + EDC2CBF71A1AA52500942777 /* FSBlockCompilationResult.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F90A2F0096DB0660064F4BC /* FSBlockCompilationResult.m */; }; + EDC2CBF81A1AA52500942777 /* FSReturnSignal.m in Sources */ = {isa = PBXBuildFile; fileRef = 8FD7D4A70975B377009B2685 /* FSReturnSignal.m */; }; + EDC2CBF91A1AA52500942777 /* FSMovieInspector.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F573F7E056B754B00F2796A /* FSMovieInspector.m */; }; + EDC2CBFA1A1AA52500942777 /* FSMethod.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F3C13990C65E66400948776 /* FSMethod.m */; }; + EDC2CBFB1A1AA52500942777 /* FSCNClassDefinition.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F5AD3210D05CFFE000CEAC6 /* FSCNClassDefinition.m */; }; + EDC2CBFC1A1AA52500942777 /* FSCNBase.m in Sources */ = {isa = PBXBuildFile; fileRef = 8FE6397F0D09C0F400255EBA /* FSCNBase.m */; }; + EDC2CBFD1A1AA52500942777 /* FSCNIdentifier.m in Sources */ = {isa = PBXBuildFile; fileRef = 8FE6398F0D09DCB600255EBA /* FSCNIdentifier.m */; }; + EDC2CBFE1A1AA52500942777 /* FSObjectEnumInfo.m in Sources */ = {isa = PBXBuildFile; fileRef = ED8222E61A19554F00C42C72 /* FSObjectEnumInfo.m */; }; + EDC2CBFF1A1AA52500942777 /* FSTestObjCClass1.m in Sources */ = {isa = PBXBuildFile; fileRef = 8FE3DD210D26D49900A1D767 /* FSTestObjCClass1.m */; }; + EDC2CC001A1AA52500942777 /* FSTestObjCClass2.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F4822030D2C317700754A4E /* FSTestObjCClass2.m */; }; + EDC2CC011A1AA52500942777 /* FSCNCategory.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F8112F10D85E58200CB3407 /* FSCNCategory.m */; }; + EDC2CC021A1AA52500942777 /* FSCNMessage.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F59CA700D86DD0800D67A78 /* FSCNMessage.m */; }; + EDC2CC031A1AA52500942777 /* FSCNSuper.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F72237E0D870C6A00394C99 /* FSCNSuper.m */; }; + EDC2CC041A1AA52500942777 /* FSCNUnaryMessage.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F2E341F0D8DB61C00912543 /* FSCNUnaryMessage.m */; }; + EDC2CC051A1AA52500942777 /* FSCNBinaryMessage.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F2E34320D8DBF6A00912543 /* FSCNBinaryMessage.m */; }; + EDC2CC061A1AA52500942777 /* FSCNKeywordMessage.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F2E343B0D8DBFE700912543 /* FSCNKeywordMessage.m */; }; + EDC2CC071A1AA52500942777 /* FSCNCascade.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F5900140D9468FC003A8B17 /* FSCNCascade.m */; }; + EDC2CC081A1AA52500942777 /* FSCNStatementList.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F8F58650D9FE6A900ED0FED /* FSCNStatementList.m */; }; + EDC2CC091A1AA52500942777 /* FSCNPrecomputedObject.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F747DA80DA03AE200148342 /* FSCNPrecomputedObject.m */; }; + EDC2CC0A1A1AA52500942777 /* FSCNArray.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F747DB70DA0467100148342 /* FSCNArray.m */; }; + EDC2CC0B1A1AA52500942777 /* FSCNBlock.m in Sources */ = {isa = PBXBuildFile; fileRef = 8FAE79AB0DA0ED5D00CB6E14 /* FSCNBlock.m */; }; + EDC2CC0C1A1AA52500942777 /* FSCNAssignment.m in Sources */ = {isa = PBXBuildFile; fileRef = 8FAE79F20DA109C500CB6E14 /* FSCNAssignment.m */; }; + EDC2CC0D1A1AA52500942777 /* FSObjectInspectorViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = ED3004E61A1A86EF00675D94 /* FSObjectInspectorViewController.m */; settings = {COMPILER_FLAGS = "-fobjc-arc"; }; }; + EDC2CC0E1A1AA52500942777 /* FSCNMethod.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F45CBBE0DA813F200AFA8C8 /* FSCNMethod.m */; }; + EDC2CC0F1A1AA52500942777 /* FSCNReturn.m in Sources */ = {isa = PBXBuildFile; fileRef = 8FD0A3130DD7276000E47459 /* FSCNReturn.m */; }; + EDC2CC101A1AA52500942777 /* FSClassDefinition.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F8949D60DE08B110094EC14 /* FSClassDefinition.m */; }; + EDC2CC111A1AA52500942777 /* FSTranscript.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F2DE65A0E57254700CF83CB /* FSTranscript.m */; }; + EDC2CC121A1AA52500942777 /* FSArray.m in Sources */ = {isa = PBXBuildFile; fileRef = 8FE6AD900EC740650096019D /* FSArray.m */; }; + EDC2CC131A1AA52500942777 /* Array.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F31A4C10EC74A2E00D1B8E8 /* Array.m */; }; + EDC2CC141A1AA52500942777 /* Block.m in Sources */ = {isa = PBXBuildFile; fileRef = 8FCA00C20EEAF34300B10420 /* Block.m */; }; + EDC2CC151A1AA52500942777 /* Number.m in Sources */ = {isa = PBXBuildFile; fileRef = 8FBB2FF10EEB3467007A3163 /* Number.m */; }; + EDC2CC161A1AA52500942777 /* FSGlobalScope.m in Sources */ = {isa = PBXBuildFile; fileRef = 8FB9D5980F1CEE2100E10274 /* FSGlobalScope.m */; }; + EDC2CC171A1AA52500942777 /* FSNSFileHandle.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F9D04180F1DF1CB001B8286 /* FSNSFileHandle.m */; }; + EDC2CC181A1AA52500942777 /* FSAssociation.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F940B820F2393B0004525E1 /* FSAssociation.m */; }; + EDC2CC191A1AA52500942777 /* FSCNDictionary.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F940C6F0F23BC2E004525E1 /* FSCNDictionary.m */; }; + EDC2CC1A1A1AA52500942777 /* FSObjectInspectorBackgroundView.m in Sources */ = {isa = PBXBuildFile; fileRef = EDC2C8EF1A1AA34D00942777 /* FSObjectInspectorBackgroundView.m */; }; + EDC2CC1B1A1AA52500942777 /* FSObjectBrowserBottomBarTextDisplay.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F7A712A0F48397C00E95364 /* FSObjectBrowserBottomBarTextDisplay.m */; }; + EDC2CC1C1A1AA52500942777 /* FSNSAffineTransform.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F2D720A0F6BD9B100F0862A /* FSNSAffineTransform.m */; }; + EDC2CC1D1A1AA52500942777 /* FSNewlyAllocatedObject.m in Sources */ = {isa = PBXBuildFile; fileRef = 8FCA593210883B0100F67841 /* FSNewlyAllocatedObject.m */; }; + EDC2CC1E1A1AA52500942777 /* FSWorksWhenModalWindow.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F5EDA01109B384A003A2F4C /* FSWorksWhenModalWindow.m */; }; + EDC2CC1F1A1AA52500942777 /* FSNSMutableDictionary.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F44270C116549C700E88F21 /* FSNSMutableDictionary.m */; }; + EDC2CC211A1AA52500942777 /* Cocoa.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 8F85274707F6016900E706F5 /* Cocoa.framework */; }; + EDC2CC221A1AA52500942777 /* ExceptionHandling.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = F51B24640271980D01DB4759 /* ExceptionHandling.framework */; }; + EDE508D019DD4AA00012F16A /* InterfaceBuilderKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BA22313D189F9AA9002C5B6A /* InterfaceBuilderKit.framework */; }; + EDE508D219DD4D310012F16A /* FSConsole.xib in Resources */ = {isa = PBXBuildFile; fileRef = EDE508D119DD4D310012F16A /* FSConsole.xib */; }; + EDE508D319DD4D310012F16A /* FSConsole.xib in Resources */ = {isa = PBXBuildFile; fileRef = EDE508D119DD4D310012F16A /* FSConsole.xib */; }; + EDE508D419DD4D310012F16A /* FSConsole.xib in Resources */ = {isa = PBXBuildFile; fileRef = EDE508D119DD4D310012F16A /* FSConsole.xib */; }; + EDE508D519DD4D310012F16A /* FSConsole.xib in Resources */ = {isa = PBXBuildFile; fileRef = EDE508D119DD4D310012F16A /* FSConsole.xib */; }; + EDE508D619DD4D310012F16A /* FSConsole.xib in Resources */ = {isa = PBXBuildFile; fileRef = EDE508D119DD4D310012F16A /* FSConsole.xib */; }; + EDE508D719DD4D310012F16A /* FSConsole.xib in Resources */ = {isa = PBXBuildFile; fileRef = EDE508D119DD4D310012F16A /* FSConsole.xib */; }; + EDE508D819DD4D310012F16A /* FSConsole.xib in Resources */ = {isa = PBXBuildFile; fileRef = EDE508D119DD4D310012F16A /* FSConsole.xib */; }; + EDE508D919DD4D310012F16A /* FSConsole.xib in Resources */ = {isa = PBXBuildFile; fileRef = EDE508D119DD4D310012F16A /* FSConsole.xib */; }; + EDE508DB19DD4FDC0012F16A /* FScriptPreferences.xib in Resources */ = {isa = PBXBuildFile; fileRef = EDE508DA19DD4FDC0012F16A /* FScriptPreferences.xib */; }; + EDE508DC19DD4FDC0012F16A /* FScriptPreferences.xib in Resources */ = {isa = PBXBuildFile; fileRef = EDE508DA19DD4FDC0012F16A /* FScriptPreferences.xib */; }; + EDE508DD19DD4FDC0012F16A /* FScriptPreferences.xib in Resources */ = {isa = PBXBuildFile; fileRef = EDE508DA19DD4FDC0012F16A /* FScriptPreferences.xib */; }; + EDE508DE19DD4FDC0012F16A /* FScriptPreferences.xib in Resources */ = {isa = PBXBuildFile; fileRef = EDE508DA19DD4FDC0012F16A /* FScriptPreferences.xib */; }; + EDE508DF19DD4FDC0012F16A /* FScriptPreferences.xib in Resources */ = {isa = PBXBuildFile; fileRef = EDE508DA19DD4FDC0012F16A /* FScriptPreferences.xib */; }; + EDE508E019DD4FDC0012F16A /* FScriptPreferences.xib in Resources */ = {isa = PBXBuildFile; fileRef = EDE508DA19DD4FDC0012F16A /* FScriptPreferences.xib */; }; + EDE508E119DD4FDC0012F16A /* FScriptPreferences.xib in Resources */ = {isa = PBXBuildFile; fileRef = EDE508DA19DD4FDC0012F16A /* FScriptPreferences.xib */; }; + EDE508E219DD4FDC0012F16A /* FScriptPreferences.xib in Resources */ = {isa = PBXBuildFile; fileRef = EDE508DA19DD4FDC0012F16A /* FScriptPreferences.xib */; }; + EDFB2FF31A17E345002C8DD7 /* FSObjectBrowserButtonsInspector.xib in Resources */ = {isa = PBXBuildFile; fileRef = EDFB2FF21A17E345002C8DD7 /* FSObjectBrowserButtonsInspector.xib */; }; + EDFB2FF41A17E345002C8DD7 /* FSObjectBrowserButtonsInspector.xib in Resources */ = {isa = PBXBuildFile; fileRef = EDFB2FF21A17E345002C8DD7 /* FSObjectBrowserButtonsInspector.xib */; }; + EDFB2FF51A17E345002C8DD7 /* FSObjectBrowserButtonsInspector.xib in Resources */ = {isa = PBXBuildFile; fileRef = EDFB2FF21A17E345002C8DD7 /* FSObjectBrowserButtonsInspector.xib */; }; + EDFB2FF61A17E345002C8DD7 /* FSObjectBrowserButtonsInspector.xib in Resources */ = {isa = PBXBuildFile; fileRef = EDFB2FF21A17E345002C8DD7 /* FSObjectBrowserButtonsInspector.xib */; }; + EDFB2FF71A17E345002C8DD7 /* FSObjectBrowserButtonsInspector.xib in Resources */ = {isa = PBXBuildFile; fileRef = EDFB2FF21A17E345002C8DD7 /* FSObjectBrowserButtonsInspector.xib */; }; + EDFB2FF81A17E345002C8DD7 /* FSObjectBrowserButtonsInspector.xib in Resources */ = {isa = PBXBuildFile; fileRef = EDFB2FF21A17E345002C8DD7 /* FSObjectBrowserButtonsInspector.xib */; }; + EDFB2FF91A17E345002C8DD7 /* FSObjectBrowserButtonsInspector.xib in Resources */ = {isa = PBXBuildFile; fileRef = EDFB2FF21A17E345002C8DD7 /* FSObjectBrowserButtonsInspector.xib */; }; + EDFB2FFA1A17E345002C8DD7 /* FSObjectBrowserButtonsInspector.xib in Resources */ = {isa = PBXBuildFile; fileRef = EDFB2FF21A17E345002C8DD7 /* FSObjectBrowserButtonsInspector.xib */; }; + EDFB302F1A18CA26002C8DD7 /* metamacros.h in Headers */ = {isa = PBXBuildFile; fileRef = EDFB302E1A18CA26002C8DD7 /* metamacros.h */; }; + EDFB30301A18CA26002C8DD7 /* metamacros.h in Headers */ = {isa = PBXBuildFile; fileRef = EDFB302E1A18CA26002C8DD7 /* metamacros.h */; }; + EDFB30311A18CA26002C8DD7 /* metamacros.h in Headers */ = {isa = PBXBuildFile; fileRef = EDFB302E1A18CA26002C8DD7 /* metamacros.h */; }; + EDFB30321A18CA26002C8DD7 /* metamacros.h in Headers */ = {isa = PBXBuildFile; fileRef = EDFB302E1A18CA26002C8DD7 /* metamacros.h */; }; + EDFB30331A18CA26002C8DD7 /* metamacros.h in Headers */ = {isa = PBXBuildFile; fileRef = EDFB302E1A18CA26002C8DD7 /* metamacros.h */; }; + EDFB30341A18CA26002C8DD7 /* metamacros.h in Headers */ = {isa = PBXBuildFile; fileRef = EDFB302E1A18CA26002C8DD7 /* metamacros.h */; }; + EDFB30351A18CA26002C8DD7 /* metamacros.h in Headers */ = {isa = PBXBuildFile; fileRef = EDFB302E1A18CA26002C8DD7 /* metamacros.h */; }; /* End PBXBuildFile section */ /* Begin PBXContainerItemProxy section */ @@ -3513,13 +3726,6 @@ remoteGlobalIDString = 8F6DA8F2055FC71F0050409A; remoteInfo = FScriptFramework; }; - 8F3C42560E95545800DFD84F /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = 0CD4E2FA00D7DD4D7BE9C1BD /* Project object */; - proxyType = 1; - remoteGlobalIDString = 8F6DA5DE055FC6980050409A; - remoteInfo = FSTest2; - }; 8FD176B7098C25FB00D0A57D /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; containerPortal = 0CD4E2FA00D7DD4D7BE9C1BD /* Project object */; @@ -3534,13 +3740,6 @@ remoteGlobalIDString = 8F6DA6D8055FC6C80050409A; remoteInfo = FSTest1; }; - BA2231A6189FA403002C5B6A /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = 0CD4E2FA00D7DD4D7BE9C1BD /* Project object */; - proxyType = 1; - remoteGlobalIDString = 8F6DA5DE055FC6980050409A; - remoteInfo = FSTest2; - }; BA223364189FA412002C5B6A /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; containerPortal = 0CD4E2FA00D7DD4D7BE9C1BD /* Project object */; @@ -3548,30 +3747,18 @@ remoteGlobalIDString = 8F6DA6D8055FC6C80050409A; remoteInfo = FSTest1; }; - BA223366189FA412002C5B6A /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = 0CD4E2FA00D7DD4D7BE9C1BD /* Project object */; - proxyType = 1; - remoteGlobalIDString = 8F6DA5DE055FC6980050409A; - remoteInfo = FSTest2; - }; - E29F5BCE19FD93FD00AD90CF /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = 0CD4E2FA00D7DD4D7BE9C1BD /* Project object */; - proxyType = 1; - remoteGlobalIDString = 8F6DA6D8055FC6C80050409A; - remoteInfo = FSTest1; - }; - E29F5BD019FD93FD00AD90CF /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = 0CD4E2FA00D7DD4D7BE9C1BD /* Project object */; - proxyType = 1; - remoteGlobalIDString = 8F6DA5DE055FC6980050409A; - remoteInfo = FSTest2; - }; /* End PBXContainerItemProxy section */ /* Begin PBXFileReference section */ + 0B7388FB1B397B90005BD678 /* FScriptAppPreference.xib */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file.xib; path = FScriptAppPreference.xib; sourceTree = ""; }; + 0B7389011B397C4F005BD678 /* English */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = English; path = English.lproj/fs.xib; sourceTree = ""; }; + 0B7389061B397CD5005BD678 /* blockInspector.xib */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file.xib; path = blockInspector.xib; sourceTree = ""; }; + 0B73890F1B397CE6005BD678 /* ArrayTableView.xib */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file.xib; path = ArrayTableView.xib; sourceTree = ""; }; + 0B7389181B397D0A005BD678 /* FSAttributedStringInspector.xib */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file.xib; path = FSAttributedStringInspector.xib; sourceTree = ""; }; + 0B7389211B397D1E005BD678 /* FSCollectionInspector.xib */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file.xib; path = FSCollectionInspector.xib; sourceTree = ""; }; + 0B73892A1B397D2E005BD678 /* FSCollectionInspectorView.xib */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file.xib; path = FSCollectionInspectorView.xib; sourceTree = ""; }; + 0B7389331B397D43005BD678 /* FSImageInspector.xib */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file.xib; path = FSImageInspector.xib; sourceTree = ""; }; + 0B73893C1B397D62005BD678 /* FSManagedObjectContextInspector.xib */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file.xib; path = FSManagedObjectContextInspector.xib; sourceTree = ""; }; 0CD4E30F00D7DFE17BE9C1BD /* FSAirplane.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = FSAirplane.h; sourceTree = ""; }; 0CD4E31000D7DFE17BE9C1BD /* FSAirplane.m */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.objc; path = FSAirplane.m; sourceTree = ""; }; 0CD4E31300D7DFE17BE9C1BD /* ArrayPrivate.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = ArrayPrivate.h; sourceTree = ""; }; @@ -3584,18 +3771,16 @@ 0CD4E31C00D7DFE17BE9C1BD /* ArrayRepId.m */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.objc; path = ArrayRepId.m; sourceTree = ""; }; 0CD4E31D00D7DFE17BE9C1BD /* FSCollectionInspector.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = FSCollectionInspector.h; sourceTree = ""; }; 0CD4E31E00D7DFE17BE9C1BD /* FSCollectionInspector.m */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.objc; path = FSCollectionInspector.m; sourceTree = ""; }; - 0CD4E31F00D7DFE17BE9C1BD /* FSCollectionInspector.nib */ = {isa = PBXFileReference; lastKnownFileType = wrapper.nib; path = FSCollectionInspector.nib; sourceTree = ""; }; 0CD4E32000D7DFE17BE9C1BD /* FSObjectBrowser.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = FSObjectBrowser.h; sourceTree = ""; }; 0CD4E32100D7DFE17BE9C1BD /* FSObjectBrowser.m */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.objc; path = FSObjectBrowser.m; sourceTree = ""; }; 0CD4E32200D7DFE17BE9C1BD /* FSObjectBrowserCell.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = FSObjectBrowserCell.h; sourceTree = ""; }; 0CD4E32300D7DFE17BE9C1BD /* FSObjectBrowserCell.m */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.objc; path = FSObjectBrowserCell.m; sourceTree = ""; }; 0CD4E32400D7DFE17BE9C1BD /* FSObjectBrowserView.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = FSObjectBrowserView.h; sourceTree = ""; }; - 0CD4E32500D7DFE17BE9C1BD /* FSObjectBrowserView.m */ = {isa = PBXFileReference; fileEncoding = 30; languageSpecificationIdentifier = c.objc; lastKnownFileType = sourcecode.c.objc; path = FSObjectBrowserView.m; sourceTree = ""; }; + 0CD4E32500D7DFE17BE9C1BD /* FSObjectBrowserView.m */ = {isa = PBXFileReference; fileEncoding = 30; indentWidth = 8; languageSpecificationIdentifier = c.objc; lastKnownFileType = sourcecode.c.objc; path = FSObjectBrowserView.m; sourceTree = ""; tabWidth = 8; }; 0CD4E32600D7DFE17BE9C1BD /* FSBlock.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = FSBlock.h; sourceTree = ""; }; 0CD4E32700D7DFE17BE9C1BD /* FSBlock.m */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.objc; path = FSBlock.m; sourceTree = ""; }; 0CD4E32800D7DFE17BE9C1BD /* BlockInspector.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = BlockInspector.h; sourceTree = ""; }; 0CD4E32900D7DFE17BE9C1BD /* BlockInspector.m */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.objc; path = BlockInspector.m; sourceTree = ""; }; - 0CD4E32A00D7DFE17BE9C1BD /* blockInspector.nib */ = {isa = PBXFileReference; lastKnownFileType = wrapper.nib; path = blockInspector.nib; sourceTree = ""; }; 0CD4E32B00D7DFE17BE9C1BD /* BlockPrivate.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = BlockPrivate.h; sourceTree = ""; }; 0CD4E32C00D7DFE17BE9C1BD /* BlockRep.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = BlockRep.h; sourceTree = ""; }; 0CD4E32D00D7DFE17BE9C1BD /* BlockRep.m */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.objc; path = BlockRep.m; sourceTree = ""; }; @@ -3690,16 +3875,17 @@ 0CD4E39E00D7DFE17BE9C1BD /* FSSystem.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 30; path = FSSystem.h; sourceTree = ""; }; 0CD4E39F00D7DFE17BE9C1BD /* FSSystem.m */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.objc; path = FSSystem.m; sourceTree = ""; }; 0CD4E3A000D7DFE17BE9C1BD /* TestFS.m */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.objc; path = TestFS.m; sourceTree = ""; }; + 0CD4E46500D7E1C37BE9C1BD /* Foundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Foundation.framework; path = /System/Library/Frameworks/Foundation.framework; sourceTree = ""; }; + 0CD4E46900D7E1F17BE9C1BD /* JavaVM.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = JavaVM.framework; path = /System/Library/Frameworks/JavaVM.framework; sourceTree = ""; }; 66029E580161E0650055708C /* KTestManager.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = KTestManager.h; sourceTree = ""; }; 66029E590161E0650055708C /* KTestManager.m */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.objc; path = KTestManager.m; sourceTree = ""; }; - 8F0B64C805C5370D0099180D /* FSConsole.nib */ = {isa = PBXFileReference; lastKnownFileType = wrapper.nib; name = FSConsole.nib; path = FScriptFramework/FSConsole.nib; sourceTree = SOURCE_ROOT; }; - 8F0B664F05C557A40099180D /* FScriptPreferences.nib */ = {isa = PBXFileReference; lastKnownFileType = wrapper.nib; path = FScriptPreferences.nib; sourceTree = ""; }; 8F0B66FB05C5639E0099180D /* FScriptMenuItem.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = FScriptMenuItem.h; sourceTree = ""; }; 8F0B66FC05C5639E0099180D /* FScriptMenuItem.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = FScriptMenuItem.m; sourceTree = ""; }; 8F0E3B7E059F3DBB003F6CE9 /* FSNamedNumber.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = FSNamedNumber.h; sourceTree = ""; }; 8F0E3B7F059F3DBB003F6CE9 /* FSNamedNumber.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = FSNamedNumber.m; sourceTree = ""; }; 8F17C07D06B1309C00F07862 /* FSSymbolTable.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = FSSymbolTable.h; sourceTree = ""; }; 8F17C07E06B1309C00F07862 /* FSSymbolTable.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = FSSymbolTable.m; sourceTree = ""; }; + 8F1873160B99C7AA003974F2 /* QuartzCore.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = QuartzCore.framework; path = /System/Library/Frameworks/QuartzCore.framework; sourceTree = ""; }; 8F273EEB04BB3EFD0095347F /* ArrayRepBooleanPacked.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = ArrayRepBooleanPacked.h; sourceTree = ""; }; 8F273EEC04BB3EFD0095347F /* ArrayRepBooleanPacked.m */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.objc; path = ArrayRepBooleanPacked.m; sourceTree = ""; }; 8F2D066F05CED9B9007EA81B /* run.tiff */ = {isa = PBXFileReference; lastKnownFileType = image.tiff; path = run.tiff; sourceTree = ""; }; @@ -3726,9 +3912,10 @@ 8F4822020D2C317700754A4E /* FSTestObjCClass2.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = FSTestObjCClass2.h; sourceTree = ""; }; 8F4822030D2C317700754A4E /* FSTestObjCClass2.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = FSTestObjCClass2.m; sourceTree = ""; }; 8F4E294C075B8E5600F8DCDB /* FSObjectBrowserViewObjectInfo.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = FSObjectBrowserViewObjectInfo.h; sourceTree = ""; }; - 8F4E294D075B8E5600F8DCDB /* FSObjectBrowserViewObjectInfo.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = FSObjectBrowserViewObjectInfo.m; sourceTree = ""; }; + 8F4E294D075B8E5600F8DCDB /* FSObjectBrowserViewObjectInfo.m */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 8; lastKnownFileType = sourcecode.c.objc; path = FSObjectBrowserViewObjectInfo.m; sourceTree = ""; tabWidth = 8; }; 8F5189E707F072EA00A50735 /* FSNSManagedObjectContext.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = FSNSManagedObjectContext.h; sourceTree = ""; }; 8F5189E807F072EA00A50735 /* FSNSManagedObjectContext.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = FSNSManagedObjectContext.m; sourceTree = ""; }; + 8F552A780C00A6D4002B6067 /* CalendarStore.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CalendarStore.framework; path = /System/Library/Frameworks/CalendarStore.framework; sourceTree = ""; }; 8F553BF70585222700A92293 /* FSNSValue.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = FSNSValue.h; sourceTree = ""; }; 8F553BF80585222700A92293 /* FSNSValue.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = FSNSValue.m; sourceTree = ""; }; 8F56036505CF22660044FA65 /* build.tiff */ = {isa = PBXFileReference; lastKnownFileType = image.tiff; path = build.tiff; sourceTree = ""; }; @@ -3738,6 +3925,10 @@ 8F573F90056B780500F2796A /* FSQTMovie.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = FSQTMovie.m; sourceTree = ""; }; 8F585F6E059B23F100C12B6F /* FSObjectBrowserSearchField.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = FSObjectBrowserSearchField.h; sourceTree = ""; }; 8F585F6F059B23F100C12B6F /* FSObjectBrowserSearchField.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = FSObjectBrowserSearchField.m; sourceTree = ""; }; + 8F589B600CE38B3B00C1D756 /* AudioUnit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = AudioUnit.framework; path = /System/Library/Frameworks/AudioUnit.framework; sourceTree = ""; }; + 8F589B800CE38B7100C1D756 /* Automator.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Automator.framework; path = /System/Library/Frameworks/Automator.framework; sourceTree = ""; }; + 8F589B980CE38CAB00C1D756 /* InputMethodKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = InputMethodKit.framework; path = /System/Library/Frameworks/InputMethodKit.framework; sourceTree = ""; }; + 8F589BA50CE38CCE00C1D756 /* InstallerPlugins.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = InstallerPlugins.framework; path = /System/Library/Frameworks/InstallerPlugins.framework; sourceTree = ""; }; 8F5900130D9468FC003A8B17 /* FSCNCascade.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = FSCNCascade.h; sourceTree = ""; }; 8F5900140D9468FC003A8B17 /* FSCNCascade.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = FSCNCascade.m; sourceTree = ""; }; 8F59CA6F0D86DD0800D67A78 /* FSCNMessage.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = FSCNMessage.h; sourceTree = ""; }; @@ -3750,18 +3941,13 @@ 8F60216F05A25CDC0004EFF1 /* FSCollectionInspectorTableView.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = FSCollectionInspectorTableView.m; sourceTree = ""; }; 8F60F24505A9FE8B00985FEC /* FSNSSet.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = FSNSSet.h; sourceTree = ""; }; 8F60F24605A9FE8B00985FEC /* FSNSSet.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = FSNSSet.m; sourceTree = ""; }; - 8F6392D10BDB8521005C8D94 /* FScriptIBPlugin.ibplugin */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = FScriptIBPlugin.ibplugin; sourceTree = BUILT_PRODUCTS_DIR; }; 8F63CC08044B95DB00B84480 /* FSNSObjectPrivate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = FSNSObjectPrivate.h; sourceTree = ""; }; + 8F6584F80C484A5100C8A3FC /* ScriptingBridge.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = ScriptingBridge.framework; path = /System/Library/Frameworks/ScriptingBridge.framework; sourceTree = ""; }; 8F658B2705C9694F0040FB24 /* FSNSFont.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = FSNSFont.h; sourceTree = ""; }; 8F658B2805C9694F0040FB24 /* FSNSFont.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = FSNSFont.m; sourceTree = ""; }; - 8F6597B50C37F061006CDCA0 /* FScriptMenuItem.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; name = FScriptMenuItem.png; path = FScriptIBPlugin/FScriptMenuItem.png; sourceTree = ""; }; - 8F6597D90C381103006CDCA0 /* FSInterpreterView.classdescription */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; name = FSInterpreterView.classdescription; path = FScriptIBPlugin/FSInterpreterView.classdescription; sourceTree = ""; }; 8F66F85404666E8100AFC811 /* FSNSMutableArray.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = FSNSMutableArray.h; sourceTree = ""; }; 8F66F85504666E8100AFC811 /* FSNSMutableArray.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = FSNSMutableArray.m; sourceTree = ""; }; - 8F6DA6D1055FC6980050409A /* Info-FSTest2_2.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist; path = "Info-FSTest2_2.plist"; sourceTree = ""; }; 8F6DA6E7055FC6C80050409A /* Info-FSTest1_2.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist; path = "Info-FSTest1_2.plist"; sourceTree = ""; }; - 8F6DA8EB055FC70C0050409A /* Info-FScript.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = "Info-FScript.plist"; sourceTree = ""; }; - 8F6DA9DC055FC7200050409A /* Info-FScriptFramework.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = "Info-FScriptFramework.plist"; sourceTree = ""; }; 8F71F72205C43A7D00C34794 /* FSInterpreterViewPrivate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = FSInterpreterViewPrivate.h; sourceTree = ""; }; 8F72237D0D870C6A00394C99 /* FSCNSuper.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = FSCNSuper.h; sourceTree = ""; }; 8F72237E0D870C6A00394C99 /* FSCNSuper.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = FSCNSuper.m; sourceTree = ""; }; @@ -3778,6 +3964,7 @@ 8F7F4F9D07FB274C008E42F4 /* FSInspectorUniquier.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = FSInspectorUniquier.m; sourceTree = ""; }; 8F8112F00D85E58200CB3407 /* FSCNCategory.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = FSCNCategory.h; sourceTree = ""; }; 8F8112F10D85E58200CB3407 /* FSCNCategory.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = FSCNCategory.m; sourceTree = ""; }; + 8F85274707F6016900E706F5 /* Cocoa.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Cocoa.framework; path = /System/Library/Frameworks/Cocoa.framework; sourceTree = ""; }; 8F86923607F19BA8000D20A4 /* FSObjectBrowserNamedObjectWrapper.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = FSObjectBrowserNamedObjectWrapper.h; sourceTree = ""; }; 8F86923707F19BA8000D20A4 /* FSObjectBrowserNamedObjectWrapper.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = FSObjectBrowserNamedObjectWrapper.m; sourceTree = ""; }; 8F8949D50DE08B110094EC14 /* FSClassDefinition.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = FSClassDefinition.h; sourceTree = ""; }; @@ -3792,14 +3979,6 @@ 8F8F58650D9FE6A900ED0FED /* FSCNStatementList.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = FSCNStatementList.m; sourceTree = ""; }; 8F90A2EF096DB0660064F4BC /* FSBlockCompilationResult.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = FSBlockCompilationResult.h; sourceTree = ""; }; 8F90A2F0096DB0660064F4BC /* FSBlockCompilationResult.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = FSBlockCompilationResult.m; sourceTree = ""; }; - 8F913FCE0BDB92EE001685EA /* FScriptIBPlugin_Prefix.pch */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = FScriptIBPlugin_Prefix.pch; path = FScriptIBPlugin/FScriptIBPlugin_Prefix.pch; sourceTree = ""; }; - 8F913FCF0BDB92EE001685EA /* FScriptIBPlugin.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = FScriptIBPlugin.h; path = FScriptIBPlugin/FScriptIBPlugin.h; sourceTree = ""; }; - 8F913FD00BDB92EE001685EA /* FScriptIBPlugin.m */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.objc; name = FScriptIBPlugin.m; path = FScriptIBPlugin/FScriptIBPlugin.m; sourceTree = ""; }; - 8F913FD30BDB92FC001685EA /* FScriptIBPlugin-Info.plist */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = text.plist.xml; name = "FScriptIBPlugin-Info.plist"; path = "FScriptIBPlugin/FScriptIBPlugin-Info.plist"; sourceTree = ""; }; - 8F913FD40BDB92FC001685EA /* FScriptIBPluginInspector.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = FScriptIBPluginInspector.h; path = FScriptIBPlugin/FScriptIBPluginInspector.h; sourceTree = ""; }; - 8F913FD50BDB92FC001685EA /* FScriptIBPluginInspector.m */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.objc; name = FScriptIBPluginInspector.m; path = FScriptIBPlugin/FScriptIBPluginInspector.m; sourceTree = ""; }; - 8F913FD90BDB92FC001685EA /* Info.plist */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = text.plist.xml; name = Info.plist; path = FScriptIBPlugin/Info.plist; sourceTree = ""; }; - 8F913FDA0BDB92FC001685EA /* version.plist */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = text.plist.xml; name = version.plist; path = FScriptIBPlugin/version.plist; sourceTree = ""; }; 8F92F0340463F03300F4C61F /* FSConstantsDictionaryGenerator.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = FSConstantsDictionaryGenerator.h; sourceTree = ""; }; 8F92F0350463F03300F4C61F /* FSConstantsDictionaryGenerator.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = FSConstantsDictionaryGenerator.m; sourceTree = ""; }; 8F92F0380463F2A400F4C61F /* constantsDictionary */ = {isa = PBXFileReference; lastKnownFileType = file.bplist; path = constantsDictionary; sourceTree = ""; }; @@ -3816,19 +3995,17 @@ 8F9D04180F1DF1CB001B8286 /* FSNSFileHandle.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = FSNSFileHandle.m; sourceTree = ""; }; 8F9EBF5A04B87D7C00F556BA /* ArrayRepBooleanAltivec.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = ArrayRepBooleanAltivec.h; sourceTree = ""; }; 8F9EBF5B04B87D7C00F556BA /* ArrayRepBooleanAltivec.m */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.objc; path = ArrayRepBooleanAltivec.m; sourceTree = ""; }; + 8FA095F80CE38F27001AC147 /* ScreenSaver.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = ScreenSaver.framework; path = /System/Library/Frameworks/ScreenSaver.framework; sourceTree = ""; }; 8FA3AE55044D4D6700CF7A3A /* FSArrayEnumerator.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = FSArrayEnumerator.h; path = FScriptFramework/FSArrayEnumerator.h; sourceTree = SOURCE_ROOT; }; 8FA3AE56044D4D6700CF7A3A /* FSArrayEnumerator.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = FSArrayEnumerator.m; path = FScriptFramework/FSArrayEnumerator.m; sourceTree = SOURCE_ROOT; }; 8FA8EDC607735B3B001BEC7B /* FSCollectionInspectorView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = FSCollectionInspectorView.h; sourceTree = ""; }; 8FA8EDD307735B3B001BEC7B /* FSCollectionInspectorView.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = FSCollectionInspectorView.m; sourceTree = ""; }; - 8FA8EF9107739FD4001BEC7B /* FSCollectionInspectorView.nib */ = {isa = PBXFileReference; lastKnownFileType = wrapper.nib; path = FSCollectionInspectorView.nib; sourceTree = ""; }; 8FAE79AA0DA0ED5D00CB6E14 /* FSCNBlock.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = FSCNBlock.h; sourceTree = ""; }; 8FAE79AB0DA0ED5D00CB6E14 /* FSCNBlock.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = FSCNBlock.m; sourceTree = ""; }; 8FAE79F10DA109C500CB6E14 /* FSCNAssignment.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = FSCNAssignment.h; sourceTree = ""; }; 8FAE79F20DA109C500CB6E14 /* FSCNAssignment.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = FSCNAssignment.m; sourceTree = ""; }; 8FB505FF05D53C8600153B33 /* FSObjectBrowserMatrix.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = FSObjectBrowserMatrix.h; sourceTree = ""; }; - 8FB5060005D53C8600153B33 /* FSObjectBrowserMatrix.m */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.objc; path = FSObjectBrowserMatrix.m; sourceTree = ""; }; - 8FB524160C2205C20028B297 /* English */ = {isa = PBXFileReference; lastKnownFileType = wrapper.nib; name = English; path = FScriptIBPlugin/English.lproj/FScriptIBPluginInspector.nib; sourceTree = ""; }; - 8FB524180C2205C20028B297 /* English */ = {isa = PBXFileReference; lastKnownFileType = wrapper.nib; name = English; path = FScriptIBPlugin/English.lproj/FScriptIBPluginLibrary.nib; sourceTree = ""; }; + 8FB5060005D53C8600153B33 /* FSObjectBrowserMatrix.m */ = {isa = PBXFileReference; fileEncoding = 30; indentWidth = 8; lastKnownFileType = sourcecode.c.objc; path = FSObjectBrowserMatrix.m; sourceTree = ""; tabWidth = 8; }; 8FB9D5970F1CEE2100E10274 /* FSGlobalScope.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = FSGlobalScope.h; sourceTree = ""; }; 8FB9D5980F1CEE2100E10274 /* FSGlobalScope.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = FSGlobalScope.m; sourceTree = ""; }; 8FBB10A4044E28FD00181279 /* TestFS.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = TestFS.h; sourceTree = ""; }; @@ -3836,24 +4013,38 @@ 8FBB2FF10EEB3467007A3163 /* Number.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = Number.m; sourceTree = ""; }; 8FBC2877077B7D5200F9B4A2 /* ArrayRepFetchRequest.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ArrayRepFetchRequest.h; sourceTree = ""; }; 8FBC2884077B7D5200F9B4A2 /* ArrayRepFetchRequest.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ArrayRepFetchRequest.m; sourceTree = ""; }; + 8FC20A9F0CEE3AEE00D9871F /* AppKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = AppKit.framework; path = /System/Library/Frameworks/AppKit.framework; sourceTree = ""; }; + 8FC20ADE0CEE3B2F00D9871F /* AddressBook.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = AddressBook.framework; path = /System/Library/Frameworks/AddressBook.framework; sourceTree = ""; }; + 8FC28E9B0C4A7DDF0071E9CC /* Collaboration.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Collaboration.framework; path = /System/Library/Frameworks/Collaboration.framework; sourceTree = ""; }; + 8FC28EA80C4A7E3F0071E9CC /* CoreAudioKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreAudioKit.framework; path = /System/Library/Frameworks/CoreAudioKit.framework; sourceTree = ""; }; + 8FC28EB60C4A7E980071E9CC /* CoreVideo.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreVideo.framework; path = /System/Library/Frameworks/CoreVideo.framework; sourceTree = ""; }; + 8FC28ECD0C4A7EDC0071E9CC /* DiskArbitration.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = DiskArbitration.framework; path = /System/Library/Frameworks/DiskArbitration.framework; sourceTree = ""; }; + 8FC28FC70C4A7FDC0071E9CC /* InstantMessage.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = InstantMessage.framework; path = /System/Library/Frameworks/InstantMessage.framework; sourceTree = ""; }; + 8FC28FEE0C4A80D80071E9CC /* OSAKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = OSAKit.framework; path = /System/Library/Frameworks/OSAKit.framework; sourceTree = ""; }; + 8FC290F90C4A81630071E9CC /* PreferencePanes.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = PreferencePanes.framework; path = /System/Library/Frameworks/PreferencePanes.framework; sourceTree = ""; }; + 8FC291040C4A81A60071E9CC /* PubSub.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = PubSub.framework; path = /System/Library/Frameworks/PubSub.framework; sourceTree = ""; }; + 8FC291160C4A82070071E9CC /* Quartz.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Quartz.framework; path = /System/Library/Frameworks/Quartz.framework; sourceTree = ""; }; + 8FC2911F0C4A82730071E9CC /* RubyCocoa.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = RubyCocoa.framework; path = /System/Library/Frameworks/RubyCocoa.framework; sourceTree = ""; }; + 8FC291710C4A82D10071E9CC /* SecurityFoundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = SecurityFoundation.framework; path = /System/Library/Frameworks/SecurityFoundation.framework; sourceTree = ""; }; + 8FC2917F0C4A82F90071E9CC /* SecurityInterface.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = SecurityInterface.framework; path = /System/Library/Frameworks/SecurityInterface.framework; sourceTree = ""; }; + 8FC291920C4A83380071E9CC /* SyncServices.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = SyncServices.framework; path = /System/Library/Frameworks/SyncServices.framework; sourceTree = ""; }; 8FCA00C10EEAF34300B10420 /* Block_fscript.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Block_fscript.h; sourceTree = ""; }; 8FCA00C20EEAF34300B10420 /* Block.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = Block.m; sourceTree = ""; }; 8FCA593110883B0100F67841 /* FSNewlyAllocatedObject.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = FSNewlyAllocatedObject.h; path = "../F-Script/FSNewlyAllocatedObject.h"; sourceTree = ""; }; 8FCA593210883B0100F67841 /* FSNewlyAllocatedObject.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = FSNewlyAllocatedObject.m; path = "../F-Script/FSNewlyAllocatedObject.m"; sourceTree = ""; }; - 8FCA6B79078E0E4F005FC6B2 /* FSManagedObjectContextInspector.nib */ = {isa = PBXFileReference; lastKnownFileType = wrapper.nib; path = FSManagedObjectContextInspector.nib; sourceTree = ""; }; 8FD0A3120DD7276000E47459 /* FSCNReturn.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = FSCNReturn.h; sourceTree = ""; }; 8FD0A3130DD7276000E47459 /* FSCNReturn.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = FSCNReturn.m; sourceTree = ""; }; 8FD37B9B08472E0F00524B98 /* F-Script.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = "F-Script.app"; sourceTree = BUILT_PRODUCTS_DIR; }; 8FD37B9E08472E0F00524B98 /* FScript.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = FScript.framework; sourceTree = BUILT_PRODUCTS_DIR; }; - 8FD37B9F08472E0F00524B98 /* FSTest2.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = FSTest2.app; sourceTree = BUILT_PRODUCTS_DIR; }; 8FD37BA108472E0F00524B98 /* FSTest1.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = FSTest1.app; sourceTree = BUILT_PRODUCTS_DIR; }; 8FD7D4A60975B377009B2685 /* FSReturnSignal.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = FSReturnSignal.h; sourceTree = ""; }; 8FD7D4A70975B377009B2685 /* FSReturnSignal.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = FSReturnSignal.m; sourceTree = ""; }; + 8FD8FD92076624AC009820DF /* CoreData.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreData.framework; path = /System/Library/Frameworks/CoreData.framework; sourceTree = ""; }; 8FDCCD4E05C09F8200747C0A /* FSAttributedStringInspector.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = FSAttributedStringInspector.h; sourceTree = ""; }; 8FDCCD4F05C09F8200747C0A /* FSAttributedStringInspector.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = FSAttributedStringInspector.m; sourceTree = ""; }; - 8FDCCD7A05C0A0A000747C0A /* FSAttributedStringInspector.nib */ = {isa = PBXFileReference; lastKnownFileType = wrapper.nib; path = FSAttributedStringInspector.nib; sourceTree = ""; }; 8FDCCDBF05C0A23000747C0A /* FSNSAttributedString.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = FSNSAttributedString.h; sourceTree = ""; }; 8FDCCDC005C0A23000747C0A /* FSNSAttributedString.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = FSNSAttributedString.m; sourceTree = ""; }; + 8FDF6FCF082BD9560044FD86 /* QTKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = QTKit.framework; path = /System/Library/Frameworks/QTKit.framework; sourceTree = ""; }; 8FE3DC990D26C0FD00A1D767 /* FSTestClasses.txt */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = FSTestClasses.txt; sourceTree = ""; }; 8FE3DD200D26D49900A1D767 /* FSTestObjCClass1.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = FSTestObjCClass1.h; sourceTree = ""; }; 8FE3DD210D26D49900A1D767 /* FSTestObjCClass1.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = FSTestObjCClass1.m; sourceTree = ""; }; @@ -3869,6 +4060,7 @@ 8FE9AE12078071CC005B2CC4 /* FSObjectPointer.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = FSObjectPointer.h; sourceTree = ""; }; 8FE9AE1F078071CC005B2CC4 /* FSObjectPointer.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = FSObjectPointer.m; sourceTree = ""; }; 8FE9AE8207807269005B2CC4 /* FSObjectPointerPrivate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = FSObjectPointerPrivate.h; sourceTree = ""; }; + 8FF5AEF80961E56400A3BEA9 /* WebKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = WebKit.framework; path = /System/Library/Frameworks/WebKit.framework; sourceTree = ""; }; BA223095189F9924002C5B6A /* Accelerate.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Accelerate.framework; path = System/Library/Frameworks/Accelerate.framework; sourceTree = SDKROOT; }; BA223097189F9958002C5B6A /* AudioToolbox.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = AudioToolbox.framework; path = System/Library/Frameworks/AudioToolbox.framework; sourceTree = SDKROOT; }; BA223099189F9976002C5B6A /* AVKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = AVKit.framework; path = System/Library/Frameworks/AVKit.framework; sourceTree = SDKROOT; }; @@ -3876,6 +4068,8 @@ BA22309D189F99CC002C5B6A /* CoreLocation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreLocation.framework; path = System/Library/Frameworks/CoreLocation.framework; sourceTree = SDKROOT; }; BA22309F189F9A14002C5B6A /* AddressBook.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = AddressBook.framework; path = System/Library/Frameworks/AddressBook.framework; sourceTree = SDKROOT; }; BA2230A0189F9A14002C5B6A /* AGL.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = AGL.framework; path = System/Library/Frameworks/AGL.framework; sourceTree = SDKROOT; }; + BA2230A1189F9A14002C5B6A /* AppKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = AppKit.framework; path = System/Library/Frameworks/AppKit.framework; sourceTree = SDKROOT; }; + BA2230A2189F9A14002C5B6A /* AppKitScripting.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = AppKitScripting.framework; path = System/Library/Frameworks/AppKitScripting.framework; sourceTree = SDKROOT; }; BA2230A3189F9A14002C5B6A /* AppleScriptKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = AppleScriptKit.framework; path = System/Library/Frameworks/AppleScriptKit.framework; sourceTree = SDKROOT; }; BA2230A4189F9A14002C5B6A /* AppleScriptObjC.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = AppleScriptObjC.framework; path = System/Library/Frameworks/AppleScriptObjC.framework; sourceTree = SDKROOT; }; BA2230A5189F9A14002C5B6A /* AppleShareClientCore.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = AppleShareClientCore.framework; path = System/Library/Frameworks/AppleShareClientCore.framework; sourceTree = SDKROOT; }; @@ -3941,6 +4135,10 @@ BA223115189F9A9A002C5B6A /* TWAIN.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = TWAIN.framework; path = System/Library/Frameworks/TWAIN.framework; sourceTree = SDKROOT; }; BA223116189F9A9A002C5B6A /* VideoDecodeAcceleration.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = VideoDecodeAcceleration.framework; path = System/Library/Frameworks/VideoDecodeAcceleration.framework; sourceTree = SDKROOT; }; BA223117189F9A9A002C5B6A /* WebKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = WebKit.framework; path = System/Library/Frameworks/WebKit.framework; sourceTree = SDKROOT; }; + BA22313C189F9AA9002C5B6A /* DTPerformanceSession.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = DTPerformanceSession.framework; path = Library/Frameworks/DTPerformanceSession.framework; sourceTree = DEVELOPER_DIR; }; + BA22313D189F9AA9002C5B6A /* InterfaceBuilderKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = InterfaceBuilderKit.framework; path = Library/Frameworks/InterfaceBuilderKit.framework; sourceTree = DEVELOPER_DIR; }; + BA22313E189F9AA9002C5B6A /* SenTestingKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = SenTestingKit.framework; path = Library/Frameworks/SenTestingKit.framework; sourceTree = DEVELOPER_DIR; }; + BA22313F189F9AA9002C5B6A /* XCTest.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = XCTest.framework; path = Library/Frameworks/XCTest.framework; sourceTree = DEVELOPER_DIR; }; BA223144189F9ABD002C5B6A /* LDAP.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = LDAP.framework; path = System/Library/Frameworks/LDAP.framework; sourceTree = SDKROOT; }; BA223147189F9AC5002C5B6A /* GLUT.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = GLUT.framework; path = System/Library/Frameworks/GLUT.framework; sourceTree = SDKROOT; }; BA223148189F9AC5002C5B6A /* GSS.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = GSS.framework; path = System/Library/Frameworks/GSS.framework; sourceTree = SDKROOT; }; @@ -3955,8 +4153,11 @@ BA223151189F9AC6002C5B6A /* IOBluetoothUI.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = IOBluetoothUI.framework; path = System/Library/Frameworks/IOBluetoothUI.framework; sourceTree = SDKROOT; }; BA223152189F9AC6002C5B6A /* IOKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = IOKit.framework; path = System/Library/Frameworks/IOKit.framework; sourceTree = SDKROOT; }; BA223153189F9AC6002C5B6A /* IOSurface.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = IOSurface.framework; path = System/Library/Frameworks/IOSurface.framework; sourceTree = SDKROOT; }; + BA223154189F9AC6002C5B6A /* JavaFrameEmbedding.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = JavaFrameEmbedding.framework; path = System/Library/Frameworks/JavaFrameEmbedding.framework; sourceTree = SDKROOT; }; BA223155189F9AC6002C5B6A /* JavaScriptCore.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = JavaScriptCore.framework; path = System/Library/Frameworks/JavaScriptCore.framework; sourceTree = SDKROOT; }; + BA223156189F9AC6002C5B6A /* JavaVM.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = JavaVM.framework; path = System/Library/Frameworks/JavaVM.framework; sourceTree = SDKROOT; }; BA223157189F9AC6002C5B6A /* Kerberos.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Kerberos.framework; path = System/Library/Frameworks/Kerberos.framework; sourceTree = SDKROOT; }; + BA223158189F9AC7002C5B6A /* Kernel.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Kernel.framework; path = System/Library/Frameworks/Kernel.framework; sourceTree = SDKROOT; }; BA223159189F9AC7002C5B6A /* LatentSemanticMapping.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = LatentSemanticMapping.framework; path = System/Library/Frameworks/LatentSemanticMapping.framework; sourceTree = SDKROOT; }; BA22316F189F9AD3002C5B6A /* ExceptionHandling.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = ExceptionHandling.framework; path = System/Library/Frameworks/ExceptionHandling.framework; sourceTree = SDKROOT; }; BA223170189F9AD3002C5B6A /* ForceFeedback.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = ForceFeedback.framework; path = System/Library/Frameworks/ForceFeedback.framework; sourceTree = SDKROOT; }; @@ -3965,21 +4166,8 @@ BA223173189F9AD3002C5B6A /* GameController.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = GameController.framework; path = System/Library/Frameworks/GameController.framework; sourceTree = SDKROOT; }; BA223360189FA403002C5B6A /* F-Script.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = "F-Script.app"; sourceTree = BUILT_PRODUCTS_DIR; }; BA223520189FA412002C5B6A /* F-Script.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = "F-Script.app"; sourceTree = BUILT_PRODUCTS_DIR; }; - BA223668189FA429002C5B6A /* FScript.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = FScript.framework; sourceTree = BUILT_PRODUCTS_DIR; }; + BA223668189FA429002C5B6A /* FScriptFramework.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = FScriptFramework.framework; sourceTree = BUILT_PRODUCTS_DIR; }; BA2237B0189FA432002C5B6A /* FScript.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = FScript.framework; sourceTree = BUILT_PRODUCTS_DIR; }; - E29F5D8A19FD93FD00AD90CF /* F-Script.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = "F-Script.app"; sourceTree = BUILT_PRODUCTS_DIR; }; - E29F5D9219FD944300AD90CF /* CloudKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CloudKit.framework; path = System/Library/Frameworks/CloudKit.framework; sourceTree = SDKROOT; }; - E29F5D9319FD944400AD90CF /* CoreBluetooth.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreBluetooth.framework; path = System/Library/Frameworks/CoreBluetooth.framework; sourceTree = SDKROOT; }; - E29F5D9419FD944400AD90CF /* CryptoTokenKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CryptoTokenKit.framework; path = System/Library/Frameworks/CryptoTokenKit.framework; sourceTree = SDKROOT; }; - E29F5D9519FD944400AD90CF /* FinderSync.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = FinderSync.framework; path = System/Library/Frameworks/FinderSync.framework; sourceTree = SDKROOT; }; - E29F5D9619FD944500AD90CF /* Hypervisor.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Hypervisor.framework; path = System/Library/Frameworks/Hypervisor.framework; sourceTree = SDKROOT; }; - E29F5D9719FD944500AD90CF /* LocalAuthentication.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = LocalAuthentication.framework; path = System/Library/Frameworks/LocalAuthentication.framework; sourceTree = SDKROOT; }; - E29F5D9819FD944500AD90CF /* MultipeerConnectivity.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = MultipeerConnectivity.framework; path = System/Library/Frameworks/MultipeerConnectivity.framework; sourceTree = SDKROOT; }; - E29F5D9919FD944600AD90CF /* NotificationCenter.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = NotificationCenter.framework; path = System/Library/Frameworks/NotificationCenter.framework; sourceTree = SDKROOT; }; - E29F5D9A19FD944600AD90CF /* Python.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Python.framework; path = System/Library/Frameworks/Python.framework; sourceTree = SDKROOT; }; - E29F5D9B19FD944600AD90CF /* vmnet.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = vmnet.framework; path = System/Library/Frameworks/vmnet.framework; sourceTree = SDKROOT; }; - E29F5EEC19FD94FC00AD90CF /* FScript.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = FScript.framework; sourceTree = BUILT_PRODUCTS_DIR; }; - E29F5F6119FD98F600AD90CF /* AppKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = AppKit.framework; path = System/Library/Frameworks/AppKit.framework; sourceTree = SDKROOT; }; E2DBA31C161CA57C0035A675 /* EventKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = EventKit.framework; path = System/Library/Frameworks/EventKit.framework; sourceTree = SDKROOT; }; E2DBA31F161CA5D00035A675 /* Accounts.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Accounts.framework; path = System/Library/Frameworks/Accounts.framework; sourceTree = SDKROOT; }; E2DBA321161CA60C0035A675 /* AudioVideoBridging.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = AudioVideoBridging.framework; path = System/Library/Frameworks/AudioVideoBridging.framework; sourceTree = SDKROOT; }; @@ -3989,11 +4177,46 @@ E2DBA329161CA6600035A675 /* Social.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Social.framework; path = System/Library/Frameworks/Social.framework; sourceTree = SDKROOT; }; E2DBA32B161CA6660035A675 /* VideoToolbox.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = VideoToolbox.framework; path = System/Library/Frameworks/VideoToolbox.framework; sourceTree = SDKROOT; }; E2DBA32D161CA7180035A675 /* AVFoundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = AVFoundation.framework; path = System/Library/Frameworks/AVFoundation.framework; sourceTree = SDKROOT; }; + ED051F431A234DB6000284E2 /* metamacrosorig.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = metamacrosorig.h; sourceTree = ""; }; + ED3004E51A1A86EF00675D94 /* FSObjectInspectorViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = FSObjectInspectorViewController.h; sourceTree = ""; }; + ED3004E61A1A86EF00675D94 /* FSObjectInspectorViewController.m */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 8; lastKnownFileType = sourcecode.c.objc; path = FSObjectInspectorViewController.m; sourceTree = ""; tabWidth = 8; }; + ED3004E71A1A86EF00675D94 /* FSObjectInspectorViewController.xib */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file.xib; path = FSObjectInspectorViewController.xib; sourceTree = ""; }; + ED3CB63F1A1E5B3300771077 /* FSColorWell.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = FSColorWell.h; sourceTree = ""; }; + ED3CB6401A1E5B3300771077 /* FSColorWell.m */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 8; lastKnownFileType = sourcecode.c.objc; path = FSColorWell.m; sourceTree = ""; tabWidth = 8; }; + ED68BE411A35E38F00968430 /* FSObjectBrowser.xib */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file.xib; path = FSObjectBrowser.xib; sourceTree = ""; }; + ED68BE4C1A35E94B00968430 /* FSObjectBrowserWindow.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = FSObjectBrowserWindow.h; sourceTree = ""; }; + ED68BE4D1A35E94B00968430 /* FSObjectBrowserWindow.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = FSObjectBrowserWindow.m; sourceTree = ""; }; + ED8222D41A194FD600C42C72 /* FSObjectInspectorViewModelItem.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = FSObjectInspectorViewModelItem.h; sourceTree = ""; }; + ED8222D51A194FD600C42C72 /* FSObjectInspectorViewModelItem.m */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 8; lastKnownFileType = sourcecode.c.objc; path = FSObjectInspectorViewModelItem.m; sourceTree = ""; tabWidth = 8; }; + ED8222E51A19554F00C42C72 /* FSObjectEnumInfo.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = FSObjectEnumInfo.h; sourceTree = ""; }; + ED8222E61A19554F00C42C72 /* FSObjectEnumInfo.m */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 8; lastKnownFileType = sourcecode.c.objc; path = FSObjectEnumInfo.m; sourceTree = ""; tabWidth = 8; }; + ED83191B1A1BC2B500290EE2 /* FSUtils.h */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 8; lastKnownFileType = sourcecode.c.h; path = FSUtils.h; sourceTree = ""; tabWidth = 8; }; + ED83191C1A1BC2B500290EE2 /* FSUtils.m */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 8; lastKnownFileType = sourcecode.c.objc; path = FSUtils.m; sourceTree = ""; tabWidth = 8; }; + ED8319301A1BFA7400290EE2 /* FSObjectInspectorViewController+NonArc.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "FSObjectInspectorViewController+NonArc.h"; sourceTree = ""; }; + ED8319311A1BFA7400290EE2 /* FSObjectInspectorViewController+NonArc.m */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 8; lastKnownFileType = sourcecode.c.objc; path = "FSObjectInspectorViewController+NonArc.m"; sourceTree = ""; tabWidth = 8; }; + EDA22BDE1A24C28D0093DB91 /* view.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; name = view.png; path = Resources/view.png; sourceTree = ""; }; + EDA22BDF1A24C28D0093DB91 /* window.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; name = window.png; path = Resources/window.png; sourceTree = ""; }; + EDA6AC3E1A1F407C001CD1F2 /* FSObjectInspectorOutlineView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = FSObjectInspectorOutlineView.h; sourceTree = ""; }; + EDA6AC3F1A1F407C001CD1F2 /* FSObjectInspectorOutlineView.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = FSObjectInspectorOutlineView.m; sourceTree = ""; }; + EDA6AC531A1F52E6001CD1F2 /* FSObjectInspectorOptionsViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = FSObjectInspectorOptionsViewController.h; sourceTree = ""; }; + EDA6AC541A1F52E6001CD1F2 /* FSObjectInspectorOptionsViewController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = FSObjectInspectorOptionsViewController.m; sourceTree = ""; }; + EDA6AC551A1F52E6001CD1F2 /* FSObjectInspectorOptionsViewController.xib */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file.xib; path = FSObjectInspectorOptionsViewController.xib; sourceTree = ""; }; + EDC2C8DC1A1A943600942777 /* FSDetailedObjectInspector.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = FSDetailedObjectInspector.h; sourceTree = ""; }; + EDC2C8DD1A1A943600942777 /* FSDetailedObjectInspector.m */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 8; lastKnownFileType = sourcecode.c.objc; path = FSDetailedObjectInspector.m; sourceTree = ""; tabWidth = 8; }; + EDC2C8EE1A1AA34D00942777 /* FSObjectInspectorBackgroundView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = FSObjectInspectorBackgroundView.h; sourceTree = ""; }; + EDC2C8EF1A1AA34D00942777 /* FSObjectInspectorBackgroundView.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = FSObjectInspectorBackgroundView.m; sourceTree = ""; }; + EDC2CACD1A1AA50D00942777 /* F-Script.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = "F-Script.app"; sourceTree = BUILT_PRODUCTS_DIR; }; + EDC2CC271A1AA52500942777 /* FScript.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = FScript.framework; sourceTree = BUILT_PRODUCTS_DIR; }; + EDE508D119DD4D310012F16A /* FSConsole.xib */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file.xib; path = FSConsole.xib; sourceTree = ""; }; + EDE508DA19DD4FDC0012F16A /* FScriptPreferences.xib */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file.xib; path = FScriptPreferences.xib; sourceTree = ""; }; + EDFB2FF21A17E345002C8DD7 /* FSObjectBrowserButtonsInspector.xib */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file.xib; path = FSObjectBrowserButtonsInspector.xib; sourceTree = ""; }; + EDFB302E1A18CA26002C8DD7 /* metamacros.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = metamacros.h; sourceTree = ""; }; F501AF7B021497C401A75EC5 /* FScriptTextView.m */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.objc; path = FScriptTextView.m; sourceTree = ""; }; F505647F02DF417501FE0326 /* Pointer.m */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.objc; path = Pointer.m; sourceTree = ""; }; F505648002DF417501FE0326 /* Pointer.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = Pointer.h; sourceTree = ""; }; F5073A2002FC5400013656B0 /* FSIdentifierFormatter.m */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.objc; path = FSIdentifierFormatter.m; sourceTree = ""; }; F5073A2102FC5400013656B0 /* FSIdentifierFormatter.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = FSIdentifierFormatter.h; sourceTree = ""; }; + F51B24640271980D01DB4759 /* ExceptionHandling.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = ExceptionHandling.framework; path = /System/Library/Frameworks/ExceptionHandling.framework; sourceTree = ""; }; F51CA01401B013C401BFBB24 /* FSNSDistantObject.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = FSNSDistantObject.h; sourceTree = ""; }; F51CA01501B013C401BFBB24 /* FSNSDistantObject.m */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.objc; path = FSNSDistantObject.m; sourceTree = ""; }; F52EECA6036210E2016141BB /* FSConstantListBuilder.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = FSConstantListBuilder.h; sourceTree = ""; }; @@ -4010,10 +4233,13 @@ F538EF7F0279FD3C01345511 /* FSTask.m */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.objc; path = FSTask.m; sourceTree = ""; }; F54B55B9036B45770140C608 /* FSImageInspector.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = FSImageInspector.h; sourceTree = ""; }; F54B55BA036B45770140C608 /* FSImageInspector.m */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.objc; path = FSImageInspector.m; sourceTree = ""; }; - F54B55C3036B48690140C608 /* FSImageInspector.nib */ = {isa = PBXFileReference; lastKnownFileType = wrapper.nib; path = FSImageInspector.nib; sourceTree = ""; }; F54B55C8036B4A330140C608 /* FSNSImage.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = FSNSImage.h; sourceTree = ""; }; F54B55C9036B4A330140C608 /* FSNSImage.m */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.objc; path = FSNSImage.m; sourceTree = ""; }; F54CA17602FB2CAF01C25A35 /* FSInterpreterPrivate.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = FSInterpreterPrivate.h; sourceTree = ""; }; + F55D42D903583F2601B9E934 /* DiscRecording.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = DiscRecording.framework; path = /System/Library/Frameworks/DiscRecording.framework; sourceTree = ""; }; + F55D42DA03583F2601B9E934 /* DiscRecordingUI.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = DiscRecordingUI.framework; path = /System/Library/Frameworks/DiscRecordingUI.framework; sourceTree = ""; }; + F55D431803583F8501B9E934 /* IOBluetooth.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = IOBluetooth.framework; path = /System/Library/Frameworks/IOBluetooth.framework; sourceTree = ""; }; + F55D431903583F8501B9E934 /* IOBluetoothUI.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = IOBluetoothUI.framework; path = /System/Library/Frameworks/IOBluetoothUI.framework; sourceTree = ""; }; F55D44C40358A88801B9E934 /* FSKeyedUnarchiver.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = FSKeyedUnarchiver.h; sourceTree = ""; }; F55D44C50358A88801B9E934 /* FSKeyedUnarchiver.m */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.objc; path = FSKeyedUnarchiver.m; sourceTree = ""; }; F55D44CE0358B5D201B9E934 /* FSKeyedArchiver.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = FSKeyedArchiver.h; sourceTree = ""; }; @@ -4021,8 +4247,6 @@ F58090CF03755FC701AED2EF /* FSObjectBrowserToolbarItem.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = FSObjectBrowserToolbarItem.h; sourceTree = ""; }; F58090D003755FC701AED2EF /* FSObjectBrowserToolbarItem.m */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.objc; path = FSObjectBrowserToolbarItem.m; sourceTree = ""; }; F58090EB0375648201AED2EF /* ReadMe.txt */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = text; path = ReadMe.txt; sourceTree = ""; }; - F58090FC03756D2401AED2EF /* ArrayTableView.nib */ = {isa = PBXFileReference; lastKnownFileType = wrapper.nib; path = ArrayTableView.nib; sourceTree = ""; }; - F598CDB8025CF7E5011B2E41 /* English */ = {isa = PBXFileReference; lastKnownFileType = wrapper.nib; name = English; path = "F-Script/English.lproj/fs.nib"; sourceTree = ""; }; F5A25E260357B373011A39F8 /* FSSystemPrivate.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = FSSystemPrivate.h; sourceTree = ""; }; F5D4BE29038511FF01461810 /* ArrayRepBoolean.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = ArrayRepBoolean.h; sourceTree = ""; }; F5D4BE2A038511FF01461810 /* ArrayRepBoolean.m */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.objc; path = ArrayRepBoolean.m; sourceTree = ""; }; @@ -4040,17 +4264,11 @@ F5F1A9F8022E9A96011160FE /* fs_main.m */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.objc; path = fs_main.m; sourceTree = ""; }; F5F1A9F9022E9A96011160FE /* FScriptAppController.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = FScriptAppController.h; sourceTree = ""; }; F5F1A9FA022E9A96011160FE /* FScriptAppController.m */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.objc; path = FScriptAppController.m; sourceTree = ""; }; - F5F1A9FB022E9A96011160FE /* FScriptAppPreference.nib */ = {isa = PBXFileReference; lastKnownFileType = wrapper.nib; path = FScriptAppPreference.nib; sourceTree = ""; }; F5F1AAAE022E9E4F011160FE /* DOCustom.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = DOCustom.h; sourceTree = ""; }; F5F1AAAF022E9E4F011160FE /* DOCustom.m */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.objc; path = DOCustom.m; sourceTree = ""; }; F5F1AAB0022E9E4F011160FE /* main.m */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.objc; path = main.m; sourceTree = ""; }; F5F1AAB1022E9E4F011160FE /* MainMenu.nib */ = {isa = PBXFileReference; lastKnownFileType = wrapper.nib; path = MainMenu.nib; sourceTree = ""; }; - F5F1AAB7022E9E90011160FE /* DOCustom.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = DOCustom.h; sourceTree = ""; }; - F5F1AAB8022E9E90011160FE /* DOCustom.m */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.objc; path = DOCustom.m; sourceTree = ""; }; - F5F1AAB9022E9E90011160FE /* main.m */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.objc; path = main.m; sourceTree = ""; }; - F5F1AABA022E9E90011160FE /* MainMenu.nib */ = {isa = PBXFileReference; lastKnownFileType = wrapper.nib; path = MainMenu.nib; sourceTree = ""; }; F5F856C002EB281C01F7E6F0 /* PointerPrivate.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = PointerPrivate.h; sourceTree = ""; }; - F5F9569002B272A30121B3BA /* FSObjectBrowserButtonsInspector.nib */ = {isa = PBXFileReference; lastKnownFileType = wrapper.nib; path = FSObjectBrowserButtonsInspector.nib; sourceTree = ""; }; F5F9569502B272FB0121B3BA /* FSObjectBrowserButtonsInspector.m */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.objc; path = FSObjectBrowserButtonsInspector.m; sourceTree = ""; }; F5F9569602B272FB0121B3BA /* FSObjectBrowserButtonsInspector.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = FSObjectBrowserButtonsInspector.h; sourceTree = ""; }; F5FA8A6C0215D44C01AFEEFD /* FSObjectBrowserArgumentPanel.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = FSObjectBrowserArgumentPanel.h; sourceTree = ""; }; @@ -4063,8 +4281,10 @@ isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( - E29F5F9219FD9E6A00AD90CF /* ScriptingBridge.framework in Frameworks */, - E29F5F8619FD9C3200AD90CF /* ExceptionHandling.framework in Frameworks */, + EDE508D019DD4AA00012F16A /* InterfaceBuilderKit.framework in Frameworks */, + 8F86086C0CF9F0AB00D2DC99 /* ScriptingBridge.framework in Frameworks */, + 8FB5239B0C21FE330028B297 /* ExceptionHandling.framework in Frameworks */, + 8FB523970C21FE030028B297 /* Cocoa.framework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -4072,20 +4292,22 @@ isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( - E29F5F7519FD99F000AD90CF /* ScriptingBridge.framework in Frameworks */, - E29F5F7419FD99E300AD90CF /* AppKit.framework in Frameworks */, - E29F5F7319FD99D600AD90CF /* InputMethodKit.framework in Frameworks */, - E29F5F7219FD99CE00AD90CF /* AudioUnit.framework in Frameworks */, - E29F5F7119FD99C500AD90CF /* CalendarStore.framework in Frameworks */, - E29F5F7019FD99BD00AD90CF /* QuartzCore.framework in Frameworks */, - E29F5F6F19FD99B500AD90CF /* WebKit.framework in Frameworks */, - E29F5F6E19FD99AC00AD90CF /* Cocoa.framework in Frameworks */, - E29F5F6D19FD99A400AD90CF /* IOBluetoothUI.framework in Frameworks */, - E29F5F6C19FD999B00AD90CF /* IOBluetooth.framework in Frameworks */, - E29F5F6B19FD999200AD90CF /* DiscRecording.framework in Frameworks */, - E29F5F6A19FD998A00AD90CF /* ExceptionHandling.framework in Frameworks */, - E29F5F6819FD997800AD90CF /* QTKit.framework in Frameworks */, - E29F5F6719FD996F00AD90CF /* Automator.framework in Frameworks */, + 8FC20BDD0CEE3DC000D9871F /* QTKit.framework in Frameworks */, + 8F6DA6C4055FC6980050409A /* JavaVM.framework in Frameworks */, + 8F6DA6C5055FC6980050409A /* ExceptionHandling.framework in Frameworks */, + 8F6DA6C8055FC6980050409A /* DiscRecording.framework in Frameworks */, + 8F6DA6CA055FC6980050409A /* IOBluetooth.framework in Frameworks */, + 8F6DA6CB055FC6980050409A /* IOBluetoothUI.framework in Frameworks */, + 8F85274B07F6016900E706F5 /* Cocoa.framework in Frameworks */, + 8FF5AEFC0961E56400A3BEA9 /* WebKit.framework in Frameworks */, + 8F18731A0B99C7AA003974F2 /* QuartzCore.framework in Frameworks */, + 8F552A7A0C00A6D4002B6067 /* CalendarStore.framework in Frameworks */, + 8F589B620CE38B3B00C1D756 /* AudioUnit.framework in Frameworks */, + 8F589B820CE38B7100C1D756 /* Automator.framework in Frameworks */, + 8F589B9A0CE38CAB00C1D756 /* InputMethodKit.framework in Frameworks */, + 8FC20AA00CEE3AEE00D9871F /* AppKit.framework in Frameworks */, + 8F8607E50CF9827600D2DC99 /* ScriptingBridge.framework in Frameworks */, + 8FC20ADF0CEE3B2F00D9871F /* AddressBook.framework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -4093,7 +4315,7 @@ isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( - E29F5F6619FD995800AD90CF /* AppKit.framework in Frameworks */, + 8FC20AA10CEE3AEE00D9871F /* AppKit.framework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -4101,15 +4323,12 @@ isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( - E29F5F6519FD993000AD90CF /* AppKit.framework in Frameworks */, BA223192189F9B2A002C5B6A /* Accelerate.framework in Frameworks */, - E29F5F9119FD9E5C00AD90CF /* Scripting.framework in Frameworks */, BA223194189F9B2A002C5B6A /* AddressBook.framework in Frameworks */, BA223195189F9B2A002C5B6A /* AGL.framework in Frameworks */, + BA223196189F9B2A002C5B6A /* AppKit.framework in Frameworks */, BA223198189F9B2A002C5B6A /* AppleScriptKit.framework in Frameworks */, - E29F5F8E19FD9E4500AD90CF /* Ruby.framework in Frameworks */, BA223199189F9B2A002C5B6A /* AppleScriptObjC.framework in Frameworks */, - BA22319A189F9B2A002C5B6A /* AppleShareClientCore.framework in Frameworks */, BA22319B189F9B2A002C5B6A /* ApplicationServices.framework in Frameworks */, BA22319C189F9B2A002C5B6A /* AudioToolbox.framework in Frameworks */, BA22319D189F9B2A002C5B6A /* AudioUnit.framework in Frameworks */, @@ -4117,17 +4336,20 @@ BA2231A0189F9B2A002C5B6A /* AVFoundation.framework in Frameworks */, BA223180189F9B20002C5B6A /* CalendarStore.framework in Frameworks */, BA223181189F9B20002C5B6A /* Carbon.framework in Frameworks */, + BA223182189F9B20002C5B6A /* CFNetwork.framework in Frameworks */, BA223183189F9B20002C5B6A /* Cocoa.framework in Frameworks */, BA223184189F9B20002C5B6A /* Collaboration.framework in Frameworks */, BA223185189F9B20002C5B6A /* CoreAudio.framework in Frameworks */, BA223186189F9B20002C5B6A /* CoreAudioKit.framework in Frameworks */, BA223187189F9B20002C5B6A /* CoreData.framework in Frameworks */, BA223188189F9B20002C5B6A /* CoreFoundation.framework in Frameworks */, + BA223189189F9B20002C5B6A /* CoreGraphics.framework in Frameworks */, BA22318A189F9B20002C5B6A /* CoreLocation.framework in Frameworks */, BA22318B189F9B20002C5B6A /* CoreMedia.framework in Frameworks */, BA22318C189F9B20002C5B6A /* CoreMediaIO.framework in Frameworks */, BA22318D189F9B20002C5B6A /* CoreMIDI.framework in Frameworks */, BA22318E189F9B20002C5B6A /* CoreServices.framework in Frameworks */, + BA22318F189F9B20002C5B6A /* CoreText.framework in Frameworks */, BA223190189F9B20002C5B6A /* CoreVideo.framework in Frameworks */, BA223191189F9B20002C5B6A /* CoreWLAN.framework in Frameworks */, BA223179189F9AF4002C5B6A /* DirectoryService.framework in Frameworks */, @@ -4143,16 +4365,18 @@ BA22315B189F9AC7002C5B6A /* GSS.framework in Frameworks */, BA22315C189F9AC7002C5B6A /* ICADevices.framework in Frameworks */, BA22315D189F9AC7002C5B6A /* ImageCaptureCore.framework in Frameworks */, + BA22315E189F9AC7002C5B6A /* ImageIO.framework in Frameworks */, BA22315F189F9AC7002C5B6A /* IMServicePlugIn.framework in Frameworks */, BA223160189F9AC7002C5B6A /* InputMethodKit.framework in Frameworks */, BA223161189F9AC7002C5B6A /* InstallerPlugins.framework in Frameworks */, BA223162189F9AC7002C5B6A /* InstantMessage.framework in Frameworks */, BA223163189F9AC7002C5B6A /* IOBluetooth.framework in Frameworks */, BA223164189F9AC7002C5B6A /* IOBluetoothUI.framework in Frameworks */, - E29F5F7C19FD9BDB00AD90CF /* DrawSprocket.framework in Frameworks */, BA223165189F9AC7002C5B6A /* IOKit.framework in Frameworks */, BA223166189F9AC7002C5B6A /* IOSurface.framework in Frameworks */, + BA223167189F9AC7002C5B6A /* JavaFrameEmbedding.framework in Frameworks */, BA223168189F9AC7002C5B6A /* JavaScriptCore.framework in Frameworks */, + BA223169189F9AC7002C5B6A /* JavaVM.framework in Frameworks */, BA22316A189F9AC7002C5B6A /* Kerberos.framework in Frameworks */, BA22316C189F9AC7002C5B6A /* LatentSemanticMapping.framework in Frameworks */, BA223145189F9ABD002C5B6A /* LDAP.framework in Frameworks */, @@ -4169,7 +4393,6 @@ BA223126189F9A9A002C5B6A /* Quartz.framework in Frameworks */, BA223127189F9A9A002C5B6A /* QuartzCore.framework in Frameworks */, BA223128189F9A9A002C5B6A /* QuickLook.framework in Frameworks */, - BA22312B189F9A9A002C5B6A /* RubyCocoa.framework in Frameworks */, BA22312C189F9A9A002C5B6A /* ScreenSaver.framework in Frameworks */, BA22312E189F9A9A002C5B6A /* ScriptingBridge.framework in Frameworks */, BA22312F189F9A9A002C5B6A /* Security.framework in Frameworks */, @@ -4181,11 +4404,9 @@ BA223136189F9A9B002C5B6A /* SystemConfiguration.framework in Frameworks */, BA223137189F9A9B002C5B6A /* Tcl.framework in Frameworks */, BA223138189F9A9B002C5B6A /* Tk.framework in Frameworks */, - E29F5F8C19FD9E3C00AD90CF /* QuickTime.framework in Frameworks */, BA223139189F9A9B002C5B6A /* TWAIN.framework in Frameworks */, BA22313A189F9A9B002C5B6A /* VideoDecodeAcceleration.framework in Frameworks */, BA22313B189F9A9B002C5B6A /* WebKit.framework in Frameworks */, - E29F5F7F19FD9C1600AD90CF /* DVComponentGlue.framework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -4193,8 +4414,8 @@ isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( - E29F5F7719FD9ACC00AD90CF /* Cocoa.framework in Frameworks */, - E29F5F8219FD9C2D00AD90CF /* ExceptionHandling.framework in Frameworks */, + 8F42D4100A0F8CC30032461E /* Cocoa.framework in Frameworks */, + 8F6DA9D9055FC71F0050409A /* ExceptionHandling.framework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -4202,18 +4423,16 @@ isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( - E29F5F7619FD9A4F00AD90CF /* AVFoundation.framework in Frameworks */, - E29F5F6419FD992600AD90CF /* AppKit.framework in Frameworks */, BA2232F6189FA403002C5B6A /* Accelerate.framework in Frameworks */, BA2232F7189FA403002C5B6A /* Accounts.framework in Frameworks */, BA2232F8189FA403002C5B6A /* AddressBook.framework in Frameworks */, BA2232F9189FA403002C5B6A /* AGL.framework in Frameworks */, + BA2232FA189FA403002C5B6A /* AppKit.framework in Frameworks */, BA2232FB189FA403002C5B6A /* AppleScriptKit.framework in Frameworks */, BA2232FC189FA403002C5B6A /* AppleScriptObjC.framework in Frameworks */, BA2232FD189FA403002C5B6A /* AppleShareClientCore.framework in Frameworks */, BA2232FE189FA403002C5B6A /* ApplicationServices.framework in Frameworks */, BA2232FF189FA403002C5B6A /* AudioToolbox.framework in Frameworks */, - E29F5F7D19FD9BDC00AD90CF /* DrawSprocket.framework in Frameworks */, BA223300189FA403002C5B6A /* AudioUnit.framework in Frameworks */, BA223301189FA403002C5B6A /* AudioVideoBridging.framework in Frameworks */, BA223302189FA403002C5B6A /* Automator.framework in Frameworks */, @@ -4230,7 +4449,6 @@ BA22330F189FA403002C5B6A /* CoreLocation.framework in Frameworks */, BA223310189FA403002C5B6A /* CoreMedia.framework in Frameworks */, BA223311189FA403002C5B6A /* CoreMediaIO.framework in Frameworks */, - E29F5F8D19FD9E4400AD90CF /* Ruby.framework in Frameworks */, BA223312189FA403002C5B6A /* CoreMIDI.framework in Frameworks */, BA223313189FA403002C5B6A /* CoreServices.framework in Frameworks */, BA223314189FA403002C5B6A /* CoreText.framework in Frameworks */, @@ -4243,7 +4461,6 @@ BA22331B189FA403002C5B6A /* DVDPlayback.framework in Frameworks */, BA22331C189FA403002C5B6A /* EventKit.framework in Frameworks */, BA22331D189FA403002C5B6A /* ExceptionHandling.framework in Frameworks */, - E29F5F8B19FD9E3B00AD90CF /* QuickTime.framework in Frameworks */, BA22331E189FA403002C5B6A /* ForceFeedback.framework in Frameworks */, BA22331F189FA403002C5B6A /* Foundation.framework in Frameworks */, BA223320189FA403002C5B6A /* FWAUserLib.framework in Frameworks */, @@ -4261,8 +4478,9 @@ BA22332D189FA403002C5B6A /* IOBluetoothUI.framework in Frameworks */, BA22332E189FA403002C5B6A /* IOKit.framework in Frameworks */, BA22332F189FA403002C5B6A /* IOSurface.framework in Frameworks */, - E29F5F9019FD9E5B00AD90CF /* Scripting.framework in Frameworks */, + BA223330189FA403002C5B6A /* JavaFrameEmbedding.framework in Frameworks */, BA223331189FA403002C5B6A /* JavaScriptCore.framework in Frameworks */, + BA223332189FA403002C5B6A /* JavaVM.framework in Frameworks */, BA223333189FA403002C5B6A /* Kerberos.framework in Frameworks */, BA223334189FA403002C5B6A /* LatentSemanticMapping.framework in Frameworks */, BA223335189FA403002C5B6A /* GLKit.framework in Frameworks */, @@ -4272,7 +4490,6 @@ BA22333C189FA403002C5B6A /* OpenAL.framework in Frameworks */, BA22333D189FA403002C5B6A /* OpenCL.framework in Frameworks */, BA22333E189FA403002C5B6A /* OpenDirectory.framework in Frameworks */, - E29F5F8019FD9C1700AD90CF /* DVComponentGlue.framework in Frameworks */, BA22333F189FA403002C5B6A /* OpenGL.framework in Frameworks */, BA223340189FA403002C5B6A /* OSAKit.framework in Frameworks */, BA223341189FA403002C5B6A /* PCSC.framework in Frameworks */, @@ -4307,15 +4524,13 @@ isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( - E29F5F6319FD991E00AD90CF /* AppKit.framework in Frameworks */, BA2234B6189FA412002C5B6A /* Accelerate.framework in Frameworks */, BA2234B7189FA412002C5B6A /* Accounts.framework in Frameworks */, BA2234B8189FA412002C5B6A /* AddressBook.framework in Frameworks */, BA2234B9189FA412002C5B6A /* AGL.framework in Frameworks */, + BA2234BA189FA412002C5B6A /* AppKit.framework in Frameworks */, BA2234BB189FA412002C5B6A /* AppleScriptKit.framework in Frameworks */, BA2234BC189FA412002C5B6A /* AppleScriptObjC.framework in Frameworks */, - E29F5F8A19FD9E3A00AD90CF /* QuickTime.framework in Frameworks */, - BA2234BD189FA412002C5B6A /* AppleShareClientCore.framework in Frameworks */, BA2234BE189FA412002C5B6A /* ApplicationServices.framework in Frameworks */, BA2234BF189FA412002C5B6A /* AudioToolbox.framework in Frameworks */, BA2234C0189FA412002C5B6A /* AudioUnit.framework in Frameworks */, @@ -4344,7 +4559,6 @@ BA2234D7189FA412002C5B6A /* DirectoryService.framework in Frameworks */, BA2234D8189FA412002C5B6A /* DiscRecording.framework in Frameworks */, BA2234D9189FA412002C5B6A /* DiscRecordingUI.framework in Frameworks */, - E29F5F8F19FD9E5B00AD90CF /* Scripting.framework in Frameworks */, BA2234DA189FA412002C5B6A /* DiskArbitration.framework in Frameworks */, BA2234DB189FA412002C5B6A /* DVDPlayback.framework in Frameworks */, BA2234DC189FA412002C5B6A /* EventKit.framework in Frameworks */, @@ -4367,7 +4581,9 @@ BA2234ED189FA412002C5B6A /* IOBluetoothUI.framework in Frameworks */, BA2234EE189FA412002C5B6A /* IOKit.framework in Frameworks */, BA2234EF189FA412002C5B6A /* IOSurface.framework in Frameworks */, + BA2234F0189FA412002C5B6A /* JavaFrameEmbedding.framework in Frameworks */, BA2234F1189FA412002C5B6A /* JavaScriptCore.framework in Frameworks */, + BA2234F2189FA412002C5B6A /* JavaVM.framework in Frameworks */, BA2234F3189FA412002C5B6A /* Kerberos.framework in Frameworks */, BA2234F4189FA412002C5B6A /* LatentSemanticMapping.framework in Frameworks */, BA2234F5189FA412002C5B6A /* GLKit.framework in Frameworks */, @@ -4377,12 +4593,10 @@ BA2234F9189FA412002C5B6A /* MediaLibrary.framework in Frameworks */, BA2234FA189FA412002C5B6A /* MediaToolbox.framework in Frameworks */, BA2234FB189FA412002C5B6A /* NetFS.framework in Frameworks */, - E29F5F8119FD9C1800AD90CF /* DVComponentGlue.framework in Frameworks */, BA2234FC189FA412002C5B6A /* OpenAL.framework in Frameworks */, BA2234FD189FA412002C5B6A /* OpenCL.framework in Frameworks */, BA2234FE189FA412002C5B6A /* OpenDirectory.framework in Frameworks */, BA2234FF189FA412002C5B6A /* OpenGL.framework in Frameworks */, - E29F5F7E19FD9BDD00AD90CF /* DrawSprocket.framework in Frameworks */, BA223500189FA412002C5B6A /* OSAKit.framework in Frameworks */, BA223501189FA412002C5B6A /* PCSC.framework in Frameworks */, BA223502189FA412002C5B6A /* PreferencePanes.framework in Frameworks */, @@ -4392,7 +4606,6 @@ BA223506189FA412002C5B6A /* QuartzCore.framework in Frameworks */, BA223507189FA412002C5B6A /* QuickLook.framework in Frameworks */, BA223508189FA412002C5B6A /* Ruby.framework in Frameworks */, - BA223509189FA412002C5B6A /* RubyCocoa.framework in Frameworks */, BA22350A189FA412002C5B6A /* ScreenSaver.framework in Frameworks */, BA22350B189FA412002C5B6A /* ScriptingBridge.framework in Frameworks */, BA22350C189FA412002C5B6A /* Security.framework in Frameworks */, @@ -4418,8 +4631,8 @@ isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( - E29F5F7819FD9AD100AD90CF /* Cocoa.framework in Frameworks */, - E29F5F8319FD9C2E00AD90CF /* ExceptionHandling.framework in Frameworks */, + BA223662189FA429002C5B6A /* Cocoa.framework in Frameworks */, + BA223663189FA429002C5B6A /* ExceptionHandling.framework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -4427,136 +4640,122 @@ isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( - E29F5F7919FD9AD800AD90CF /* Cocoa.framework in Frameworks */, - E29F5F8419FD9C2F00AD90CF /* ExceptionHandling.framework in Frameworks */, + BA2237AA189FA432002C5B6A /* Cocoa.framework in Frameworks */, + BA2237AB189FA432002C5B6A /* ExceptionHandling.framework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; - E29F5D1F19FD93FD00AD90CF /* Frameworks */ = { + EDC2CA641A1AA50D00942777 /* Frameworks */ = { isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( - E29F5F6219FD98F700AD90CF /* AppKit.framework in Frameworks */, - E29F5EEE19FD98F500AD90CF /* Accelerate.framework in Frameworks */, - E29F5EEF19FD98F500AD90CF /* Accounts.framework in Frameworks */, - E29F5EF019FD98F500AD90CF /* AddressBook.framework in Frameworks */, - E29F5EF119FD98F500AD90CF /* AGL.framework in Frameworks */, - E29F5EF319FD98F500AD90CF /* AppleScriptKit.framework in Frameworks */, - E29F5EF419FD98F500AD90CF /* AppleScriptObjC.framework in Frameworks */, - E29F5EF519FD98F500AD90CF /* ApplicationServices.framework in Frameworks */, - E29F5EF619FD98F500AD90CF /* AudioToolbox.framework in Frameworks */, - E29F5EF719FD98F500AD90CF /* AudioUnit.framework in Frameworks */, - E29F5EF819FD98F500AD90CF /* AudioVideoBridging.framework in Frameworks */, - E29F5EF919FD98F500AD90CF /* Automator.framework in Frameworks */, - E29F5EFA19FD98F500AD90CF /* AVFoundation.framework in Frameworks */, - E29F5EFB19FD98F500AD90CF /* AVKit.framework in Frameworks */, - E29F5EFC19FD98F500AD90CF /* CalendarStore.framework in Frameworks */, - E29F5EFD19FD98F500AD90CF /* Carbon.framework in Frameworks */, - E29F5EFE19FD98F500AD90CF /* CFNetwork.framework in Frameworks */, - E29F5EFF19FD98F500AD90CF /* CloudKit.framework in Frameworks */, - E29F5F0019FD98F500AD90CF /* Cocoa.framework in Frameworks */, - E29F5F0119FD98F500AD90CF /* Collaboration.framework in Frameworks */, - E29F5F0219FD98F500AD90CF /* CoreAudio.framework in Frameworks */, - E29F5F0319FD98F500AD90CF /* CoreAudioKit.framework in Frameworks */, - E29F5F0419FD98F600AD90CF /* CoreBluetooth.framework in Frameworks */, - E29F5F0519FD98F600AD90CF /* CoreData.framework in Frameworks */, - E29F5F0619FD98F600AD90CF /* CoreFoundation.framework in Frameworks */, - E29F5F0719FD98F600AD90CF /* CoreGraphics.framework in Frameworks */, - E29F5F0819FD98F600AD90CF /* CoreLocation.framework in Frameworks */, - E29F5F0919FD98F600AD90CF /* CoreMedia.framework in Frameworks */, - E29F5F0A19FD98F600AD90CF /* CoreMediaIO.framework in Frameworks */, - E29F5F0B19FD98F600AD90CF /* CoreMIDI.framework in Frameworks */, - E29F5F0C19FD98F600AD90CF /* CoreServices.framework in Frameworks */, - E29F5F0D19FD98F600AD90CF /* CoreText.framework in Frameworks */, - E29F5F0E19FD98F600AD90CF /* CoreVideo.framework in Frameworks */, - E29F5F0F19FD98F600AD90CF /* CoreWLAN.framework in Frameworks */, - E29F5F1019FD98F600AD90CF /* CryptoTokenKit.framework in Frameworks */, - E29F5F1119FD98F600AD90CF /* DirectoryService.framework in Frameworks */, - E29F5F1219FD98F600AD90CF /* DiscRecording.framework in Frameworks */, - E29F5F1319FD98F600AD90CF /* DiscRecordingUI.framework in Frameworks */, - E29F5F1419FD98F600AD90CF /* DiskArbitration.framework in Frameworks */, - E29F5F1519FD98F600AD90CF /* DrawSprocket.framework in Frameworks */, - E29F5F1619FD98F600AD90CF /* DVComponentGlue.framework in Frameworks */, - E29F5F1719FD98F600AD90CF /* DVDPlayback.framework in Frameworks */, - E29F5F1819FD98F600AD90CF /* EventKit.framework in Frameworks */, - E29F5F1919FD98F600AD90CF /* ExceptionHandling.framework in Frameworks */, - E29F5F1A19FD98F600AD90CF /* FinderSync.framework in Frameworks */, - E29F5F1B19FD98F600AD90CF /* ForceFeedback.framework in Frameworks */, - E29F5F1C19FD98F600AD90CF /* Foundation.framework in Frameworks */, - E29F5F1D19FD98F600AD90CF /* FWAUserLib.framework in Frameworks */, - E29F5F1E19FD98F600AD90CF /* GameController.framework in Frameworks */, - E29F5F1F19FD98F600AD90CF /* GameKit.framework in Frameworks */, - E29F5F2019FD98F600AD90CF /* GLKit.framework in Frameworks */, - E29F5F2119FD98F600AD90CF /* GLUT.framework in Frameworks */, - E29F5F2219FD98F600AD90CF /* GSS.framework in Frameworks */, - E29F5F2319FD98F600AD90CF /* Hypervisor.framework in Frameworks */, - E29F5F2419FD98F600AD90CF /* ICADevices.framework in Frameworks */, - E29F5F2519FD98F600AD90CF /* ImageCaptureCore.framework in Frameworks */, - E29F5F2619FD98F600AD90CF /* ImageIO.framework in Frameworks */, - E29F5F2719FD98F600AD90CF /* IMServicePlugIn.framework in Frameworks */, - E29F5F2819FD98F600AD90CF /* InputMethodKit.framework in Frameworks */, - E29F5F2919FD98F600AD90CF /* InstallerPlugins.framework in Frameworks */, - E29F5F2A19FD98F600AD90CF /* InstantMessage.framework in Frameworks */, - E29F5F2B19FD98F600AD90CF /* IOBluetooth.framework in Frameworks */, - E29F5F2C19FD98F600AD90CF /* IOBluetoothUI.framework in Frameworks */, - E29F5F2D19FD98F600AD90CF /* IOKit.framework in Frameworks */, - E29F5F2E19FD98F600AD90CF /* IOSurface.framework in Frameworks */, - E29F5F3019FD98F600AD90CF /* JavaScriptCore.framework in Frameworks */, - E29F5F3219FD98F600AD90CF /* Kerberos.framework in Frameworks */, - E29F5F3419FD98F600AD90CF /* LatentSemanticMapping.framework in Frameworks */, - E29F5F3519FD98F600AD90CF /* LDAP.framework in Frameworks */, - E29F5F3619FD98F600AD90CF /* LocalAuthentication.framework in Frameworks */, - E29F5F3719FD98F600AD90CF /* MapKit.framework in Frameworks */, - E29F5F3819FD98F600AD90CF /* MediaAccessibility.framework in Frameworks */, - E29F5F3919FD98F600AD90CF /* MediaLibrary.framework in Frameworks */, - E29F5F3A19FD98F600AD90CF /* MediaToolbox.framework in Frameworks */, - E29F5F3B19FD98F600AD90CF /* MultipeerConnectivity.framework in Frameworks */, - E29F5F3C19FD98F600AD90CF /* NetFS.framework in Frameworks */, - E29F5F3D19FD98F600AD90CF /* NotificationCenter.framework in Frameworks */, - E29F5F3E19FD98F600AD90CF /* OpenAL.framework in Frameworks */, - E29F5F3F19FD98F600AD90CF /* OpenCL.framework in Frameworks */, - E29F5F4019FD98F600AD90CF /* OpenDirectory.framework in Frameworks */, - E29F5F4119FD98F600AD90CF /* OpenGL.framework in Frameworks */, - E29F5F4219FD98F600AD90CF /* OSAKit.framework in Frameworks */, - E29F5F4319FD98F600AD90CF /* PCSC.framework in Frameworks */, - E29F5F4419FD98F600AD90CF /* PreferencePanes.framework in Frameworks */, - E29F5F4519FD98F600AD90CF /* PubSub.framework in Frameworks */, - E29F5F4619FD98F600AD90CF /* Python.framework in Frameworks */, - E29F5F4719FD98F600AD90CF /* QTKit.framework in Frameworks */, - E29F5F4819FD98F600AD90CF /* Quartz.framework in Frameworks */, - E29F5F4919FD98F600AD90CF /* QuartzCore.framework in Frameworks */, - E29F5F4A19FD98F600AD90CF /* QuickLook.framework in Frameworks */, - E29F5F4B19FD98F600AD90CF /* QuickTime.framework in Frameworks */, - E29F5F4C19FD98F600AD90CF /* Ruby.framework in Frameworks */, - E29F5F4D19FD98F600AD90CF /* SceneKit.framework in Frameworks */, - E29F5F4E19FD98F600AD90CF /* ScreenSaver.framework in Frameworks */, - E29F5F4F19FD98F600AD90CF /* Scripting.framework in Frameworks */, - E29F5F5019FD98F600AD90CF /* ScriptingBridge.framework in Frameworks */, - E29F5F5119FD98F600AD90CF /* Security.framework in Frameworks */, - E29F5F5219FD98F600AD90CF /* SecurityFoundation.framework in Frameworks */, - E29F5F5319FD98F600AD90CF /* SecurityInterface.framework in Frameworks */, - E29F5F5419FD98F600AD90CF /* ServiceManagement.framework in Frameworks */, - E29F5F5519FD98F600AD90CF /* Social.framework in Frameworks */, - E29F5F5619FD98F600AD90CF /* SpriteKit.framework in Frameworks */, - E29F5F5719FD98F600AD90CF /* StoreKit.framework in Frameworks */, - E29F5F5819FD98F600AD90CF /* SyncServices.framework in Frameworks */, - E29F5F5919FD98F600AD90CF /* SystemConfiguration.framework in Frameworks */, - E29F5F5A19FD98F600AD90CF /* Tcl.framework in Frameworks */, - E29F5F5B19FD98F600AD90CF /* Tk.framework in Frameworks */, - E29F5F5C19FD98F600AD90CF /* TWAIN.framework in Frameworks */, - E29F5F5D19FD98F600AD90CF /* VideoDecodeAcceleration.framework in Frameworks */, - E29F5F5E19FD98F600AD90CF /* VideoToolbox.framework in Frameworks */, - E29F5F5F19FD98F600AD90CF /* vmnet.framework in Frameworks */, - E29F5F6019FD98F600AD90CF /* WebKit.framework in Frameworks */, + EDC2CA651A1AA50D00942777 /* Accelerate.framework in Frameworks */, + EDC2CA661A1AA50D00942777 /* Accounts.framework in Frameworks */, + EDC2CA671A1AA50D00942777 /* AddressBook.framework in Frameworks */, + EDC2CA681A1AA50D00942777 /* AGL.framework in Frameworks */, + EDC2CA691A1AA50D00942777 /* AppKit.framework in Frameworks */, + EDC2CA6A1A1AA50D00942777 /* AppleScriptKit.framework in Frameworks */, + EDC2CA6B1A1AA50D00942777 /* AppleScriptObjC.framework in Frameworks */, + EDC2CA6C1A1AA50D00942777 /* ApplicationServices.framework in Frameworks */, + EDC2CA6D1A1AA50D00942777 /* AudioToolbox.framework in Frameworks */, + EDC2CA6E1A1AA50D00942777 /* AudioUnit.framework in Frameworks */, + EDC2CA6F1A1AA50D00942777 /* AudioVideoBridging.framework in Frameworks */, + EDC2CA701A1AA50D00942777 /* Automator.framework in Frameworks */, + EDC2CA711A1AA50D00942777 /* AVFoundation.framework in Frameworks */, + EDC2CA721A1AA50D00942777 /* AVKit.framework in Frameworks */, + EDC2CA731A1AA50D00942777 /* CalendarStore.framework in Frameworks */, + EDC2CA741A1AA50D00942777 /* Carbon.framework in Frameworks */, + EDC2CA751A1AA50D00942777 /* CFNetwork.framework in Frameworks */, + EDC2CA761A1AA50D00942777 /* Cocoa.framework in Frameworks */, + EDC2CA771A1AA50D00942777 /* Collaboration.framework in Frameworks */, + EDC2CA781A1AA50D00942777 /* CoreAudio.framework in Frameworks */, + EDC2CA791A1AA50D00942777 /* CoreAudioKit.framework in Frameworks */, + EDC2CA7A1A1AA50D00942777 /* CoreData.framework in Frameworks */, + EDC2CA7B1A1AA50D00942777 /* CoreFoundation.framework in Frameworks */, + EDC2CA7C1A1AA50D00942777 /* CoreGraphics.framework in Frameworks */, + EDC2CA7D1A1AA50D00942777 /* CoreLocation.framework in Frameworks */, + EDC2CA7E1A1AA50D00942777 /* CoreMedia.framework in Frameworks */, + EDC2CA7F1A1AA50D00942777 /* CoreMediaIO.framework in Frameworks */, + EDC2CA801A1AA50D00942777 /* CoreMIDI.framework in Frameworks */, + EDC2CA811A1AA50D00942777 /* CoreServices.framework in Frameworks */, + EDC2CA821A1AA50D00942777 /* CoreText.framework in Frameworks */, + EDC2CA831A1AA50D00942777 /* CoreVideo.framework in Frameworks */, + EDC2CA841A1AA50D00942777 /* CoreWLAN.framework in Frameworks */, + EDC2CA851A1AA50D00942777 /* DirectoryService.framework in Frameworks */, + EDC2CA861A1AA50D00942777 /* DiscRecording.framework in Frameworks */, + EDC2CA871A1AA50D00942777 /* DiscRecordingUI.framework in Frameworks */, + EDC2CA881A1AA50D00942777 /* DiskArbitration.framework in Frameworks */, + EDC2CA891A1AA50D00942777 /* DVDPlayback.framework in Frameworks */, + EDC2CA8A1A1AA50D00942777 /* EventKit.framework in Frameworks */, + EDC2CA8B1A1AA50D00942777 /* ExceptionHandling.framework in Frameworks */, + EDC2CA8C1A1AA50D00942777 /* ForceFeedback.framework in Frameworks */, + EDC2CA8D1A1AA50D00942777 /* Foundation.framework in Frameworks */, + EDC2CA8E1A1AA50D00942777 /* FWAUserLib.framework in Frameworks */, + EDC2CA8F1A1AA50D00942777 /* GameController.framework in Frameworks */, + EDC2CA901A1AA50D00942777 /* GameKit.framework in Frameworks */, + EDC2CA911A1AA50D00942777 /* GLUT.framework in Frameworks */, + EDC2CA921A1AA50D00942777 /* GSS.framework in Frameworks */, + EDC2CA931A1AA50D00942777 /* ICADevices.framework in Frameworks */, + EDC2CA941A1AA50D00942777 /* ImageCaptureCore.framework in Frameworks */, + EDC2CA951A1AA50D00942777 /* ImageIO.framework in Frameworks */, + EDC2CA961A1AA50D00942777 /* IMServicePlugIn.framework in Frameworks */, + EDC2CA971A1AA50D00942777 /* InputMethodKit.framework in Frameworks */, + EDC2CA981A1AA50D00942777 /* InstallerPlugins.framework in Frameworks */, + EDC2CA991A1AA50D00942777 /* InstantMessage.framework in Frameworks */, + EDC2CA9A1A1AA50D00942777 /* IOBluetooth.framework in Frameworks */, + EDC2CA9B1A1AA50D00942777 /* IOBluetoothUI.framework in Frameworks */, + EDC2CA9C1A1AA50D00942777 /* IOKit.framework in Frameworks */, + EDC2CA9D1A1AA50D00942777 /* IOSurface.framework in Frameworks */, + EDC2CA9F1A1AA50D00942777 /* JavaScriptCore.framework in Frameworks */, + EDC2CAA11A1AA50D00942777 /* Kerberos.framework in Frameworks */, + EDC2CAA21A1AA50D00942777 /* LatentSemanticMapping.framework in Frameworks */, + EDC2CAA31A1AA50D00942777 /* GLKit.framework in Frameworks */, + EDC2CAA41A1AA50D00942777 /* LDAP.framework in Frameworks */, + EDC2CAA51A1AA50D00942777 /* MapKit.framework in Frameworks */, + EDC2CAA61A1AA50D00942777 /* MediaAccessibility.framework in Frameworks */, + EDC2CAA71A1AA50D00942777 /* MediaLibrary.framework in Frameworks */, + EDC2CAA81A1AA50D00942777 /* MediaToolbox.framework in Frameworks */, + EDC2CAA91A1AA50D00942777 /* NetFS.framework in Frameworks */, + EDC2CAAA1A1AA50D00942777 /* OpenAL.framework in Frameworks */, + EDC2CAAB1A1AA50D00942777 /* OpenCL.framework in Frameworks */, + EDC2CAAC1A1AA50D00942777 /* OpenDirectory.framework in Frameworks */, + EDC2CAAD1A1AA50D00942777 /* OpenGL.framework in Frameworks */, + EDC2CAAE1A1AA50D00942777 /* OSAKit.framework in Frameworks */, + EDC2CAAF1A1AA50D00942777 /* PCSC.framework in Frameworks */, + EDC2CAB01A1AA50D00942777 /* PreferencePanes.framework in Frameworks */, + EDC2CAB11A1AA50D00942777 /* PubSub.framework in Frameworks */, + EDC2CAB21A1AA50D00942777 /* QTKit.framework in Frameworks */, + EDC2CAB31A1AA50D00942777 /* Quartz.framework in Frameworks */, + EDC2CAB41A1AA50D00942777 /* QuartzCore.framework in Frameworks */, + EDC2CAB51A1AA50D00942777 /* QuickLook.framework in Frameworks */, + EDC2CAB61A1AA50D00942777 /* Ruby.framework in Frameworks */, + EDC2CAB71A1AA50D00942777 /* ScreenSaver.framework in Frameworks */, + EDC2CAB81A1AA50D00942777 /* ScriptingBridge.framework in Frameworks */, + EDC2CAB91A1AA50D00942777 /* Security.framework in Frameworks */, + EDC2CABA1A1AA50D00942777 /* SecurityFoundation.framework in Frameworks */, + EDC2CABB1A1AA50D00942777 /* SecurityInterface.framework in Frameworks */, + EDC2CABC1A1AA50D00942777 /* ServiceManagement.framework in Frameworks */, + EDC2CABD1A1AA50D00942777 /* SpriteKit.framework in Frameworks */, + EDC2CABE1A1AA50D00942777 /* StoreKit.framework in Frameworks */, + EDC2CABF1A1AA50D00942777 /* SyncServices.framework in Frameworks */, + EDC2CAC01A1AA50D00942777 /* SystemConfiguration.framework in Frameworks */, + EDC2CAC11A1AA50D00942777 /* Tcl.framework in Frameworks */, + EDC2CAC21A1AA50D00942777 /* Tk.framework in Frameworks */, + EDC2CAC31A1AA50D00942777 /* TWAIN.framework in Frameworks */, + EDC2CAC41A1AA50D00942777 /* VideoDecodeAcceleration.framework in Frameworks */, + EDC2CAC51A1AA50D00942777 /* WebKit.framework in Frameworks */, + EDC2CAC61A1AA50D00942777 /* SceneKit.framework in Frameworks */, + EDC2CAC71A1AA50D00942777 /* Social.framework in Frameworks */, + EDC2CAC81A1AA50D00942777 /* VideoToolbox.framework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; - E29F5EE519FD94FC00AD90CF /* Frameworks */ = { + EDC2CC201A1AA52500942777 /* Frameworks */ = { isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( - E29F5F7A19FD9ADE00AD90CF /* Cocoa.framework in Frameworks */, - E29F5F8519FD9C3100AD90CF /* ExceptionHandling.framework in Frameworks */, + EDC2CC211A1AA52500942777 /* Cocoa.framework in Frameworks */, + EDC2CC221A1AA52500942777 /* ExceptionHandling.framework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -4566,18 +4765,13 @@ 0CD4E2FB00D7DD4D7BE9C1BD = { isa = PBXGroup; children = ( - E29F5F9319FD9F0400AD90CF /* Other Frameworks */, F5F1A9F4022E9A96011160FE /* F-Script */, 0CD4E30D00D7DFE17BE9C1BD /* FScriptFramework */, - 8F6392E00BDB855B005C8D94 /* FScriptIBPlugin */, F5F1AAAD022E9E4F011160FE /* FSTest1 */, - F5F1AAB6022E9E90011160FE /* FSTest2 */, - 8F6DA8EB055FC70C0050409A /* Info-FScript.plist */, - 8F6DA9DC055FC7200050409A /* Info-FScriptFramework.plist */, 8F6DA6E7055FC6C80050409A /* Info-FSTest1_2.plist */, - 8F6DA6D1055FC6980050409A /* Info-FSTest2_2.plist */, F5F00F100279FB69016D9B48 /* JGAdditions */, 0CD4E2FC00D7DDB47BE9C1BD /* Products */, + ED48525318B603C300877668 /* Frameworks */, ); sourceTree = ""; }; @@ -4586,15 +4780,13 @@ children = ( 8FD37B9B08472E0F00524B98 /* F-Script.app */, 8FD37B9E08472E0F00524B98 /* FScript.framework */, - 8FD37B9F08472E0F00524B98 /* FSTest2.app */, 8FD37BA108472E0F00524B98 /* FSTest1.app */, - 8F6392D10BDB8521005C8D94 /* FScriptIBPlugin.ibplugin */, BA223360189FA403002C5B6A /* F-Script.app */, BA223520189FA412002C5B6A /* F-Script.app */, - BA223668189FA429002C5B6A /* FScript.framework */, + BA223668189FA429002C5B6A /* FScriptFramework.framework */, BA2237B0189FA432002C5B6A /* FScript.framework */, - E29F5D8A19FD93FD00AD90CF /* F-Script.app */, - E29F5EEC19FD94FC00AD90CF /* FScript.framework */, + EDC2CACD1A1AA50D00942777 /* F-Script.app */, + EDC2CC271A1AA52500942777 /* FScript.framework */, ); name = Products; sourceTree = ""; @@ -4620,46 +4812,42 @@ 8FBC2884077B7D5200F9B4A2 /* ArrayRepFetchRequest.m */, 0CD4E31B00D7DFE17BE9C1BD /* ArrayRepId.h */, 0CD4E31C00D7DFE17BE9C1BD /* ArrayRepId.m */, - F58090FC03756D2401AED2EF /* ArrayTableView.nib */, + 0B73890F1B397CE6005BD678 /* ArrayTableView.xib */, 8FCA00C10EEAF34300B10420 /* Block_fscript.h */, 8FCA00C20EEAF34300B10420 /* Block.m */, 0CD4E32800D7DFE17BE9C1BD /* BlockInspector.h */, 0CD4E32900D7DFE17BE9C1BD /* BlockInspector.m */, - 0CD4E32A00D7DFE17BE9C1BD /* blockInspector.nib */, + 0B7389061B397CD5005BD678 /* blockInspector.xib */, 0CD4E32B00D7DFE17BE9C1BD /* BlockPrivate.h */, 0CD4E32C00D7DFE17BE9C1BD /* BlockRep.h */, 0CD4E32D00D7DFE17BE9C1BD /* BlockRep.m */, 0CD4E32E00D7DFE17BE9C1BD /* BlockSignature.h */, 0CD4E32F00D7DFE17BE9C1BD /* BlockStackElem.h */, 0CD4E33000D7DFE17BE9C1BD /* BlockStackElem.m */, - 8F56036505CF22660044FA65 /* build.tiff */, 0CD4E33200D7DFE17BE9C1BD /* build_config.h */, + 8F56036505CF22660044FA65 /* build.tiff */, 0CD4E33300D7DFE17BE9C1BD /* CLIView.h */, 0CD4E33400D7DFE17BE9C1BD /* CLIView.m */, 0CD4E33700D7DFE17BE9C1BD /* CompiledCodeNode.h */, 0CD4E33800D7DFE17BE9C1BD /* CompiledCodeNode.m */, 8F92F0380463F2A400F4C61F /* constantsDictionary */, - 8F92F0340463F03300F4C61F /* FSConstantsDictionaryGenerator.h */, - 8F92F0350463F03300F4C61F /* FSConstantsDictionaryGenerator.m */, - 0CD4E33B00D7DFE17BE9C1BD /* FSConstantsInitialization.h */, - 0CD4E33C00D7DFE17BE9C1BD /* FSConstantsInitialization.m */, F5F13B4701C8BE3401CB6DF7 /* DOTest.h */, F5F13B4801C8BE3401CB6DF7 /* DOTest.m */, 8FE99A49082CF1C1005BD642 /* Employee.xcdatamodel */, 0CD4E34400D7DFE17BE9C1BD /* FlightTutorial.txt */, 0CD4E30F00D7DFE17BE9C1BD /* FSAirplane.h */, 0CD4E31000D7DFE17BE9C1BD /* FSAirplane.m */, - 8FA3AE55044D4D6700CF7A3A /* FSArrayEnumerator.h */, - 8FA3AE56044D4D6700CF7A3A /* FSArrayEnumerator.m */, 0CD4E34500D7DFE17BE9C1BD /* FSArchiver.h */, 0CD4E34600D7DFE17BE9C1BD /* FSArchiver.m */, 8FE6AD8F0EC740650096019D /* FSArray.h */, 8FE6AD900EC740650096019D /* FSArray.m */, + 8FA3AE55044D4D6700CF7A3A /* FSArrayEnumerator.h */, + 8FA3AE56044D4D6700CF7A3A /* FSArrayEnumerator.m */, 8F940B810F2393B0004525E1 /* FSAssociation.h */, 8F940B820F2393B0004525E1 /* FSAssociation.m */, 8FDCCD4E05C09F8200747C0A /* FSAttributedStringInspector.h */, 8FDCCD4F05C09F8200747C0A /* FSAttributedStringInspector.m */, - 8FDCCD7A05C0A0A000747C0A /* FSAttributedStringInspector.nib */, + 0B7389181B397D0A005BD678 /* FSAttributedStringInspector.xib */, 0CD4E32600D7DFE17BE9C1BD /* FSBlock.h */, 0CD4E32700D7DFE17BE9C1BD /* FSBlock.m */, 8F90A2EF096DB0660064F4BC /* FSBlockCompilationResult.h */, @@ -4707,21 +4895,25 @@ 8F2E341F0D8DB61C00912543 /* FSCNUnaryMessage.m */, 0CD4E31D00D7DFE17BE9C1BD /* FSCollectionInspector.h */, 0CD4E31E00D7DFE17BE9C1BD /* FSCollectionInspector.m */, - 0CD4E31F00D7DFE17BE9C1BD /* FSCollectionInspector.nib */, + 0B7389211B397D1E005BD678 /* FSCollectionInspector.xib */, 8F60216E05A25CDC0004EFF1 /* FSCollectionInspectorTableView.h */, 8F60216F05A25CDC0004EFF1 /* FSCollectionInspectorTableView.m */, 8FA8EDC607735B3B001BEC7B /* FSCollectionInspectorView.h */, 8FA8EDD307735B3B001BEC7B /* FSCollectionInspectorView.m */, - 8FA8EF9107739FD4001BEC7B /* FSCollectionInspectorView.nib */, + 0B73892A1B397D2E005BD678 /* FSCollectionInspectorView.xib */, 0CD4E39A00D7DFE17BE9C1BD /* FSCommandHistory.h */, 0CD4E39B00D7DFE17BE9C1BD /* FSCommandHistory.m */, 0CD4E33500D7DFE17BE9C1BD /* FSCompilationResult.h */, 0CD4E33600D7DFE17BE9C1BD /* FSCompilationResult.m */, 0CD4E33900D7DFE17BE9C1BD /* FSCompiler.h */, 0CD4E33A00D7DFE17BE9C1BD /* FSCompiler.m */, - 8F0B64C805C5370D0099180D /* FSConsole.nib */, + EDE508D119DD4D310012F16A /* FSConsole.xib */, F52EECA6036210E2016141BB /* FSConstantListBuilder.h */, F52EECA7036210E2016141BB /* FSConstantListBuilder.m */, + 8F92F0340463F03300F4C61F /* FSConstantsDictionaryGenerator.h */, + 8F92F0350463F03300F4C61F /* FSConstantsDictionaryGenerator.m */, + 0CD4E33B00D7DFE17BE9C1BD /* FSConstantsInitialization.h */, + 0CD4E33C00D7DFE17BE9C1BD /* FSConstantsInitialization.m */, 8FE7E0E6082AD964008231E8 /* FSCoreDataSample.h */, 8FE7E0E7082AD964008231E8 /* FSCoreDataSample.m */, 0CD4E34C00D7DFE17BE9C1BD /* FScript.h */, @@ -4729,7 +4921,7 @@ 0CD4E34F00D7DFE17BE9C1BD /* FScriptFunctions.m */, 8F0B66FB05C5639E0099180D /* FScriptMenuItem.h */, 8F0B66FC05C5639E0099180D /* FScriptMenuItem.m */, - 8F0B664F05C557A40099180D /* FScriptPreferences.nib */, + EDE508DA19DD4FDC0012F16A /* FScriptPreferences.xib */, F5FBEF2802149D32018C0134 /* FScriptTextView.h */, F501AF7B021497C401A75EC5 /* FScriptTextView.m */, 0CD4E33D00D7DFE17BE9C1BD /* FSExecEngine.h */, @@ -4741,34 +4933,34 @@ 0CD4E37700D7DFE17BE9C1BD /* FSGenericObjectInspector.h */, 0CD4E37800D7DFE17BE9C1BD /* FSGenericObjectInspector.m */, 8F8EA779077F6C9300AC1C96 /* FSGenericPointer.h */, - 8F8EA841077F79A000AC1C96 /* FSGenericPointerPrivate.h */, 8F8EA786077F6C9300AC1C96 /* FSGenericPointer.m */, + 8F8EA841077F79A000AC1C96 /* FSGenericPointerPrivate.h */, 8FB9D5970F1CEE2100E10274 /* FSGlobalScope.h */, 8FB9D5980F1CEE2100E10274 /* FSGlobalScope.m */, F5073A2102FC5400013656B0 /* FSIdentifierFormatter.h */, F5073A2002FC5400013656B0 /* FSIdentifierFormatter.m */, F54B55B9036B45770140C608 /* FSImageInspector.h */, F54B55BA036B45770140C608 /* FSImageInspector.m */, - F54B55C3036B48690140C608 /* FSImageInspector.nib */, + 0B7389331B397D43005BD678 /* FSImageInspector.xib */, 8F7F4F9C07FB274C008E42F4 /* FSInspectorUniquier.h */, 8F7F4F9D07FB274C008E42F4 /* FSInspectorUniquier.m */, 0CD4E35000D7DFE17BE9C1BD /* FSInterpreter.h */, - F54CA17602FB2CAF01C25A35 /* FSInterpreterPrivate.h */, 0CD4E35100D7DFE17BE9C1BD /* FSInterpreter.m */, + F54CA17602FB2CAF01C25A35 /* FSInterpreterPrivate.h */, 0CD4E35200D7DFE17BE9C1BD /* FSInterpreterResult.h */, 0CD4E35300D7DFE17BE9C1BD /* FSInterpreterResult.m */, 0CD4E35400D7DFE17BE9C1BD /* FSInterpreterResultPrivate.h */, - 8F71F72205C43A7D00C34794 /* FSInterpreterViewPrivate.h */, 0CD4E35500D7DFE17BE9C1BD /* FSInterpreterView.h */, 0CD4E35600D7DFE17BE9C1BD /* FSInterpreterView.m */, 0CD4E35700D7DFE17BE9C1BD /* FSInterpreterViewIBHeader.h */, + 8F71F72205C43A7D00C34794 /* FSInterpreterViewPrivate.h */, F55D44CE0358B5D201B9E934 /* FSKeyedArchiver.h */, F55D44CF0358B5D201B9E934 /* FSKeyedArchiver.m */, F55D44C40358A88801B9E934 /* FSKeyedUnarchiver.h */, F55D44C50358A88801B9E934 /* FSKeyedUnarchiver.m */, 8F37AEC2078B7E900083565D /* FSManagedObjectContextInspector.h */, 8F37AEC3078B7E900083565D /* FSManagedObjectContextInspector.m */, - 8FCA6B79078E0E4F005FC6B2 /* FSManagedObjectContextInspector.nib */, + 0B73893C1B397D62005BD678 /* FSManagedObjectContextInspector.xib */, 8F3C13980C65E66400948776 /* FSMethod.h */, 8F3C13990C65E66400948776 /* FSMethod.m */, 0CD4E38100D7DFE17BE9C1BD /* FSMiscTools.h */, @@ -4787,8 +4979,8 @@ 8F2D72090F6BD9B100F0862A /* FSNSAffineTransform.h */, 8F2D720A0F6BD9B100F0862A /* FSNSAffineTransform.m */, 0CD4E35800D7DFE17BE9C1BD /* FSNSArray.h */, - 0CD4E35A00D7DFE17BE9C1BD /* FSNSArrayPrivate.h */, 0CD4E35900D7DFE17BE9C1BD /* FSNSArray.m */, + 0CD4E35A00D7DFE17BE9C1BD /* FSNSArrayPrivate.h */, 8FDCCDBF05C0A23000747C0A /* FSNSAttributedString.h */, 8FDCCDC005C0A23000747C0A /* FSNSAttributedString.m */, 0CD4E35B00D7DFE17BE9C1BD /* FSNSDate.h */, @@ -4814,8 +5006,8 @@ 0CD4E36100D7DFE17BE9C1BD /* FSNSNumber.h */, 0CD4E36200D7DFE17BE9C1BD /* FSNSNumber.m */, 0CD4E36300D7DFE17BE9C1BD /* FSNSObject.h */, - 8F63CC08044B95DB00B84480 /* FSNSObjectPrivate.h */, 0CD4E36400D7DFE17BE9C1BD /* FSNSObject.m */, + 8F63CC08044B95DB00B84480 /* FSNSObjectPrivate.h */, F5F140590223CC9D01DD698C /* FSNSProtocolChecker.h */, F5F1405A0223CC9D01DD698C /* FSNSProtocolChecker.m */, 0CD4E36500D7DFE17BE9C1BD /* FSNSProxy.h */, @@ -4831,6 +5023,9 @@ 0CD4E38E00D7DFE17BE9C1BD /* FSNumber.m */, 0CD4E32000D7DFE17BE9C1BD /* FSObjectBrowser.h */, 0CD4E32100D7DFE17BE9C1BD /* FSObjectBrowser.m */, + ED68BE4C1A35E94B00968430 /* FSObjectBrowserWindow.h */, + ED68BE4D1A35E94B00968430 /* FSObjectBrowserWindow.m */, + ED68BE411A35E38F00968430 /* FSObjectBrowser.xib */, F5FA8A6C0215D44C01AFEEFD /* FSObjectBrowserArgumentPanel.h */, F5FA8A6D0215D44C01AFEEFD /* FSObjectBrowserArgumentPanel.m */, 8F7A71290F48397C00E95364 /* FSObjectBrowserBottomBarTextDisplay.h */, @@ -4839,7 +5034,7 @@ F5F0261E02C243D20155CB83 /* FSObjectBrowserButtonCtxBlock.m */, F5F9569602B272FB0121B3BA /* FSObjectBrowserButtonsInspector.h */, F5F9569502B272FB0121B3BA /* FSObjectBrowserButtonsInspector.m */, - F5F9569002B272A30121B3BA /* FSObjectBrowserButtonsInspector.nib */, + EDFB2FF21A17E345002C8DD7 /* FSObjectBrowserButtonsInspector.xib */, 0CD4E32200D7DFE17BE9C1BD /* FSObjectBrowserCell.h */, 0CD4E32300D7DFE17BE9C1BD /* FSObjectBrowserCell.m */, 8FB505FF05D53C8600153B33 /* FSObjectBrowserMatrix.h */, @@ -4856,18 +5051,20 @@ 0CD4E32500D7DFE17BE9C1BD /* FSObjectBrowserView.m */, 8F4E294C075B8E5600F8DCDB /* FSObjectBrowserViewObjectInfo.h */, 8F4E294D075B8E5600F8DCDB /* FSObjectBrowserViewObjectInfo.m */, - F5EBBE810321029601CA10C6 /* FSObjectFormatter.m */, + ED8222E51A19554F00C42C72 /* FSObjectEnumInfo.h */, + ED8222E61A19554F00C42C72 /* FSObjectEnumInfo.m */, F5EBBE820321029601CA10C6 /* FSObjectFormatter.h */, + F5EBBE810321029601CA10C6 /* FSObjectFormatter.m */, 8FE9AE12078071CC005B2CC4 /* FSObjectPointer.h */, - 8FE9AE8207807269005B2CC4 /* FSObjectPointerPrivate.h */, 8FE9AE1F078071CC005B2CC4 /* FSObjectPointer.m */, - 0CD4E39000D7DFE17BE9C1BD /* FSPilot.h */, - 0CD4E39100D7DFE17BE9C1BD /* FSPilot.m */, - 8F8EA7E8077F719800AC1C96 /* FSPointerPrivate.h */, + 8FE9AE8207807269005B2CC4 /* FSObjectPointerPrivate.h */, 0CD4E36C00D7DFE17BE9C1BD /* FSPattern.h */, 0CD4E36D00D7DFE17BE9C1BD /* FSPattern.m */, + 0CD4E39000D7DFE17BE9C1BD /* FSPilot.h */, + 0CD4E39100D7DFE17BE9C1BD /* FSPilot.m */, 8F8EA70B077F6A5200AC1C96 /* FSPointer.h */, 8F8EA718077F6A5200AC1C96 /* FSPointer.m */, + 8F8EA7E8077F719800AC1C96 /* FSPointerPrivate.h */, 8F95E3C108034A670030B65C /* FSPredicateTextView.h */, 8F95E3C208034A670030B65C /* FSPredicateTextView.m */, 8F573F8F056B780500F2796A /* FSQTMovie.h */, @@ -4881,8 +5078,8 @@ 8F17C07D06B1309C00F07862 /* FSSymbolTable.h */, 8F17C07E06B1309C00F07862 /* FSSymbolTable.m */, 0CD4E39E00D7DFE17BE9C1BD /* FSSystem.h */, - F5A25E260357B373011A39F8 /* FSSystemPrivate.h */, 0CD4E39F00D7DFE17BE9C1BD /* FSSystem.m */, + F5A25E260357B373011A39F8 /* FSSystemPrivate.h */, 8FE3DC990D26C0FD00A1D767 /* FSTestClasses.txt */, 8FE3DD200D26D49900A1D767 /* FSTestObjCClass1.h */, 8FE3DD210D26D49900A1D767 /* FSTestObjCClass1.m */, @@ -4892,6 +5089,8 @@ 8F2DE65A0E57254700CF83CB /* FSTranscript.m */, 0CD4E37200D7DFE17BE9C1BD /* FSUnarchiver.h */, 0CD4E37300D7DFE17BE9C1BD /* FSUnarchiver.m */, + ED83191B1A1BC2B500290EE2 /* FSUtils.h */, + ED83191C1A1BC2B500290EE2 /* FSUtils.m */, 0CD4E37400D7DFE17BE9C1BD /* FSVoid.h */, 0CD4E37500D7DFE17BE9C1BD /* FSVoid.m */, 0CD4E37600D7DFE17BE9C1BD /* FSVoidPrivate.h */, @@ -4904,12 +5103,14 @@ 0CD4E37E00D7DFE17BE9C1BD /* license.txt */, 0CD4E37F00D7DFE17BE9C1BD /* MessagePatternCodeNode.h */, 0CD4E38000D7DFE17BE9C1BD /* MessagePatternCodeNode.m */, + EDFB302E1A18CA26002C8DD7 /* metamacros.h */, 8FBB2FF00EEB3467007A3163 /* Number_fscript.h */, 8FBB2FF10EEB3467007A3163 /* Number.m */, 0CD4E38F00D7DFE17BE9C1BD /* NumberPrivate.h */, + EDC2C8DB1A1A925800942777 /* Object Inspector */, F505648002DF417501FE0326 /* Pointer.h */, - F5F856C002EB281C01F7E6F0 /* PointerPrivate.h */, F505647F02DF417501FE0326 /* Pointer.m */, + F5F856C002EB281C01F7E6F0 /* PointerPrivate.h */, 8F2D066F05CED9B9007EA81B /* run.tiff */, 0CD4E39600D7DFE17BE9C1BD /* ShellView.h */, 0CD4E39700D7DFE17BE9C1BD /* ShellView.m */, @@ -4923,53 +5124,42 @@ sourceTree = ""; tabWidth = 2; }; - 8F6392E00BDB855B005C8D94 /* FScriptIBPlugin */ = { - isa = PBXGroup; - children = ( - 8F913FD30BDB92FC001685EA /* FScriptIBPlugin-Info.plist */, - 8F913FD40BDB92FC001685EA /* FScriptIBPluginInspector.h */, - 8F913FD50BDB92FC001685EA /* FScriptIBPluginInspector.m */, - 8F913FD90BDB92FC001685EA /* Info.plist */, - 8F913FDA0BDB92FC001685EA /* version.plist */, - 8F6597B50C37F061006CDCA0 /* FScriptMenuItem.png */, - 8FB524150C2205C20028B297 /* FScriptIBPluginInspector.nib */, - 8FB524170C2205C20028B297 /* FScriptIBPluginLibrary.nib */, - 8F913FCE0BDB92EE001685EA /* FScriptIBPlugin_Prefix.pch */, - 8F913FCF0BDB92EE001685EA /* FScriptIBPlugin.h */, - 8F913FD00BDB92EE001685EA /* FScriptIBPlugin.m */, - 8F6597D90C381103006CDCA0 /* FSInterpreterView.classdescription */, - ); - name = FScriptIBPlugin; - sourceTree = ""; - }; - E29F5F9319FD9F0400AD90CF /* Other Frameworks */ = { + ED48525318B603C300877668 /* Frameworks */ = { isa = PBXGroup; children = ( - E29F5F6119FD98F600AD90CF /* AppKit.framework */, BA223095189F9924002C5B6A /* Accelerate.framework */, E2DBA31F161CA5D00035A675 /* Accounts.framework */, BA22309F189F9A14002C5B6A /* AddressBook.framework */, + 8FC20ADE0CEE3B2F00D9871F /* AddressBook.framework */, BA2230A0189F9A14002C5B6A /* AGL.framework */, + BA2230A1189F9A14002C5B6A /* AppKit.framework */, + 8FC20A9F0CEE3AEE00D9871F /* AppKit.framework */, + BA2230A2189F9A14002C5B6A /* AppKitScripting.framework */, BA2230A3189F9A14002C5B6A /* AppleScriptKit.framework */, BA2230A4189F9A14002C5B6A /* AppleScriptObjC.framework */, BA2230A5189F9A14002C5B6A /* AppleShareClientCore.framework */, BA2230A6189F9A14002C5B6A /* ApplicationServices.framework */, BA223097189F9958002C5B6A /* AudioToolbox.framework */, BA2230A7189F9A14002C5B6A /* AudioUnit.framework */, + 8F589B600CE38B3B00C1D756 /* AudioUnit.framework */, E2DBA321161CA60C0035A675 /* AudioVideoBridging.framework */, BA2230A8189F9A14002C5B6A /* Automator.framework */, + 8F589B800CE38B7100C1D756 /* Automator.framework */, E2DBA32D161CA7180035A675 /* AVFoundation.framework */, BA223099189F9976002C5B6A /* AVKit.framework */, BA2230B3189F9A2E002C5B6A /* CalendarStore.framework */, + 8F552A780C00A6D4002B6067 /* CalendarStore.framework */, BA2230B4189F9A2E002C5B6A /* Carbon.framework */, BA2230B5189F9A2E002C5B6A /* CFNetwork.framework */, - E29F5D9219FD944300AD90CF /* CloudKit.framework */, BA2230B6189F9A2E002C5B6A /* Cocoa.framework */, + 8F85274707F6016900E706F5 /* Cocoa.framework */, BA2230B7189F9A2E002C5B6A /* Collaboration.framework */, + 8FC28E9B0C4A7DDF0071E9CC /* Collaboration.framework */, BA22309B189F9988002C5B6A /* CoreAudio.framework */, BA2230B8189F9A2F002C5B6A /* CoreAudioKit.framework */, - E29F5D9319FD944400AD90CF /* CoreBluetooth.framework */, + 8FC28EA80C4A7E3F0071E9CC /* CoreAudioKit.framework */, BA2230B9189F9A2F002C5B6A /* CoreData.framework */, + 8FD8FD92076624AC009820DF /* CoreData.framework */, BA2230BA189F9A2F002C5B6A /* CoreFoundation.framework */, BA2230BB189F9A2F002C5B6A /* CoreGraphics.framework */, BA22309D189F99CC002C5B6A /* CoreLocation.framework */, @@ -4979,88 +5169,140 @@ BA2230BF189F9A2F002C5B6A /* CoreServices.framework */, BA2230C0189F9A2F002C5B6A /* CoreText.framework */, BA2230C1189F9A2F002C5B6A /* CoreVideo.framework */, + 8FC28EB60C4A7E980071E9CC /* CoreVideo.framework */, BA2230C2189F9A2F002C5B6A /* CoreWLAN.framework */, - E29F5D9419FD944400AD90CF /* CryptoTokenKit.framework */, BA2230D3189F9A7A002C5B6A /* DirectoryService.framework */, BA2230D4189F9A7A002C5B6A /* DiscRecording.framework */, + F55D42D903583F2601B9E934 /* DiscRecording.framework */, BA2230D5189F9A7A002C5B6A /* DiscRecordingUI.framework */, + F55D42DA03583F2601B9E934 /* DiscRecordingUI.framework */, BA2230D6189F9A7A002C5B6A /* DiskArbitration.framework */, + 8FC28ECD0C4A7EDC0071E9CC /* DiskArbitration.framework */, BA2230D7189F9A7A002C5B6A /* DrawSprocket.framework */, + BA22313C189F9AA9002C5B6A /* DTPerformanceSession.framework */, BA2230D8189F9A7A002C5B6A /* DVComponentGlue.framework */, BA2230D9189F9A7A002C5B6A /* DVDPlayback.framework */, E2DBA31C161CA57C0035A675 /* EventKit.framework */, BA22316F189F9AD3002C5B6A /* ExceptionHandling.framework */, - E29F5D9519FD944400AD90CF /* FinderSync.framework */, + F51B24640271980D01DB4759 /* ExceptionHandling.framework */, BA223170189F9AD3002C5B6A /* ForceFeedback.framework */, BA223171189F9AD3002C5B6A /* Foundation.framework */, + 0CD4E46500D7E1C37BE9C1BD /* Foundation.framework */, BA223172189F9AD3002C5B6A /* FWAUserLib.framework */, BA223173189F9AD3002C5B6A /* GameController.framework */, E2DBA323161CA6270035A675 /* GameKit.framework */, E2DBA325161CA64B0035A675 /* GLKit.framework */, BA223147189F9AC5002C5B6A /* GLUT.framework */, BA223148189F9AC5002C5B6A /* GSS.framework */, - E29F5D9619FD944500AD90CF /* Hypervisor.framework */, BA223149189F9AC6002C5B6A /* ICADevices.framework */, BA22314A189F9AC6002C5B6A /* ImageCaptureCore.framework */, BA22314B189F9AC6002C5B6A /* ImageIO.framework */, BA22314C189F9AC6002C5B6A /* IMServicePlugIn.framework */, BA22314D189F9AC6002C5B6A /* InputMethodKit.framework */, + 8F589B980CE38CAB00C1D756 /* InputMethodKit.framework */, BA22314E189F9AC6002C5B6A /* InstallerPlugins.framework */, + 8F589BA50CE38CCE00C1D756 /* InstallerPlugins.framework */, BA22314F189F9AC6002C5B6A /* InstantMessage.framework */, + 8FC28FC70C4A7FDC0071E9CC /* InstantMessage.framework */, + BA22313D189F9AA9002C5B6A /* InterfaceBuilderKit.framework */, BA223150189F9AC6002C5B6A /* IOBluetooth.framework */, + F55D431803583F8501B9E934 /* IOBluetooth.framework */, BA223151189F9AC6002C5B6A /* IOBluetoothUI.framework */, + F55D431903583F8501B9E934 /* IOBluetoothUI.framework */, BA223152189F9AC6002C5B6A /* IOKit.framework */, BA223153189F9AC6002C5B6A /* IOSurface.framework */, + BA223154189F9AC6002C5B6A /* JavaFrameEmbedding.framework */, BA223155189F9AC6002C5B6A /* JavaScriptCore.framework */, + BA223156189F9AC6002C5B6A /* JavaVM.framework */, + 0CD4E46900D7E1F17BE9C1BD /* JavaVM.framework */, BA223157189F9AC6002C5B6A /* Kerberos.framework */, + BA223158189F9AC7002C5B6A /* Kernel.framework */, BA223159189F9AC7002C5B6A /* LatentSemanticMapping.framework */, BA223144189F9ABD002C5B6A /* LDAP.framework */, - E29F5D9719FD944500AD90CF /* LocalAuthentication.framework */, BA2230F4189F9A99002C5B6A /* MapKit.framework */, BA2230F5189F9A99002C5B6A /* MediaAccessibility.framework */, BA2230F6189F9A99002C5B6A /* MediaLibrary.framework */, BA2230F7189F9A99002C5B6A /* MediaToolbox.framework */, - E29F5D9819FD944500AD90CF /* MultipeerConnectivity.framework */, BA2230F8189F9A99002C5B6A /* NetFS.framework */, - E29F5D9919FD944600AD90CF /* NotificationCenter.framework */, BA2230F9189F9A99002C5B6A /* OpenAL.framework */, BA2230FA189F9A99002C5B6A /* OpenCL.framework */, BA2230FB189F9A99002C5B6A /* OpenDirectory.framework */, BA2230FC189F9A99002C5B6A /* OpenGL.framework */, BA2230FD189F9A99002C5B6A /* OSAKit.framework */, + 8FC28FEE0C4A80D80071E9CC /* OSAKit.framework */, BA2230FE189F9A99002C5B6A /* PCSC.framework */, BA2230FF189F9A99002C5B6A /* PreferencePanes.framework */, + 8FC290F90C4A81630071E9CC /* PreferencePanes.framework */, BA223100189F9A99002C5B6A /* PubSub.framework */, - E29F5D9A19FD944600AD90CF /* Python.framework */, + 8FC291040C4A81A60071E9CC /* PubSub.framework */, BA223101189F9A99002C5B6A /* QTKit.framework */, + 8FDF6FCF082BD9560044FD86 /* QTKit.framework */, BA223102189F9A99002C5B6A /* Quartz.framework */, + 8FC291160C4A82070071E9CC /* Quartz.framework */, BA223103189F9A99002C5B6A /* QuartzCore.framework */, + 8F1873160B99C7AA003974F2 /* QuartzCore.framework */, BA223104189F9A99002C5B6A /* QuickLook.framework */, BA223105189F9A99002C5B6A /* QuickTime.framework */, BA223106189F9A9A002C5B6A /* Ruby.framework */, BA223107189F9A9A002C5B6A /* RubyCocoa.framework */, + 8FC2911F0C4A82730071E9CC /* RubyCocoa.framework */, E2DBA327161CA65A0035A675 /* SceneKit.framework */, BA223108189F9A9A002C5B6A /* ScreenSaver.framework */, + 8FA095F80CE38F27001AC147 /* ScreenSaver.framework */, BA223109189F9A9A002C5B6A /* Scripting.framework */, BA22310A189F9A9A002C5B6A /* ScriptingBridge.framework */, + 8F6584F80C484A5100C8A3FC /* ScriptingBridge.framework */, BA22310B189F9A9A002C5B6A /* Security.framework */, BA22310C189F9A9A002C5B6A /* SecurityFoundation.framework */, + 8FC291710C4A82D10071E9CC /* SecurityFoundation.framework */, BA22310D189F9A9A002C5B6A /* SecurityInterface.framework */, + 8FC2917F0C4A82F90071E9CC /* SecurityInterface.framework */, + BA22313E189F9AA9002C5B6A /* SenTestingKit.framework */, BA22310E189F9A9A002C5B6A /* ServiceManagement.framework */, E2DBA329161CA6600035A675 /* Social.framework */, BA22310F189F9A9A002C5B6A /* SpriteKit.framework */, BA223110189F9A9A002C5B6A /* StoreKit.framework */, BA223111189F9A9A002C5B6A /* SyncServices.framework */, + 8FC291920C4A83380071E9CC /* SyncServices.framework */, BA223112189F9A9A002C5B6A /* SystemConfiguration.framework */, BA223113189F9A9A002C5B6A /* Tcl.framework */, BA223114189F9A9A002C5B6A /* Tk.framework */, BA223115189F9A9A002C5B6A /* TWAIN.framework */, BA223116189F9A9A002C5B6A /* VideoDecodeAcceleration.framework */, E2DBA32B161CA6660035A675 /* VideoToolbox.framework */, - E29F5D9B19FD944600AD90CF /* vmnet.framework */, BA223117189F9A9A002C5B6A /* WebKit.framework */, + 8FF5AEF80961E56400A3BEA9 /* WebKit.framework */, + BA22313F189F9AA9002C5B6A /* XCTest.framework */, ); - name = "Other Frameworks"; + name = Frameworks; + sourceTree = ""; + }; + EDC2C8DB1A1A925800942777 /* Object Inspector */ = { + isa = PBXGroup; + children = ( + EDA22BDE1A24C28D0093DB91 /* view.png */, + EDA22BDF1A24C28D0093DB91 /* window.png */, + ED051F431A234DB6000284E2 /* metamacrosorig.h */, + EDC2C8DC1A1A943600942777 /* FSDetailedObjectInspector.h */, + EDC2C8DD1A1A943600942777 /* FSDetailedObjectInspector.m */, + ED8222D41A194FD600C42C72 /* FSObjectInspectorViewModelItem.h */, + ED8222D51A194FD600C42C72 /* FSObjectInspectorViewModelItem.m */, + ED3004E51A1A86EF00675D94 /* FSObjectInspectorViewController.h */, + ED3004E61A1A86EF00675D94 /* FSObjectInspectorViewController.m */, + ED8319301A1BFA7400290EE2 /* FSObjectInspectorViewController+NonArc.h */, + ED8319311A1BFA7400290EE2 /* FSObjectInspectorViewController+NonArc.m */, + ED3004E71A1A86EF00675D94 /* FSObjectInspectorViewController.xib */, + EDC2C8EE1A1AA34D00942777 /* FSObjectInspectorBackgroundView.h */, + EDC2C8EF1A1AA34D00942777 /* FSObjectInspectorBackgroundView.m */, + ED3CB63F1A1E5B3300771077 /* FSColorWell.h */, + ED3CB6401A1E5B3300771077 /* FSColorWell.m */, + EDA6AC3E1A1F407C001CD1F2 /* FSObjectInspectorOutlineView.h */, + EDA6AC3F1A1F407C001CD1F2 /* FSObjectInspectorOutlineView.m */, + EDA6AC531A1F52E6001CD1F2 /* FSObjectInspectorOptionsViewController.h */, + EDA6AC541A1F52E6001CD1F2 /* FSObjectInspectorOptionsViewController.m */, + EDA6AC551A1F52E6001CD1F2 /* FSObjectInspectorOptionsViewController.xib */, + ); + name = "Object Inspector"; sourceTree = ""; }; F5F00F100279FB69016D9B48 /* JGAdditions */ = { @@ -5084,12 +5326,12 @@ F5F1A9F4022E9A96011160FE /* F-Script */ = { isa = PBXGroup; children = ( - F598CDB7025CF7E5011B2E41 /* fs.nib */, + 0B7389001B397C4F005BD678 /* fs.xib */, F5F1A9F7022E9A96011160FE /* fs.icns */, F5F1A9F8022E9A96011160FE /* fs_main.m */, F5F1A9F9022E9A96011160FE /* FScriptAppController.h */, F5F1A9FA022E9A96011160FE /* FScriptAppController.m */, - F5F1A9FB022E9A96011160FE /* FScriptAppPreference.nib */, + 0B7388FB1B397B90005BD678 /* FScriptAppPreference.xib */, 8F9636430F8DF6AB00A70F39 /* FSDemoAssistant.h */, 8F9636480F8DF86600A70F39 /* DemoAssistant.xib */, 8F9636410F8DF69F00A70F39 /* FSDemoAssistant.m */, @@ -5108,17 +5350,6 @@ path = FSTest1; sourceTree = ""; }; - F5F1AAB6022E9E90011160FE /* FSTest2 */ = { - isa = PBXGroup; - children = ( - F5F1AAB7022E9E90011160FE /* DOCustom.h */, - F5F1AAB8022E9E90011160FE /* DOCustom.m */, - F5F1AAB9022E9E90011160FE /* main.m */, - F5F1AABA022E9E90011160FE /* MainMenu.nib */, - ); - path = FSTest2; - sourceTree = ""; - }; /* End PBXGroup section */ /* Begin PBXHeadersBuildPhase section */ @@ -5126,7 +5357,6 @@ isa = PBXHeadersBuildPhase; buildActionMask = 2147483647; files = ( - 8F6DA5E0055FC6980050409A /* DOCustom.h in Headers */, 8F6DA5E1055FC6980050409A /* FSAirplane.h in Headers */, 8F6DA5E3055FC6980050409A /* ArrayPrivate.h in Headers */, 8F6DA5E4055FC6980050409A /* ArrayRep.h in Headers */, @@ -5138,6 +5368,7 @@ 8F6DA5EA055FC6980050409A /* FSObjectBrowserArgumentPanel.h in Headers */, 8F6DA5EB055FC6980050409A /* FSObjectBrowserCell.h in Headers */, 8F6DA5EC055FC6980050409A /* FSObjectBrowserView.h in Headers */, + EDFB30351A18CA26002C8DD7 /* metamacros.h in Headers */, 8F6DA5ED055FC6980050409A /* FSBlock.h in Headers */, 8F6DA5EE055FC6980050409A /* BlockInspector.h in Headers */, 8F6DA5EF055FC6980050409A /* BlockPrivate.h in Headers */, @@ -5155,10 +5386,13 @@ 8F6DA5FB055FC6980050409A /* FSArchiver.h in Headers */, 8F6DA5FC055FC6980050409A /* FSFlight.h in Headers */, 8F6DA5FD055FC6980050409A /* FSBoolean.h in Headers */, + ED3CB6481A1E5B3300771077 /* FSColorWell.h in Headers */, 8F6DA5FE055FC6980050409A /* FSBooleanPrivate.h in Headers */, 8F6DA600055FC6980050409A /* FScriptFunctions.h in Headers */, 8F6DA601055FC6980050409A /* FSInterpreter.h in Headers */, 8F6DA602055FC6980050409A /* FSInterpreterView.h in Headers */, + ED68BE561A35E94B00968430 /* FSObjectBrowserWindow.h in Headers */, + EDA6AC5E1A1F52E6001CD1F2 /* FSObjectInspectorOptionsViewController.h in Headers */, 8F6DA603055FC6980050409A /* FSInterpreterViewIBHeader.h in Headers */, 8F6DA604055FC6980050409A /* FSNSArray.h in Headers */, 8F6DA605055FC6980050409A /* FSNSDictionary.h in Headers */, @@ -5174,6 +5408,7 @@ 8F6DA60F055FC6980050409A /* FScript.h in Headers */, 8F6DA610055FC6980050409A /* FSNSProxy.h in Headers */, 8F6DA611055FC6980050409A /* FSNSString.h in Headers */, + ED8222ED1A19554F00C42C72 /* FSObjectEnumInfo.h in Headers */, 8F6DA612055FC6980050409A /* FSNSStringPrivate.h in Headers */, 8F6DA614055FC6980050409A /* FSPattern.h in Headers */, 8F6DA616055FC6980050409A /* FSUnarchiver.h in Headers */, @@ -5223,6 +5458,7 @@ 8F60217605A25CDC0004EFF1 /* FSCollectionInspectorTableView.h in Headers */, 8F60F24D05A9FE8B00985FEC /* FSNSSet.h in Headers */, 8FDCCD5605C09F8200747C0A /* FSAttributedStringInspector.h in Headers */, + EDA6AC481A1F407C001CD1F2 /* FSObjectInspectorOutlineView.h in Headers */, 8FDCCDC705C0A23100747C0A /* FSNSAttributedString.h in Headers */, 8F71F72605C43A7D00C34794 /* FSInterpreterViewPrivate.h in Headers */, 8F0B670105C5639E0099180D /* FScriptMenuItem.h in Headers */, @@ -5235,12 +5471,15 @@ 8F8EA793077F6C9300AC1C96 /* FSGenericPointer.h in Headers */, 8F8EA7F5077F719800AC1C96 /* FSPointerPrivate.h in Headers */, 8F8EA85B077F79A000AC1C96 /* FSGenericPointerPrivate.h in Headers */, + ED8222DC1A194FD600C42C72 /* FSObjectInspectorViewModelItem.h in Headers */, 8FE9AE2C078071CC005B2CC4 /* FSObjectPointer.h in Headers */, + EDC2C8EC1A1A99F600942777 /* FSObjectInspectorViewController.h in Headers */, 8FE9AE8F07807269005B2CC4 /* FSObjectPointerPrivate.h in Headers */, 8F86923A07F19BA8000D20A4 /* FSObjectBrowserNamedObjectWrapper.h in Headers */, 8F95E3C908034A670030B65C /* FSPredicateTextView.h in Headers */, 8FE7E0EE082AD964008231E8 /* FSCoreDataSample.h in Headers */, 8F936BF5082E8DBA00A04EBF /* FSManagedObjectContextInspector.h in Headers */, + ED83193A1A1BFA7400290EE2 /* FSObjectInspectorViewController+NonArc.h in Headers */, 8F936C00082E8E6D00A04EBF /* FSNSManagedObjectContext.h in Headers */, 8F917E20095F5DE3000932D0 /* FSObjectBrowserSearchField.h in Headers */, 8F90A2F5096DB0660064F4BC /* FSBlockCompilationResult.h in Headers */, @@ -5255,11 +5494,13 @@ 8F8112F40D85E58200CB3407 /* FSCNCategory.h in Headers */, 8F59CA710D86DD0800D67A78 /* FSCNMessage.h in Headers */, 8F7223810D870C6A00394C99 /* FSCNSuper.h in Headers */, + ED8319251A1BC2B500290EE2 /* FSUtils.h in Headers */, 8F2E34240D8DB61C00912543 /* FSCNUnaryMessage.h in Headers */, 8F2E34370D8DBF6A00912543 /* FSCNBinaryMessage.h in Headers */, 8F2E34400D8DBFE700912543 /* FSCNKeywordMessage.h in Headers */, 8F5900150D9468FC003A8B17 /* FSCNCascade.h in Headers */, 8F8F58680D9FE6AA00ED0FED /* FSCNStatementList.h in Headers */, + EDC2C8EA1A1A99BF00942777 /* FSDetailedObjectInspector.h in Headers */, 8F747DAB0DA03AE200148342 /* FSCNPrecomputedObject.h in Headers */, 8F747DBA0DA0467100148342 /* FSCNArray.h in Headers */, 8FAE79AF0DA0ED5D00CB6E14 /* FSCNBlock.h in Headers */, @@ -5269,6 +5510,7 @@ 8F8949D70DE08B110094EC14 /* FSClassDefinition.h in Headers */, 8F2DE6600E57254700CF83CB /* FSTranscript.h in Headers */, 8FE6AD960EC740650096019D /* FSArray.h in Headers */, + EDC2C8F61A1AA34D00942777 /* FSObjectInspectorBackgroundView.h in Headers */, 8F31A4C70EC74A2E00D1B8E8 /* Array_fscript.h in Headers */, 8FCA00C80EEAF34300B10420 /* Block_fscript.h in Headers */, 8FBB2FF70EEB3467007A3163 /* Number_fscript.h in Headers */, @@ -5316,6 +5558,7 @@ 8F6DA803055FC70C0050409A /* BlockSignature.h in Headers */, 8F6DA804055FC70C0050409A /* BlockStackElem.h in Headers */, 8F6DA805055FC70C0050409A /* build_config.h in Headers */, + EDC2C8DE1A1A943600942777 /* FSDetailedObjectInspector.h in Headers */, 8F6DA806055FC70C0050409A /* CLIView.h in Headers */, 8F6DA807055FC70C0050409A /* FSCompilationResult.h in Headers */, 8F6DA808055FC70C0050409A /* CompiledCodeNode.h in Headers */, @@ -5325,6 +5568,7 @@ 8F6DA80C055FC70C0050409A /* FSExecutor.h in Headers */, 8F6DA80D055FC70C0050409A /* FSFlight.h in Headers */, 8F6DA80E055FC70C0050409A /* FSArchiver.h in Headers */, + ED83191D1A1BC2B500290EE2 /* FSUtils.h in Headers */, 8F6DA80F055FC70C0050409A /* FSBoolean.h in Headers */, 8F6DA810055FC70C0050409A /* FSBooleanPrivate.h in Headers */, 8F6DA812055FC70C0050409A /* FScript.h in Headers */, @@ -5337,6 +5581,7 @@ 8F6DA819055FC70C0050409A /* FSInterpreterViewIBHeader.h in Headers */, 8F6DA81A055FC70C0050409A /* FSNSArray.h in Headers */, 8F6DA81B055FC70C0050409A /* FSNSArrayPrivate.h in Headers */, + ED3CB6411A1E5B3300771077 /* FSColorWell.h in Headers */, 8F6DA81C055FC70C0050409A /* FSNSDate.h in Headers */, 8F6DA81D055FC70C0050409A /* FSNSDictionary.h in Headers */, 8F6DA81E055FC70C0050409A /* FSNSDistantObject.h in Headers */, @@ -5358,6 +5603,7 @@ 8F6DA833055FC70C0050409A /* NumberPrivate.h in Headers */, 8F6DA834055FC70C0050409A /* FSPilot.h in Headers */, 8F6DA837055FC70C0050409A /* FSReplacementForCoderForClass.h in Headers */, + ED8222E71A19554F00C42C72 /* FSObjectEnumInfo.h in Headers */, 8F6DA838055FC70C0050409A /* ShellView.h in Headers */, 8F6DA839055FC70C0050409A /* Space.h in Headers */, 8F6DA83A055FC70C0050409A /* FSCommandHistory.h in Headers */, @@ -5372,8 +5618,11 @@ 8F6DA84A055FC70C0050409A /* FSObjectBrowserToolbarButton.h in Headers */, 8F6DA84B055FC70C0050409A /* FSObjectBrowserButtonCtxBlock.h in Headers */, 8F6DA84C055FC70C0050409A /* DOCustom.h in Headers */, + ED8222D61A194FD600C42C72 /* FSObjectInspectorViewModelItem.h in Headers */, 8F6DA84E055FC70C0050409A /* Pointer.h in Headers */, + ED3004E81A1A86EF00675D94 /* FSObjectInspectorViewController.h in Headers */, 8F6DA84F055FC70C0050409A /* PointerPrivate.h in Headers */, + EDFB302F1A18CA26002C8DD7 /* metamacros.h in Headers */, 8F6DA850055FC70C0050409A /* FSInterpreterPrivate.h in Headers */, 8F6DA851055FC70C0050409A /* FSIdentifierFormatter.h in Headers */, 8F6DA852055FC70C0050409A /* FSObjectFormatter.h in Headers */, @@ -5413,12 +5662,14 @@ 8F8EA860077F79A000AC1C96 /* FSGenericPointerPrivate.h in Headers */, 8FE9AE35078071CC005B2CC4 /* FSObjectPointer.h in Headers */, 8FE9AE9207807269005B2CC4 /* FSObjectPointerPrivate.h in Headers */, + ED8319321A1BFA7400290EE2 /* FSObjectInspectorViewController+NonArc.h in Headers */, 8F37AEC6078B7E900083565D /* FSManagedObjectContextInspector.h in Headers */, 8F86923E07F19BA8000D20A4 /* FSObjectBrowserNamedObjectWrapper.h in Headers */, 8F7F4FA007FB274C008E42F4 /* FSInspectorUniquier.h in Headers */, 8F95E3C708034A670030B65C /* FSPredicateTextView.h in Headers */, 8FE7E0EA082AD964008231E8 /* FSCoreDataSample.h in Headers */, 8F936BFA082E8E5000A04EBF /* FSNSManagedObjectContext.h in Headers */, + EDA6AC561A1F52E6001CD1F2 /* FSObjectInspectorOptionsViewController.h in Headers */, 8F917E28095F5DE5000932D0 /* FSObjectBrowserSearchField.h in Headers */, 8F90A2F7096DB0660064F4BC /* FSBlockCompilationResult.h in Headers */, 8FD7D4A80975B377009B2685 /* FSReturnSignal.h in Headers */, @@ -5431,10 +5682,12 @@ 8F4822090D2C317700754A4E /* FSTestObjCClass2.h in Headers */, 8F8112F60D85E58200CB3407 /* FSCNCategory.h in Headers */, 8F59CA750D86DD0800D67A78 /* FSCNMessage.h in Headers */, + EDA6AC401A1F407C001CD1F2 /* FSObjectInspectorOutlineView.h in Headers */, 8F7223830D870C6A00394C99 /* FSCNSuper.h in Headers */, 8F2E34220D8DB61C00912543 /* FSCNUnaryMessage.h in Headers */, 8F2E34350D8DBF6A00912543 /* FSCNBinaryMessage.h in Headers */, 8F2E343E0D8DBFE700912543 /* FSCNKeywordMessage.h in Headers */, + ED68BE4E1A35E94B00968430 /* FSObjectBrowserWindow.h in Headers */, 8F5900170D9468FC003A8B17 /* FSCNCascade.h in Headers */, 8F8F58660D9FE6A900ED0FED /* FSCNStatementList.h in Headers */, 8F747DAD0DA03AE200148342 /* FSCNPrecomputedObject.h in Headers */, @@ -5443,6 +5696,7 @@ 8FAE79F80DA109C500CB6E14 /* FSCNAssignment.h in Headers */, 8F45CBC20DA813F200AFA8C8 /* FSCNMethod.h in Headers */, 8FD0A3170DD7276000E47459 /* FSCNReturn.h in Headers */, + EDC2C8F01A1AA34D00942777 /* FSObjectInspectorBackgroundView.h in Headers */, 8F8949D90DE08B110094EC14 /* FSClassDefinition.h in Headers */, 8F2DE65D0E57254700CF83CB /* FSTranscript.h in Headers */, 8FE6AD930EC740650096019D /* FSArray.h in Headers */, @@ -5476,12 +5730,14 @@ 8F6DA8FB055FC71F0050409A /* FSCollectionInspector.h in Headers */, 8F6DA8FC055FC71F0050409A /* FSObjectBrowser.h in Headers */, 8F6DA8FD055FC71F0050409A /* FSObjectBrowserCell.h in Headers */, + ED8222D71A194FD600C42C72 /* FSObjectInspectorViewModelItem.h in Headers */, 8F6DA8FE055FC71F0050409A /* FSBlock.h in Headers */, 8F6DA8FF055FC71F0050409A /* BlockInspector.h in Headers */, 8F6DA900055FC71F0050409A /* BlockPrivate.h in Headers */, 8F6DA901055FC71F0050409A /* BlockRep.h in Headers */, 8F6DA903055FC71F0050409A /* BlockStackElem.h in Headers */, 8F6DA904055FC71F0050409A /* build_config.h in Headers */, + EDC2C8DF1A1A943600942777 /* FSDetailedObjectInspector.h in Headers */, 8F6DA905055FC71F0050409A /* CLIView.h in Headers */, 8F6DA906055FC71F0050409A /* FSCompilationResult.h in Headers */, 8F6DA907055FC71F0050409A /* CompiledCodeNode.h in Headers */, @@ -5500,7 +5756,9 @@ 8F6DA915055FC71F0050409A /* FSInterpreterResultPrivate.h in Headers */, 8F6DA916055FC71F0050409A /* FSInterpreterView.h in Headers */, 8F6DA917055FC71F0050409A /* FSInterpreterViewIBHeader.h in Headers */, + ED68BE4F1A35E94B00968430 /* FSObjectBrowserWindow.h in Headers */, 8F6DA918055FC71F0050409A /* FSNSArray.h in Headers */, + ED83191E1A1BC2B500290EE2 /* FSUtils.h in Headers */, 8F6DA919055FC71F0050409A /* FSNSArrayPrivate.h in Headers */, 8F6DA91A055FC71F0050409A /* FSNSDate.h in Headers */, 8F6DA91B055FC71F0050409A /* FSNSDictionary.h in Headers */, @@ -5524,6 +5782,8 @@ 8F6DA930055FC71F0050409A /* FSPilot.h in Headers */, 8F6DA931055FC71F0050409A /* Pointer.h in Headers */, 8F6DA933055FC71F0050409A /* FSReplacementForCoderForClass.h in Headers */, + ED3004E91A1A86EF00675D94 /* FSObjectInspectorViewController.h in Headers */, + EDFB30301A18CA26002C8DD7 /* metamacros.h in Headers */, 8F6DA934055FC71F0050409A /* ShellView.h in Headers */, 8F6DA935055FC71F0050409A /* Space.h in Headers */, 8F6DA936055FC71F0050409A /* FSCommandHistory.h in Headers */, @@ -5533,6 +5793,7 @@ 8F6DA93D055FC71F0050409A /* DOTest.h in Headers */, 8F6DA93E055FC71F0050409A /* FScriptTextView.h in Headers */, 8F6DA93F055FC71F0050409A /* FSObjectBrowserArgumentPanel.h in Headers */, + ED8319331A1BFA7400290EE2 /* FSObjectInspectorViewController+NonArc.h in Headers */, 8F6DA940055FC71F0050409A /* FSNSProtocolChecker.h in Headers */, 8F6DA941055FC71F0050409A /* FSObjectBrowserToolbar.h in Headers */, 8F6DA942055FC71F0050409A /* FSEvalCommand.h in Headers */, @@ -5561,10 +5822,12 @@ 8F553BF90585222700A92293 /* FSNSValue.h in Headers */, 8F7D7DBF058E32CD00F1B8A8 /* FSReplacementForCoderForNilInArray.h in Headers */, 8F0E3B82059F3DBB003F6CE9 /* FSNamedNumber.h in Headers */, + ED3CB6421A1E5B3300771077 /* FSColorWell.h in Headers */, 8F60217205A25CDC0004EFF1 /* FSCollectionInspectorTableView.h in Headers */, 8F60F24B05A9FE8B00985FEC /* FSNSSet.h in Headers */, 8FDCCD5205C09F8200747C0A /* FSAttributedStringInspector.h in Headers */, 8FDCCDC305C0A23000747C0A /* FSNSAttributedString.h in Headers */, + EDA6AC571A1F52E6001CD1F2 /* FSObjectInspectorOptionsViewController.h in Headers */, 8F71F72405C43A7D00C34794 /* FSInterpreterViewPrivate.h in Headers */, 8F0B66FF05C5639E0099180D /* FScriptMenuItem.h in Headers */, 8F658B2F05C9694F0040FB24 /* FSNSFont.h in Headers */, @@ -5584,9 +5847,12 @@ 8F95E3C308034A670030B65C /* FSPredicateTextView.h in Headers */, 8FE7E0EC082AD964008231E8 /* FSCoreDataSample.h in Headers */, 8F936BF1082E8DA400A04EBF /* FSManagedObjectContextInspector.h in Headers */, + EDA6AC411A1F407C001CD1F2 /* FSObjectInspectorOutlineView.h in Headers */, + EDC2C8F11A1AA34D00942777 /* FSObjectInspectorBackgroundView.h in Headers */, 8F936BFD082E8E5C00A04EBF /* FSNSManagedObjectContext.h in Headers */, 8F917E2C095F5DE7000932D0 /* FSObjectBrowserSearchField.h in Headers */, 8F90A2F3096DB0660064F4BC /* FSBlockCompilationResult.h in Headers */, + ED8222E81A19554F00C42C72 /* FSObjectEnumInfo.h in Headers */, 8FD7D4AA0975B377009B2685 /* FSReturnSignal.h in Headers */, 8F3C139F0C65E66400948776 /* FSMethod.h in Headers */, 8F5AD3230D05CFFE000CEAC6 /* FSCNClassDefinition.h in Headers */, @@ -5648,6 +5914,7 @@ BA2231B7189FA403002C5B6A /* BlockSignature.h in Headers */, BA2231B8189FA403002C5B6A /* BlockStackElem.h in Headers */, BA2231B9189FA403002C5B6A /* build_config.h in Headers */, + EDC2C8E01A1A943600942777 /* FSDetailedObjectInspector.h in Headers */, BA2231BA189FA403002C5B6A /* CLIView.h in Headers */, BA2231BB189FA403002C5B6A /* FSCompilationResult.h in Headers */, BA2231BC189FA403002C5B6A /* CompiledCodeNode.h in Headers */, @@ -5657,6 +5924,7 @@ BA2231C0189FA403002C5B6A /* FSExecutor.h in Headers */, BA2231C1189FA403002C5B6A /* FSFlight.h in Headers */, BA2231C2189FA403002C5B6A /* FSArchiver.h in Headers */, + ED83191F1A1BC2B500290EE2 /* FSUtils.h in Headers */, BA2231C3189FA403002C5B6A /* FSBoolean.h in Headers */, BA2231C4189FA403002C5B6A /* FSBooleanPrivate.h in Headers */, BA2231C5189FA403002C5B6A /* FScript.h in Headers */, @@ -5669,6 +5937,7 @@ BA2231CC189FA403002C5B6A /* FSInterpreterViewIBHeader.h in Headers */, BA2231CD189FA403002C5B6A /* FSNSArray.h in Headers */, BA2231CE189FA403002C5B6A /* FSNSArrayPrivate.h in Headers */, + ED3CB6431A1E5B3300771077 /* FSColorWell.h in Headers */, BA2231CF189FA403002C5B6A /* FSNSDate.h in Headers */, BA2231D0189FA403002C5B6A /* FSNSDictionary.h in Headers */, BA2231D1189FA403002C5B6A /* FSNSDistantObject.h in Headers */, @@ -5690,6 +5959,7 @@ BA2231E1189FA403002C5B6A /* NumberPrivate.h in Headers */, BA2231E2189FA403002C5B6A /* FSPilot.h in Headers */, BA2231E3189FA403002C5B6A /* FSReplacementForCoderForClass.h in Headers */, + ED8222E91A19554F00C42C72 /* FSObjectEnumInfo.h in Headers */, BA2231E4189FA403002C5B6A /* ShellView.h in Headers */, BA2231E5189FA403002C5B6A /* Space.h in Headers */, BA2231E6189FA403002C5B6A /* FSCommandHistory.h in Headers */, @@ -5704,8 +5974,11 @@ BA2231EF189FA403002C5B6A /* FSObjectBrowserToolbarButton.h in Headers */, BA2231F0189FA403002C5B6A /* FSObjectBrowserButtonCtxBlock.h in Headers */, BA2231F1189FA403002C5B6A /* DOCustom.h in Headers */, + ED8222D81A194FD600C42C72 /* FSObjectInspectorViewModelItem.h in Headers */, BA2231F2189FA403002C5B6A /* Pointer.h in Headers */, + ED3004EA1A1A86EF00675D94 /* FSObjectInspectorViewController.h in Headers */, BA2231F3189FA403002C5B6A /* PointerPrivate.h in Headers */, + EDFB30311A18CA26002C8DD7 /* metamacros.h in Headers */, BA2231F4189FA403002C5B6A /* FSInterpreterPrivate.h in Headers */, BA2231F5189FA403002C5B6A /* FSIdentifierFormatter.h in Headers */, BA2231F6189FA403002C5B6A /* FSObjectFormatter.h in Headers */, @@ -5745,12 +6018,14 @@ BA223218189FA403002C5B6A /* FSGenericPointerPrivate.h in Headers */, BA223219189FA403002C5B6A /* FSObjectPointer.h in Headers */, BA22321A189FA403002C5B6A /* FSObjectPointerPrivate.h in Headers */, + ED8319341A1BFA7400290EE2 /* FSObjectInspectorViewController+NonArc.h in Headers */, BA22321B189FA403002C5B6A /* FSManagedObjectContextInspector.h in Headers */, BA22321C189FA403002C5B6A /* FSObjectBrowserNamedObjectWrapper.h in Headers */, BA22321D189FA403002C5B6A /* FSInspectorUniquier.h in Headers */, BA22321E189FA403002C5B6A /* FSPredicateTextView.h in Headers */, BA22321F189FA403002C5B6A /* FSCoreDataSample.h in Headers */, BA223220189FA403002C5B6A /* FSNSManagedObjectContext.h in Headers */, + EDA6AC581A1F52E6001CD1F2 /* FSObjectInspectorOptionsViewController.h in Headers */, BA223221189FA403002C5B6A /* FSObjectBrowserSearchField.h in Headers */, BA223222189FA403002C5B6A /* FSBlockCompilationResult.h in Headers */, BA223223189FA403002C5B6A /* FSReturnSignal.h in Headers */, @@ -5763,10 +6038,12 @@ BA22322A189FA403002C5B6A /* FSTestObjCClass2.h in Headers */, BA22322B189FA403002C5B6A /* FSCNCategory.h in Headers */, BA22322C189FA403002C5B6A /* FSCNMessage.h in Headers */, + EDA6AC421A1F407C001CD1F2 /* FSObjectInspectorOutlineView.h in Headers */, BA22322D189FA403002C5B6A /* FSCNSuper.h in Headers */, BA22322E189FA403002C5B6A /* FSCNUnaryMessage.h in Headers */, BA22322F189FA403002C5B6A /* FSCNBinaryMessage.h in Headers */, BA223230189FA403002C5B6A /* FSCNKeywordMessage.h in Headers */, + ED68BE501A35E94B00968430 /* FSObjectBrowserWindow.h in Headers */, BA223231189FA403002C5B6A /* FSCNCascade.h in Headers */, BA223232189FA403002C5B6A /* FSCNStatementList.h in Headers */, BA223233189FA403002C5B6A /* FSCNPrecomputedObject.h in Headers */, @@ -5775,6 +6052,7 @@ BA223236189FA403002C5B6A /* FSCNAssignment.h in Headers */, BA223237189FA403002C5B6A /* FSCNMethod.h in Headers */, BA223238189FA403002C5B6A /* FSCNReturn.h in Headers */, + EDC2C8F21A1AA34D00942777 /* FSObjectInspectorBackgroundView.h in Headers */, BA223239189FA403002C5B6A /* FSClassDefinition.h in Headers */, BA22323A189FA403002C5B6A /* FSTranscript.h in Headers */, BA22323B189FA403002C5B6A /* FSArray.h in Headers */, @@ -5816,6 +6094,7 @@ BA223377189FA412002C5B6A /* BlockSignature.h in Headers */, BA223378189FA412002C5B6A /* BlockStackElem.h in Headers */, BA223379189FA412002C5B6A /* build_config.h in Headers */, + EDC2C8E21A1A943600942777 /* FSDetailedObjectInspector.h in Headers */, BA22337A189FA412002C5B6A /* CLIView.h in Headers */, BA22337B189FA412002C5B6A /* FSCompilationResult.h in Headers */, BA22337C189FA412002C5B6A /* CompiledCodeNode.h in Headers */, @@ -5825,6 +6104,7 @@ BA223380189FA412002C5B6A /* FSExecutor.h in Headers */, BA223381189FA412002C5B6A /* FSFlight.h in Headers */, BA223382189FA412002C5B6A /* FSArchiver.h in Headers */, + ED8319211A1BC2B500290EE2 /* FSUtils.h in Headers */, BA223383189FA412002C5B6A /* FSBoolean.h in Headers */, BA223384189FA412002C5B6A /* FSBooleanPrivate.h in Headers */, BA223385189FA412002C5B6A /* FScript.h in Headers */, @@ -5837,6 +6117,7 @@ BA22338C189FA412002C5B6A /* FSInterpreterViewIBHeader.h in Headers */, BA22338D189FA412002C5B6A /* FSNSArray.h in Headers */, BA22338E189FA412002C5B6A /* FSNSArrayPrivate.h in Headers */, + ED3CB6451A1E5B3300771077 /* FSColorWell.h in Headers */, BA22338F189FA412002C5B6A /* FSNSDate.h in Headers */, BA223390189FA412002C5B6A /* FSNSDictionary.h in Headers */, BA223391189FA412002C5B6A /* FSNSDistantObject.h in Headers */, @@ -5858,6 +6139,7 @@ BA2233A1189FA412002C5B6A /* NumberPrivate.h in Headers */, BA2233A2189FA412002C5B6A /* FSPilot.h in Headers */, BA2233A3189FA412002C5B6A /* FSReplacementForCoderForClass.h in Headers */, + ED8222EB1A19554F00C42C72 /* FSObjectEnumInfo.h in Headers */, BA2233A4189FA412002C5B6A /* ShellView.h in Headers */, BA2233A5189FA412002C5B6A /* Space.h in Headers */, BA2233A6189FA412002C5B6A /* FSCommandHistory.h in Headers */, @@ -5872,8 +6154,11 @@ BA2233AF189FA412002C5B6A /* FSObjectBrowserToolbarButton.h in Headers */, BA2233B0189FA412002C5B6A /* FSObjectBrowserButtonCtxBlock.h in Headers */, BA2233B1189FA412002C5B6A /* DOCustom.h in Headers */, + ED8222DA1A194FD600C42C72 /* FSObjectInspectorViewModelItem.h in Headers */, BA2233B2189FA412002C5B6A /* Pointer.h in Headers */, + ED3004EC1A1A86EF00675D94 /* FSObjectInspectorViewController.h in Headers */, BA2233B3189FA412002C5B6A /* PointerPrivate.h in Headers */, + EDFB30331A18CA26002C8DD7 /* metamacros.h in Headers */, BA2233B4189FA412002C5B6A /* FSInterpreterPrivate.h in Headers */, BA2233B5189FA412002C5B6A /* FSIdentifierFormatter.h in Headers */, BA2233B6189FA412002C5B6A /* FSObjectFormatter.h in Headers */, @@ -5913,12 +6198,14 @@ BA2233D8189FA412002C5B6A /* FSGenericPointerPrivate.h in Headers */, BA2233D9189FA412002C5B6A /* FSObjectPointer.h in Headers */, BA2233DA189FA412002C5B6A /* FSObjectPointerPrivate.h in Headers */, + ED8319361A1BFA7400290EE2 /* FSObjectInspectorViewController+NonArc.h in Headers */, BA2233DB189FA412002C5B6A /* FSManagedObjectContextInspector.h in Headers */, BA2233DC189FA412002C5B6A /* FSObjectBrowserNamedObjectWrapper.h in Headers */, BA2233DD189FA412002C5B6A /* FSInspectorUniquier.h in Headers */, BA2233DE189FA412002C5B6A /* FSPredicateTextView.h in Headers */, BA2233DF189FA412002C5B6A /* FSCoreDataSample.h in Headers */, BA2233E0189FA412002C5B6A /* FSNSManagedObjectContext.h in Headers */, + EDA6AC5A1A1F52E6001CD1F2 /* FSObjectInspectorOptionsViewController.h in Headers */, BA2233E1189FA412002C5B6A /* FSObjectBrowserSearchField.h in Headers */, BA2233E2189FA412002C5B6A /* FSBlockCompilationResult.h in Headers */, BA2233E3189FA412002C5B6A /* FSReturnSignal.h in Headers */, @@ -5931,10 +6218,12 @@ BA2233EA189FA412002C5B6A /* FSTestObjCClass2.h in Headers */, BA2233EB189FA412002C5B6A /* FSCNCategory.h in Headers */, BA2233EC189FA412002C5B6A /* FSCNMessage.h in Headers */, + EDA6AC441A1F407C001CD1F2 /* FSObjectInspectorOutlineView.h in Headers */, BA2233ED189FA412002C5B6A /* FSCNSuper.h in Headers */, BA2233EE189FA412002C5B6A /* FSCNUnaryMessage.h in Headers */, BA2233EF189FA412002C5B6A /* FSCNBinaryMessage.h in Headers */, BA2233F0189FA412002C5B6A /* FSCNKeywordMessage.h in Headers */, + ED68BE521A35E94B00968430 /* FSObjectBrowserWindow.h in Headers */, BA2233F1189FA412002C5B6A /* FSCNCascade.h in Headers */, BA2233F2189FA412002C5B6A /* FSCNStatementList.h in Headers */, BA2233F3189FA412002C5B6A /* FSCNPrecomputedObject.h in Headers */, @@ -5943,6 +6232,7 @@ BA2233F6189FA412002C5B6A /* FSCNAssignment.h in Headers */, BA2233F7189FA412002C5B6A /* FSCNMethod.h in Headers */, BA2233F8189FA412002C5B6A /* FSCNReturn.h in Headers */, + EDC2C8F41A1AA34D00942777 /* FSObjectInspectorBackgroundView.h in Headers */, BA2233F9189FA412002C5B6A /* FSClassDefinition.h in Headers */, BA2233FA189FA412002C5B6A /* FSTranscript.h in Headers */, BA2233FB189FA412002C5B6A /* FSArray.h in Headers */, @@ -5976,12 +6266,14 @@ BA22352B189FA429002C5B6A /* FSCollectionInspector.h in Headers */, BA22352C189FA429002C5B6A /* FSObjectBrowser.h in Headers */, BA22352D189FA429002C5B6A /* FSObjectBrowserCell.h in Headers */, + ED8222D91A194FD600C42C72 /* FSObjectInspectorViewModelItem.h in Headers */, BA22352E189FA429002C5B6A /* FSBlock.h in Headers */, BA22352F189FA429002C5B6A /* BlockInspector.h in Headers */, BA223530189FA429002C5B6A /* BlockPrivate.h in Headers */, BA223531189FA429002C5B6A /* BlockRep.h in Headers */, BA223532189FA429002C5B6A /* BlockStackElem.h in Headers */, BA223533189FA429002C5B6A /* build_config.h in Headers */, + EDC2C8E11A1A943600942777 /* FSDetailedObjectInspector.h in Headers */, BA223534189FA429002C5B6A /* CLIView.h in Headers */, BA223535189FA429002C5B6A /* FSCompilationResult.h in Headers */, BA223536189FA429002C5B6A /* CompiledCodeNode.h in Headers */, @@ -6000,7 +6292,9 @@ BA223543189FA429002C5B6A /* FSInterpreterResultPrivate.h in Headers */, BA223544189FA429002C5B6A /* FSInterpreterView.h in Headers */, BA223545189FA429002C5B6A /* FSInterpreterViewIBHeader.h in Headers */, + ED68BE511A35E94B00968430 /* FSObjectBrowserWindow.h in Headers */, BA223546189FA429002C5B6A /* FSNSArray.h in Headers */, + ED8319201A1BC2B500290EE2 /* FSUtils.h in Headers */, BA223547189FA429002C5B6A /* FSNSArrayPrivate.h in Headers */, BA223548189FA429002C5B6A /* FSNSDate.h in Headers */, BA223549189FA429002C5B6A /* FSNSDictionary.h in Headers */, @@ -6024,6 +6318,8 @@ BA22355B189FA429002C5B6A /* FSPilot.h in Headers */, BA22355C189FA429002C5B6A /* Pointer.h in Headers */, BA22355D189FA429002C5B6A /* FSReplacementForCoderForClass.h in Headers */, + ED3004EB1A1A86EF00675D94 /* FSObjectInspectorViewController.h in Headers */, + EDFB30321A18CA26002C8DD7 /* metamacros.h in Headers */, BA22355E189FA429002C5B6A /* ShellView.h in Headers */, BA22355F189FA429002C5B6A /* Space.h in Headers */, BA223560189FA429002C5B6A /* FSCommandHistory.h in Headers */, @@ -6033,6 +6329,7 @@ BA223564189FA429002C5B6A /* DOTest.h in Headers */, BA223565189FA429002C5B6A /* FScriptTextView.h in Headers */, BA223566189FA429002C5B6A /* FSObjectBrowserArgumentPanel.h in Headers */, + ED8319351A1BFA7400290EE2 /* FSObjectInspectorViewController+NonArc.h in Headers */, BA223567189FA429002C5B6A /* FSNSProtocolChecker.h in Headers */, BA223568189FA429002C5B6A /* FSObjectBrowserToolbar.h in Headers */, BA223569189FA429002C5B6A /* FSEvalCommand.h in Headers */, @@ -6061,10 +6358,12 @@ BA223580189FA429002C5B6A /* FSNSValue.h in Headers */, BA223581189FA429002C5B6A /* FSReplacementForCoderForNilInArray.h in Headers */, BA223582189FA429002C5B6A /* FSNamedNumber.h in Headers */, + ED3CB6441A1E5B3300771077 /* FSColorWell.h in Headers */, BA223583189FA429002C5B6A /* FSCollectionInspectorTableView.h in Headers */, BA223584189FA429002C5B6A /* FSNSSet.h in Headers */, BA223585189FA429002C5B6A /* FSAttributedStringInspector.h in Headers */, BA223586189FA429002C5B6A /* FSNSAttributedString.h in Headers */, + EDA6AC591A1F52E6001CD1F2 /* FSObjectInspectorOptionsViewController.h in Headers */, BA223587189FA429002C5B6A /* FSInterpreterViewPrivate.h in Headers */, BA223588189FA429002C5B6A /* FScriptMenuItem.h in Headers */, BA223589189FA429002C5B6A /* FSNSFont.h in Headers */, @@ -6084,9 +6383,12 @@ BA223597189FA429002C5B6A /* FSPredicateTextView.h in Headers */, BA223598189FA429002C5B6A /* FSCoreDataSample.h in Headers */, BA223599189FA429002C5B6A /* FSManagedObjectContextInspector.h in Headers */, + EDA6AC431A1F407C001CD1F2 /* FSObjectInspectorOutlineView.h in Headers */, + EDC2C8F31A1AA34D00942777 /* FSObjectInspectorBackgroundView.h in Headers */, BA22359A189FA429002C5B6A /* FSNSManagedObjectContext.h in Headers */, BA22359B189FA429002C5B6A /* FSObjectBrowserSearchField.h in Headers */, BA22359C189FA429002C5B6A /* FSBlockCompilationResult.h in Headers */, + ED8222EA1A19554F00C42C72 /* FSObjectEnumInfo.h in Headers */, BA22359D189FA429002C5B6A /* FSReturnSignal.h in Headers */, BA22359E189FA429002C5B6A /* FSMethod.h in Headers */, BA22359F189FA429002C5B6A /* FSCNClassDefinition.h in Headers */, @@ -6140,12 +6442,14 @@ BA223673189FA431002C5B6A /* FSCollectionInspector.h in Headers */, BA223674189FA431002C5B6A /* FSObjectBrowser.h in Headers */, BA223675189FA431002C5B6A /* FSObjectBrowserCell.h in Headers */, + ED8222DB1A194FD600C42C72 /* FSObjectInspectorViewModelItem.h in Headers */, BA223676189FA431002C5B6A /* FSBlock.h in Headers */, BA223677189FA431002C5B6A /* BlockInspector.h in Headers */, BA223678189FA431002C5B6A /* BlockPrivate.h in Headers */, BA223679189FA431002C5B6A /* BlockRep.h in Headers */, BA22367A189FA431002C5B6A /* BlockStackElem.h in Headers */, BA22367B189FA431002C5B6A /* build_config.h in Headers */, + EDC2C8E31A1A943600942777 /* FSDetailedObjectInspector.h in Headers */, BA22367C189FA431002C5B6A /* CLIView.h in Headers */, BA22367D189FA431002C5B6A /* FSCompilationResult.h in Headers */, BA22367E189FA431002C5B6A /* CompiledCodeNode.h in Headers */, @@ -6164,7 +6468,9 @@ BA22368B189FA431002C5B6A /* FSInterpreterResultPrivate.h in Headers */, BA22368C189FA431002C5B6A /* FSInterpreterView.h in Headers */, BA22368D189FA431002C5B6A /* FSInterpreterViewIBHeader.h in Headers */, + ED68BE531A35E94B00968430 /* FSObjectBrowserWindow.h in Headers */, BA22368E189FA431002C5B6A /* FSNSArray.h in Headers */, + ED8319221A1BC2B500290EE2 /* FSUtils.h in Headers */, BA22368F189FA431002C5B6A /* FSNSArrayPrivate.h in Headers */, BA223690189FA431002C5B6A /* FSNSDate.h in Headers */, BA223691189FA431002C5B6A /* FSNSDictionary.h in Headers */, @@ -6188,6 +6494,8 @@ BA2236A3189FA431002C5B6A /* FSPilot.h in Headers */, BA2236A4189FA431002C5B6A /* Pointer.h in Headers */, BA2236A5189FA431002C5B6A /* FSReplacementForCoderForClass.h in Headers */, + ED3004ED1A1A86EF00675D94 /* FSObjectInspectorViewController.h in Headers */, + EDFB30341A18CA26002C8DD7 /* metamacros.h in Headers */, BA2236A6189FA431002C5B6A /* ShellView.h in Headers */, BA2236A7189FA431002C5B6A /* Space.h in Headers */, BA2236A8189FA431002C5B6A /* FSCommandHistory.h in Headers */, @@ -6197,6 +6505,7 @@ BA2236AC189FA431002C5B6A /* DOTest.h in Headers */, BA2236AD189FA431002C5B6A /* FScriptTextView.h in Headers */, BA2236AE189FA431002C5B6A /* FSObjectBrowserArgumentPanel.h in Headers */, + ED8319371A1BFA7400290EE2 /* FSObjectInspectorViewController+NonArc.h in Headers */, BA2236AF189FA431002C5B6A /* FSNSProtocolChecker.h in Headers */, BA2236B0189FA431002C5B6A /* FSObjectBrowserToolbar.h in Headers */, BA2236B1189FA431002C5B6A /* FSEvalCommand.h in Headers */, @@ -6225,10 +6534,12 @@ BA2236C8189FA431002C5B6A /* FSNSValue.h in Headers */, BA2236C9189FA431002C5B6A /* FSReplacementForCoderForNilInArray.h in Headers */, BA2236CA189FA431002C5B6A /* FSNamedNumber.h in Headers */, + ED3CB6461A1E5B3300771077 /* FSColorWell.h in Headers */, BA2236CB189FA431002C5B6A /* FSCollectionInspectorTableView.h in Headers */, BA2236CC189FA431002C5B6A /* FSNSSet.h in Headers */, BA2236CD189FA431002C5B6A /* FSAttributedStringInspector.h in Headers */, BA2236CE189FA431002C5B6A /* FSNSAttributedString.h in Headers */, + EDA6AC5B1A1F52E6001CD1F2 /* FSObjectInspectorOptionsViewController.h in Headers */, BA2236CF189FA431002C5B6A /* FSInterpreterViewPrivate.h in Headers */, BA2236D0189FA431002C5B6A /* FScriptMenuItem.h in Headers */, BA2236D1189FA431002C5B6A /* FSNSFont.h in Headers */, @@ -6248,9 +6559,12 @@ BA2236DF189FA431002C5B6A /* FSPredicateTextView.h in Headers */, BA2236E0189FA431002C5B6A /* FSCoreDataSample.h in Headers */, BA2236E1189FA431002C5B6A /* FSManagedObjectContextInspector.h in Headers */, + EDA6AC451A1F407C001CD1F2 /* FSObjectInspectorOutlineView.h in Headers */, + EDC2C8F51A1AA34D00942777 /* FSObjectInspectorBackgroundView.h in Headers */, BA2236E2189FA431002C5B6A /* FSNSManagedObjectContext.h in Headers */, BA2236E3189FA431002C5B6A /* FSObjectBrowserSearchField.h in Headers */, BA2236E4189FA431002C5B6A /* FSBlockCompilationResult.h in Headers */, + ED8222EC1A19554F00C42C72 /* FSObjectEnumInfo.h in Headers */, BA2236E5189FA431002C5B6A /* FSReturnSignal.h in Headers */, BA2236E6189FA431002C5B6A /* FSMethod.h in Headers */, BA2236E7189FA431002C5B6A /* FSCNClassDefinition.h in Headers */, @@ -6290,379 +6604,364 @@ ); runOnlyForDeploymentPostprocessing = 0; }; - E29F5BD119FD93FD00AD90CF /* Headers */ = { + EDC2C9041A1AA50D00942777 /* Headers */ = { isa = PBXHeadersBuildPhase; buildActionMask = 2147483647; files = ( - E29F5BD219FD93FD00AD90CF /* FSAirplane.h in Headers */, - E29F5BD319FD93FD00AD90CF /* ArrayPrivate.h in Headers */, - E29F5BD419FD93FD00AD90CF /* ArrayRep.h in Headers */, - E29F5BD519FD93FD00AD90CF /* ArrayRepDouble.h in Headers */, - E29F5BD619FD93FD00AD90CF /* ArrayRepEmpty.h in Headers */, - E29F5BD719FD93FD00AD90CF /* ArrayRepId.h in Headers */, - E29F5BD819FD93FD00AD90CF /* FSCollectionInspector.h in Headers */, - E29F5BD919FD93FD00AD90CF /* FSObjectBrowser.h in Headers */, - E29F5BDA19FD93FD00AD90CF /* FSObjectBrowserArgumentPanel.h in Headers */, - E29F5BDB19FD93FD00AD90CF /* FSObjectBrowserCell.h in Headers */, - E29F5BDC19FD93FD00AD90CF /* FSObjectBrowserView.h in Headers */, - E29F5BDD19FD93FD00AD90CF /* FSBlock.h in Headers */, - E29F5BDE19FD93FD00AD90CF /* BlockInspector.h in Headers */, - E29F5BDF19FD93FD00AD90CF /* BlockPrivate.h in Headers */, - E29F5BE019FD93FD00AD90CF /* BlockRep.h in Headers */, - E29F5BE119FD93FD00AD90CF /* BlockSignature.h in Headers */, - E29F5BE219FD93FD00AD90CF /* BlockStackElem.h in Headers */, - E29F5BE319FD93FD00AD90CF /* build_config.h in Headers */, - E29F5BE419FD93FD00AD90CF /* CLIView.h in Headers */, - E29F5BE519FD93FD00AD90CF /* FSCompilationResult.h in Headers */, - E29F5BE619FD93FD00AD90CF /* CompiledCodeNode.h in Headers */, - E29F5BE719FD93FD00AD90CF /* FSCompiler.h in Headers */, - E29F5BE819FD93FD00AD90CF /* FSConstantsInitialization.h in Headers */, - E29F5BE919FD93FD00AD90CF /* FSExecEngine.h in Headers */, - E29F5BEA19FD93FD00AD90CF /* FSExecutor.h in Headers */, - E29F5BEB19FD93FD00AD90CF /* FSFlight.h in Headers */, - E29F5BEC19FD93FD00AD90CF /* FSArchiver.h in Headers */, - E29F5BED19FD93FD00AD90CF /* FSBoolean.h in Headers */, - E29F5BEE19FD93FD00AD90CF /* FSBooleanPrivate.h in Headers */, - E29F5BEF19FD93FD00AD90CF /* FScript.h in Headers */, - E29F5BF019FD93FD00AD90CF /* FScriptFunctions.h in Headers */, - E29F5BF119FD93FD00AD90CF /* FScriptTextView.h in Headers */, - E29F5BF219FD93FD00AD90CF /* FSInterpreter.h in Headers */, - E29F5BF319FD93FD00AD90CF /* FSInterpreterResult.h in Headers */, - E29F5BF419FD93FD00AD90CF /* FSInterpreterResultPrivate.h in Headers */, - E29F5BF519FD93FD00AD90CF /* FSInterpreterView.h in Headers */, - E29F5BF619FD93FD00AD90CF /* FSInterpreterViewIBHeader.h in Headers */, - E29F5BF719FD93FD00AD90CF /* FSNSArray.h in Headers */, - E29F5BF819FD93FD00AD90CF /* FSNSArrayPrivate.h in Headers */, - E29F5BF919FD93FD00AD90CF /* FSNSDate.h in Headers */, - E29F5BFA19FD93FD00AD90CF /* FSNSDictionary.h in Headers */, - E29F5BFB19FD93FD00AD90CF /* FSNSDistantObject.h in Headers */, - E29F5BFC19FD93FD00AD90CF /* FSNSMutableString.h in Headers */, - E29F5BFD19FD93FD00AD90CF /* FSNSNumber.h in Headers */, - E29F5BFE19FD93FD00AD90CF /* FSNSObject.h in Headers */, - E29F5BFF19FD93FD00AD90CF /* FSNSProxy.h in Headers */, - E29F5C0019FD93FD00AD90CF /* FSPattern.h in Headers */, - E29F5C0119FD93FD00AD90CF /* FSUnarchiver.h in Headers */, - E29F5C0219FD93FD00AD90CF /* FSVoid.h in Headers */, - E29F5C0319FD93FD00AD90CF /* FSVoidPrivate.h in Headers */, - E29F5C0419FD93FD00AD90CF /* FSGenericObjectInspector.h in Headers */, - E29F5C0519FD93FD00AD90CF /* KTestManager.h in Headers */, - E29F5C0619FD93FD00AD90CF /* MessagePatternCodeNode.h in Headers */, - E29F5C0719FD93FD00AD90CF /* FSMiscTools.h in Headers */, - E29F5C0819FD93FD00AD90CF /* FSMsgContext.h in Headers */, - E29F5C0919FD93FD00AD90CF /* FSNewlyAllocatedObjectHolder.h in Headers */, - E29F5C0A19FD93FD00AD90CF /* FSNumber.h in Headers */, - E29F5C0B19FD93FD00AD90CF /* NumberPrivate.h in Headers */, - E29F5C0C19FD93FD00AD90CF /* FSPilot.h in Headers */, - E29F5C0D19FD93FD00AD90CF /* FSReplacementForCoderForClass.h in Headers */, - E29F5C0E19FD93FD00AD90CF /* ShellView.h in Headers */, - E29F5C0F19FD93FD00AD90CF /* Space.h in Headers */, - E29F5C1019FD93FD00AD90CF /* FSCommandHistory.h in Headers */, - E29F5C1119FD93FD00AD90CF /* FSSystem.h in Headers */, - E29F5C1219FD93FD00AD90CF /* DOTest.h in Headers */, - E29F5C1319FD93FD00AD90CF /* FSNSProtocolChecker.h in Headers */, - E29F5C1419FD93FD00AD90CF /* FScriptAppController.h in Headers */, - E29F5C1519FD93FD00AD90CF /* FSObjectBrowserToolbar.h in Headers */, - E29F5C1619FD93FD00AD90CF /* FSEvalCommand.h in Headers */, - E29F5C1719FD93FD00AD90CF /* FSServicesProvider.h in Headers */, - E29F5C1819FD93FD00AD90CF /* FSTask.h in Headers */, - E29F5C1919FD93FD00AD90CF /* FSObjectBrowserToolbarButton.h in Headers */, - E29F5C1A19FD93FD00AD90CF /* FSObjectBrowserButtonCtxBlock.h in Headers */, - E29F5C1B19FD93FD00AD90CF /* DOCustom.h in Headers */, - E29F5C1C19FD93FD00AD90CF /* Pointer.h in Headers */, - E29F5C1D19FD93FD00AD90CF /* PointerPrivate.h in Headers */, - E29F5C1E19FD93FD00AD90CF /* FSInterpreterPrivate.h in Headers */, - E29F5C1F19FD93FD00AD90CF /* FSIdentifierFormatter.h in Headers */, - E29F5C2019FD93FD00AD90CF /* FSObjectFormatter.h in Headers */, - E29F5C2119FD93FD00AD90CF /* FSSystemPrivate.h in Headers */, - E29F5C2219FD93FD00AD90CF /* FSKeyedUnarchiver.h in Headers */, - E29F5C2319FD93FD00AD90CF /* FSKeyedArchiver.h in Headers */, - E29F5C2419FD93FD00AD90CF /* FSConstantListBuilder.h in Headers */, - E29F5C2519FD93FD00AD90CF /* FSImageInspector.h in Headers */, - E29F5C2619FD93FD00AD90CF /* FSNSImage.h in Headers */, - E29F5C2719FD93FD00AD90CF /* FSObjectBrowserToolbarItem.h in Headers */, - E29F5C2819FD93FD00AD90CF /* FSNSObjectPrivate.h in Headers */, - E29F5C2919FD93FD00AD90CF /* FSArrayEnumerator.h in Headers */, - E29F5C2A19FD93FD00AD90CF /* FSNSMutableArray.h in Headers */, - E29F5C2B19FD93FD00AD90CF /* FSObjectBrowserButtonsInspector.h in Headers */, - E29F5C2C19FD93FD00AD90CF /* ArrayRepBoolean.h in Headers */, - E29F5C2D19FD93FD00AD90CF /* FSNSValue.h in Headers */, - E29F5C2E19FD93FD00AD90CF /* FSReplacementForCoderForNilInArray.h in Headers */, - E29F5C2F19FD93FD00AD90CF /* FSNamedNumber.h in Headers */, - E29F5C3019FD93FD00AD90CF /* FSCollectionInspectorTableView.h in Headers */, - E29F5C3119FD93FD00AD90CF /* FSNSSet.h in Headers */, - E29F5C3219FD93FD00AD90CF /* FSAttributedStringInspector.h in Headers */, - E29F5C3319FD93FD00AD90CF /* FSNSAttributedString.h in Headers */, - E29F5C3419FD93FD00AD90CF /* FSInterpreterViewPrivate.h in Headers */, - E29F5C3519FD93FD00AD90CF /* FScriptMenuItem.h in Headers */, - E29F5C3619FD93FD00AD90CF /* FSNSFont.h in Headers */, - E29F5C3719FD93FD00AD90CF /* FSObjectBrowserMatrix.h in Headers */, - E29F5C3819FD93FD00AD90CF /* FSNSString.h in Headers */, - E29F5C3919FD93FD00AD90CF /* FSNSStringPrivate.h in Headers */, - E29F5C3A19FD93FD00AD90CF /* FSSymbolTable.h in Headers */, - E29F5C3B19FD93FD00AD90CF /* TestFS.h in Headers */, - E29F5C3C19FD93FD00AD90CF /* FSObjectBrowserViewObjectInfo.h in Headers */, - E29F5C3D19FD93FD00AD90CF /* FSCollectionInspectorView.h in Headers */, - E29F5C3E19FD93FD00AD90CF /* ArrayRepFetchRequest.h in Headers */, - E29F5C3F19FD93FD00AD90CF /* FSPointer.h in Headers */, - E29F5C4019FD93FD00AD90CF /* FSGenericPointer.h in Headers */, - E29F5C4119FD93FD00AD90CF /* FSPointerPrivate.h in Headers */, - E29F5C4219FD93FD00AD90CF /* FSGenericPointerPrivate.h in Headers */, - E29F5C4319FD93FD00AD90CF /* FSObjectPointer.h in Headers */, - E29F5C4419FD93FD00AD90CF /* FSObjectPointerPrivate.h in Headers */, - E29F5C4519FD93FD00AD90CF /* FSManagedObjectContextInspector.h in Headers */, - E29F5C4619FD93FD00AD90CF /* FSObjectBrowserNamedObjectWrapper.h in Headers */, - E29F5C4719FD93FD00AD90CF /* FSInspectorUniquier.h in Headers */, - E29F5C4819FD93FD00AD90CF /* FSPredicateTextView.h in Headers */, - E29F5C4919FD93FD00AD90CF /* FSCoreDataSample.h in Headers */, - E29F5C4A19FD93FD00AD90CF /* FSNSManagedObjectContext.h in Headers */, - E29F5C4B19FD93FD00AD90CF /* FSObjectBrowserSearchField.h in Headers */, - E29F5C4C19FD93FD00AD90CF /* FSBlockCompilationResult.h in Headers */, - E29F5C4D19FD93FD00AD90CF /* FSReturnSignal.h in Headers */, - E29F5C4E19FD93FD00AD90CF /* FSConstantsDictionaryGenerator.h in Headers */, - E29F5C4F19FD93FD00AD90CF /* FSMethod.h in Headers */, - E29F5C5019FD93FD00AD90CF /* FSCNClassDefinition.h in Headers */, - E29F5C5119FD93FD00AD90CF /* FSCNBase.h in Headers */, - E29F5C5219FD93FD00AD90CF /* FSCNIdentifier.h in Headers */, - E29F5C5319FD93FD00AD90CF /* FSTestObjCClass1.h in Headers */, - E29F5C5419FD93FD00AD90CF /* FSTestObjCClass2.h in Headers */, - E29F5C5519FD93FD00AD90CF /* FSCNCategory.h in Headers */, - E29F5C5619FD93FD00AD90CF /* FSCNMessage.h in Headers */, - E29F5C5719FD93FD00AD90CF /* FSCNSuper.h in Headers */, - E29F5C5819FD93FD00AD90CF /* FSCNUnaryMessage.h in Headers */, - E29F5C5919FD93FD00AD90CF /* FSCNBinaryMessage.h in Headers */, - E29F5C5A19FD93FD00AD90CF /* FSCNKeywordMessage.h in Headers */, - E29F5C5B19FD93FD00AD90CF /* FSCNCascade.h in Headers */, - E29F5C5C19FD93FD00AD90CF /* FSCNStatementList.h in Headers */, - E29F5C5D19FD93FD00AD90CF /* FSCNPrecomputedObject.h in Headers */, - E29F5C5E19FD93FD00AD90CF /* FSCNArray.h in Headers */, - E29F5C5F19FD93FD00AD90CF /* FSCNBlock.h in Headers */, - E29F5C6019FD93FD00AD90CF /* FSCNAssignment.h in Headers */, - E29F5C6119FD93FD00AD90CF /* FSCNMethod.h in Headers */, - E29F5C6219FD93FD00AD90CF /* FSCNReturn.h in Headers */, - E29F5C6319FD93FD00AD90CF /* FSClassDefinition.h in Headers */, - E29F5C6419FD93FD00AD90CF /* FSTranscript.h in Headers */, - E29F5C6519FD93FD00AD90CF /* FSArray.h in Headers */, - E29F5C6619FD93FD00AD90CF /* Array_fscript.h in Headers */, - E29F5C6719FD93FD00AD90CF /* Block_fscript.h in Headers */, - E29F5C6819FD93FD00AD90CF /* Number_fscript.h in Headers */, - E29F5C6919FD93FD00AD90CF /* FSGlobalScope.h in Headers */, - E29F5C6A19FD93FD00AD90CF /* FSNSFileHandle.h in Headers */, - E29F5C6B19FD93FD00AD90CF /* FSAssociation.h in Headers */, - E29F5C6C19FD93FD00AD90CF /* FSCNDictionary.h in Headers */, - E29F5C6D19FD93FD00AD90CF /* FSObjectBrowserBottomBarTextDisplay.h in Headers */, - E29F5C6E19FD93FD00AD90CF /* FSNSAffineTransform.h in Headers */, - E29F5C6F19FD93FD00AD90CF /* FSDemoAssistant.h in Headers */, - E29F5C7019FD93FD00AD90CF /* FSNewlyAllocatedObject.h in Headers */, - E29F5C7119FD93FD00AD90CF /* FSWorksWhenModalWindow.h in Headers */, - E29F5C7219FD93FD00AD90CF /* FSNSMutableDictionary.h in Headers */, + EDC2C9051A1AA50D00942777 /* FSAirplane.h in Headers */, + EDC2C9061A1AA50D00942777 /* ArrayPrivate.h in Headers */, + EDC2C9071A1AA50D00942777 /* ArrayRep.h in Headers */, + EDC2C9081A1AA50D00942777 /* ArrayRepDouble.h in Headers */, + EDC2C9091A1AA50D00942777 /* ArrayRepEmpty.h in Headers */, + EDC2C90A1A1AA50D00942777 /* ArrayRepId.h in Headers */, + EDC2C90B1A1AA50D00942777 /* FSCollectionInspector.h in Headers */, + EDC2C90C1A1AA50D00942777 /* FSObjectBrowser.h in Headers */, + EDC2C90D1A1AA50D00942777 /* FSObjectBrowserArgumentPanel.h in Headers */, + EDC2C90E1A1AA50D00942777 /* FSObjectBrowserCell.h in Headers */, + EDC2C90F1A1AA50D00942777 /* FSObjectBrowserView.h in Headers */, + EDC2C9101A1AA50D00942777 /* FSBlock.h in Headers */, + EDC2C9111A1AA50D00942777 /* BlockInspector.h in Headers */, + EDC2C9121A1AA50D00942777 /* BlockPrivate.h in Headers */, + EDC2C9131A1AA50D00942777 /* BlockRep.h in Headers */, + EDC2C9141A1AA50D00942777 /* BlockSignature.h in Headers */, + EDC2C9151A1AA50D00942777 /* BlockStackElem.h in Headers */, + EDC2C9161A1AA50D00942777 /* build_config.h in Headers */, + EDC2C9171A1AA50D00942777 /* FSDetailedObjectInspector.h in Headers */, + EDC2C9181A1AA50D00942777 /* CLIView.h in Headers */, + EDC2C9191A1AA50D00942777 /* FSCompilationResult.h in Headers */, + EDC2C91A1A1AA50D00942777 /* CompiledCodeNode.h in Headers */, + EDC2C91B1A1AA50D00942777 /* FSCompiler.h in Headers */, + EDC2C91C1A1AA50D00942777 /* FSConstantsInitialization.h in Headers */, + EDC2C91D1A1AA50D00942777 /* FSExecEngine.h in Headers */, + EDC2C91E1A1AA50D00942777 /* FSExecutor.h in Headers */, + EDC2C91F1A1AA50D00942777 /* FSFlight.h in Headers */, + EDC2C9201A1AA50D00942777 /* FSArchiver.h in Headers */, + ED8319231A1BC2B500290EE2 /* FSUtils.h in Headers */, + EDC2C9211A1AA50D00942777 /* FSBoolean.h in Headers */, + EDC2C9221A1AA50D00942777 /* FSBooleanPrivate.h in Headers */, + EDC2C9231A1AA50D00942777 /* FScript.h in Headers */, + EDC2C9241A1AA50D00942777 /* FScriptFunctions.h in Headers */, + EDC2C9251A1AA50D00942777 /* FScriptTextView.h in Headers */, + EDC2C9261A1AA50D00942777 /* FSInterpreter.h in Headers */, + EDC2C9271A1AA50D00942777 /* FSInterpreterResult.h in Headers */, + EDC2C9281A1AA50D00942777 /* FSInterpreterResultPrivate.h in Headers */, + EDC2C9291A1AA50D00942777 /* FSInterpreterView.h in Headers */, + EDC2C92A1A1AA50D00942777 /* FSInterpreterViewIBHeader.h in Headers */, + EDC2C92B1A1AA50D00942777 /* FSNSArray.h in Headers */, + EDC2C92C1A1AA50D00942777 /* FSNSArrayPrivate.h in Headers */, + ED3CB6471A1E5B3300771077 /* FSColorWell.h in Headers */, + EDC2C92D1A1AA50D00942777 /* FSNSDate.h in Headers */, + EDC2C92F1A1AA50D00942777 /* FSNSDictionary.h in Headers */, + EDC2C9301A1AA50D00942777 /* FSNSDistantObject.h in Headers */, + EDC2C9311A1AA50D00942777 /* FSNSMutableString.h in Headers */, + EDC2C9321A1AA50D00942777 /* FSNSNumber.h in Headers */, + EDC2C9331A1AA50D00942777 /* FSNSObject.h in Headers */, + EDC2C9351A1AA50D00942777 /* FSNSProxy.h in Headers */, + EDC2C9361A1AA50D00942777 /* FSPattern.h in Headers */, + EDC2C9371A1AA50D00942777 /* FSUnarchiver.h in Headers */, + EDC2C9381A1AA50D00942777 /* FSVoid.h in Headers */, + EDC2C9391A1AA50D00942777 /* FSVoidPrivate.h in Headers */, + EDC2C93A1A1AA50D00942777 /* FSGenericObjectInspector.h in Headers */, + EDC2C93B1A1AA50D00942777 /* KTestManager.h in Headers */, + EDC2C93C1A1AA50D00942777 /* MessagePatternCodeNode.h in Headers */, + EDC2C93D1A1AA50D00942777 /* FSMiscTools.h in Headers */, + EDC2C93E1A1AA50D00942777 /* FSMsgContext.h in Headers */, + EDC2C93F1A1AA50D00942777 /* FSNewlyAllocatedObjectHolder.h in Headers */, + EDC2C9401A1AA50D00942777 /* FSNumber.h in Headers */, + EDC2C9411A1AA50D00942777 /* NumberPrivate.h in Headers */, + EDC2C9421A1AA50D00942777 /* FSPilot.h in Headers */, + EDC2C9431A1AA50D00942777 /* FSReplacementForCoderForClass.h in Headers */, + EDC2C9441A1AA50D00942777 /* FSObjectEnumInfo.h in Headers */, + EDC2C9451A1AA50D00942777 /* ShellView.h in Headers */, + EDC2C9461A1AA50D00942777 /* Space.h in Headers */, + EDC2C9471A1AA50D00942777 /* FSCommandHistory.h in Headers */, + EDC2C9481A1AA50D00942777 /* FSSystem.h in Headers */, + EDC2C9491A1AA50D00942777 /* DOTest.h in Headers */, + EDC2C94A1A1AA50D00942777 /* FSNSProtocolChecker.h in Headers */, + EDC2C94B1A1AA50D00942777 /* FScriptAppController.h in Headers */, + EDC2C94C1A1AA50D00942777 /* FSObjectBrowserToolbar.h in Headers */, + EDC2C94D1A1AA50D00942777 /* FSEvalCommand.h in Headers */, + EDC2C94E1A1AA50D00942777 /* FSServicesProvider.h in Headers */, + EDC2C94F1A1AA50D00942777 /* FSTask.h in Headers */, + EDC2C9501A1AA50D00942777 /* FSObjectBrowserToolbarButton.h in Headers */, + EDC2C9511A1AA50D00942777 /* FSObjectBrowserButtonCtxBlock.h in Headers */, + EDC2C9521A1AA50D00942777 /* DOCustom.h in Headers */, + EDC2C9531A1AA50D00942777 /* FSObjectInspectorViewModelItem.h in Headers */, + EDC2C9541A1AA50D00942777 /* Pointer.h in Headers */, + EDC2C9551A1AA50D00942777 /* FSObjectInspectorViewController.h in Headers */, + EDC2C9561A1AA50D00942777 /* PointerPrivate.h in Headers */, + EDC2C9571A1AA50D00942777 /* metamacros.h in Headers */, + EDC2C9581A1AA50D00942777 /* FSInterpreterPrivate.h in Headers */, + EDC2C9591A1AA50D00942777 /* FSIdentifierFormatter.h in Headers */, + EDC2C95A1A1AA50D00942777 /* FSObjectFormatter.h in Headers */, + EDC2C95B1A1AA50D00942777 /* FSSystemPrivate.h in Headers */, + EDC2C95C1A1AA50D00942777 /* FSKeyedUnarchiver.h in Headers */, + EDC2C95D1A1AA50D00942777 /* FSKeyedArchiver.h in Headers */, + EDC2C95E1A1AA50D00942777 /* FSConstantListBuilder.h in Headers */, + EDC2C95F1A1AA50D00942777 /* FSImageInspector.h in Headers */, + EDC2C9601A1AA50D00942777 /* FSNSImage.h in Headers */, + EDC2C9611A1AA50D00942777 /* FSObjectBrowserToolbarItem.h in Headers */, + EDC2C9621A1AA50D00942777 /* FSNSObjectPrivate.h in Headers */, + EDC2C9631A1AA50D00942777 /* FSArrayEnumerator.h in Headers */, + EDC2C9641A1AA50D00942777 /* FSNSMutableArray.h in Headers */, + EDC2C9651A1AA50D00942777 /* FSObjectBrowserButtonsInspector.h in Headers */, + EDC2C9661A1AA50D00942777 /* ArrayRepBoolean.h in Headers */, + EDC2C9671A1AA50D00942777 /* FSNSValue.h in Headers */, + EDC2C9681A1AA50D00942777 /* FSReplacementForCoderForNilInArray.h in Headers */, + EDC2C9691A1AA50D00942777 /* FSNamedNumber.h in Headers */, + EDC2C96A1A1AA50D00942777 /* FSCollectionInspectorTableView.h in Headers */, + EDC2C96B1A1AA50D00942777 /* FSNSSet.h in Headers */, + EDC2C96C1A1AA50D00942777 /* FSAttributedStringInspector.h in Headers */, + EDC2C96D1A1AA50D00942777 /* FSNSAttributedString.h in Headers */, + EDC2C96E1A1AA50D00942777 /* FSInterpreterViewPrivate.h in Headers */, + EDC2C96F1A1AA50D00942777 /* FScriptMenuItem.h in Headers */, + EDC2C9701A1AA50D00942777 /* FSNSFont.h in Headers */, + EDC2C9711A1AA50D00942777 /* FSObjectBrowserMatrix.h in Headers */, + EDC2C9721A1AA50D00942777 /* FSNSString.h in Headers */, + EDC2C9741A1AA50D00942777 /* FSNSStringPrivate.h in Headers */, + EDC2C9751A1AA50D00942777 /* FSSymbolTable.h in Headers */, + EDC2C9761A1AA50D00942777 /* TestFS.h in Headers */, + EDC2C9771A1AA50D00942777 /* FSObjectBrowserViewObjectInfo.h in Headers */, + EDC2C9781A1AA50D00942777 /* FSCollectionInspectorView.h in Headers */, + EDC2C9791A1AA50D00942777 /* ArrayRepFetchRequest.h in Headers */, + EDC2C97A1A1AA50D00942777 /* FSPointer.h in Headers */, + EDC2C97B1A1AA50D00942777 /* FSGenericPointer.h in Headers */, + EDC2C97C1A1AA50D00942777 /* FSPointerPrivate.h in Headers */, + EDC2C97D1A1AA50D00942777 /* FSGenericPointerPrivate.h in Headers */, + EDC2C97E1A1AA50D00942777 /* FSObjectPointer.h in Headers */, + EDC2C97F1A1AA50D00942777 /* FSObjectPointerPrivate.h in Headers */, + ED8319381A1BFA7400290EE2 /* FSObjectInspectorViewController+NonArc.h in Headers */, + EDC2C9801A1AA50D00942777 /* FSManagedObjectContextInspector.h in Headers */, + EDC2C9811A1AA50D00942777 /* FSObjectBrowserNamedObjectWrapper.h in Headers */, + EDC2C9821A1AA50D00942777 /* FSInspectorUniquier.h in Headers */, + EDC2C9831A1AA50D00942777 /* FSPredicateTextView.h in Headers */, + EDC2C9841A1AA50D00942777 /* FSCoreDataSample.h in Headers */, + EDC2C9851A1AA50D00942777 /* FSNSManagedObjectContext.h in Headers */, + EDA6AC5C1A1F52E6001CD1F2 /* FSObjectInspectorOptionsViewController.h in Headers */, + EDC2C9861A1AA50D00942777 /* FSObjectBrowserSearchField.h in Headers */, + EDC2C9871A1AA50D00942777 /* FSBlockCompilationResult.h in Headers */, + EDC2C9881A1AA50D00942777 /* FSReturnSignal.h in Headers */, + EDC2C9891A1AA50D00942777 /* FSConstantsDictionaryGenerator.h in Headers */, + EDC2C98A1A1AA50D00942777 /* FSMethod.h in Headers */, + EDC2C98B1A1AA50D00942777 /* FSCNClassDefinition.h in Headers */, + EDC2C98C1A1AA50D00942777 /* FSCNBase.h in Headers */, + EDC2C98D1A1AA50D00942777 /* FSCNIdentifier.h in Headers */, + EDC2C98E1A1AA50D00942777 /* FSTestObjCClass1.h in Headers */, + EDC2C98F1A1AA50D00942777 /* FSTestObjCClass2.h in Headers */, + EDC2C9901A1AA50D00942777 /* FSCNCategory.h in Headers */, + EDC2C9911A1AA50D00942777 /* FSCNMessage.h in Headers */, + EDA6AC461A1F407C001CD1F2 /* FSObjectInspectorOutlineView.h in Headers */, + EDC2C9921A1AA50D00942777 /* FSCNSuper.h in Headers */, + EDC2C9931A1AA50D00942777 /* FSCNUnaryMessage.h in Headers */, + EDC2C9941A1AA50D00942777 /* FSCNBinaryMessage.h in Headers */, + EDC2C9951A1AA50D00942777 /* FSCNKeywordMessage.h in Headers */, + ED68BE541A35E94B00968430 /* FSObjectBrowserWindow.h in Headers */, + EDC2C9961A1AA50D00942777 /* FSCNCascade.h in Headers */, + EDC2C9971A1AA50D00942777 /* FSCNStatementList.h in Headers */, + EDC2C9981A1AA50D00942777 /* FSCNPrecomputedObject.h in Headers */, + EDC2C9991A1AA50D00942777 /* FSCNArray.h in Headers */, + EDC2C99A1A1AA50D00942777 /* FSCNBlock.h in Headers */, + EDC2C99B1A1AA50D00942777 /* FSCNAssignment.h in Headers */, + EDC2C99C1A1AA50D00942777 /* FSCNMethod.h in Headers */, + EDC2C99D1A1AA50D00942777 /* FSCNReturn.h in Headers */, + EDC2C99E1A1AA50D00942777 /* FSObjectInspectorBackgroundView.h in Headers */, + EDC2C99F1A1AA50D00942777 /* FSClassDefinition.h in Headers */, + EDC2C9A01A1AA50D00942777 /* FSTranscript.h in Headers */, + EDC2C9A11A1AA50D00942777 /* FSArray.h in Headers */, + EDC2C9A21A1AA50D00942777 /* Array_fscript.h in Headers */, + EDC2C9A31A1AA50D00942777 /* Block_fscript.h in Headers */, + EDC2C9A41A1AA50D00942777 /* Number_fscript.h in Headers */, + EDC2C9A51A1AA50D00942777 /* FSGlobalScope.h in Headers */, + EDC2C9A61A1AA50D00942777 /* FSNSFileHandle.h in Headers */, + EDC2C9A71A1AA50D00942777 /* FSAssociation.h in Headers */, + EDC2C9A81A1AA50D00942777 /* FSCNDictionary.h in Headers */, + EDC2C9A91A1AA50D00942777 /* FSObjectBrowserBottomBarTextDisplay.h in Headers */, + EDC2C9AA1A1AA50D00942777 /* FSNSAffineTransform.h in Headers */, + EDC2C9AB1A1AA50D00942777 /* FSDemoAssistant.h in Headers */, + EDC2C9AC1A1AA50D00942777 /* FSNewlyAllocatedObject.h in Headers */, + EDC2C9AD1A1AA50D00942777 /* FSWorksWhenModalWindow.h in Headers */, + EDC2C9AE1A1AA50D00942777 /* FSNSMutableDictionary.h in Headers */, ); runOnlyForDeploymentPostprocessing = 0; }; - E29F5DA719FD94FC00AD90CF /* Headers */ = { + EDC2CAD01A1AA52500942777 /* Headers */ = { isa = PBXHeadersBuildPhase; buildActionMask = 2147483647; files = ( - E29F5DA819FD94FC00AD90CF /* BlockSignature.h in Headers */, - E29F5DA919FD94FC00AD90CF /* FSAirplane.h in Headers */, - E29F5DAA19FD94FC00AD90CF /* ArrayPrivate.h in Headers */, - E29F5DAB19FD94FC00AD90CF /* ArrayRep.h in Headers */, - E29F5DAC19FD94FC00AD90CF /* ArrayRepDouble.h in Headers */, - E29F5DAD19FD94FC00AD90CF /* ArrayRepEmpty.h in Headers */, - E29F5DAE19FD94FC00AD90CF /* ArrayRepId.h in Headers */, - E29F5DAF19FD94FC00AD90CF /* FSCollectionInspector.h in Headers */, - E29F5DB019FD94FC00AD90CF /* FSObjectBrowser.h in Headers */, - E29F5DB119FD94FC00AD90CF /* FSObjectBrowserCell.h in Headers */, - E29F5DB219FD94FC00AD90CF /* FSBlock.h in Headers */, - E29F5DB319FD94FC00AD90CF /* BlockInspector.h in Headers */, - E29F5DB419FD94FC00AD90CF /* BlockPrivate.h in Headers */, - E29F5DB519FD94FC00AD90CF /* BlockRep.h in Headers */, - E29F5DB619FD94FC00AD90CF /* BlockStackElem.h in Headers */, - E29F5DB719FD94FC00AD90CF /* build_config.h in Headers */, - E29F5DB819FD94FC00AD90CF /* CLIView.h in Headers */, - E29F5DB919FD94FC00AD90CF /* FSCompilationResult.h in Headers */, - E29F5DBA19FD94FC00AD90CF /* CompiledCodeNode.h in Headers */, - E29F5DBB19FD94FC00AD90CF /* FSCompiler.h in Headers */, - E29F5DBC19FD94FC00AD90CF /* FSConstantsInitialization.h in Headers */, - E29F5DBD19FD94FC00AD90CF /* FSExecEngine.h in Headers */, - E29F5DBE19FD94FC00AD90CF /* FSExecutor.h in Headers */, - E29F5DBF19FD94FC00AD90CF /* FSFlight.h in Headers */, - E29F5DC019FD94FC00AD90CF /* FSArchiver.h in Headers */, - E29F5DC119FD94FC00AD90CF /* FSBoolean.h in Headers */, - E29F5DC219FD94FC00AD90CF /* FSBooleanPrivate.h in Headers */, - E29F5DC319FD94FC00AD90CF /* FScript.h in Headers */, - E29F5DC419FD94FC00AD90CF /* FScriptFunctions.h in Headers */, - E29F5DC519FD94FC00AD90CF /* FSInterpreter.h in Headers */, - E29F5DC619FD94FC00AD90CF /* FSInterpreterResult.h in Headers */, - E29F5DC719FD94FC00AD90CF /* FSInterpreterResultPrivate.h in Headers */, - E29F5DC819FD94FC00AD90CF /* FSInterpreterView.h in Headers */, - E29F5DC919FD94FC00AD90CF /* FSInterpreterViewIBHeader.h in Headers */, - E29F5DCA19FD94FC00AD90CF /* FSNSArray.h in Headers */, - E29F5DCB19FD94FC00AD90CF /* FSNSArrayPrivate.h in Headers */, - E29F5DCC19FD94FC00AD90CF /* FSNSDate.h in Headers */, - E29F5DCD19FD94FC00AD90CF /* FSNSDictionary.h in Headers */, - E29F5DCE19FD94FC00AD90CF /* FSNSMutableString.h in Headers */, - E29F5DCF19FD94FC00AD90CF /* FSNSNumber.h in Headers */, - E29F5DD019FD94FC00AD90CF /* FSNSObject.h in Headers */, - E29F5DD119FD94FC00AD90CF /* FSNSProxy.h in Headers */, - E29F5DD219FD94FC00AD90CF /* FSNSString.h in Headers */, - E29F5DD319FD94FC00AD90CF /* FSNSStringPrivate.h in Headers */, - E29F5DD419FD94FC00AD90CF /* FSPattern.h in Headers */, - E29F5DD519FD94FC00AD90CF /* FSUnarchiver.h in Headers */, - E29F5DD619FD94FC00AD90CF /* FSVoid.h in Headers */, - E29F5DD719FD94FC00AD90CF /* FSVoidPrivate.h in Headers */, - E29F5DD819FD94FC00AD90CF /* FSGenericObjectInspector.h in Headers */, - E29F5DD919FD94FC00AD90CF /* MessagePatternCodeNode.h in Headers */, - E29F5DDA19FD94FC00AD90CF /* FSMiscTools.h in Headers */, - E29F5DDB19FD94FC00AD90CF /* FSMsgContext.h in Headers */, - E29F5DDC19FD94FC00AD90CF /* FSNewlyAllocatedObjectHolder.h in Headers */, - E29F5DDD19FD94FC00AD90CF /* FSNumber.h in Headers */, - E29F5DDE19FD94FC00AD90CF /* NumberPrivate.h in Headers */, - E29F5DDF19FD94FC00AD90CF /* FSPilot.h in Headers */, - E29F5DE019FD94FC00AD90CF /* Pointer.h in Headers */, - E29F5DE119FD94FC00AD90CF /* FSReplacementForCoderForClass.h in Headers */, - E29F5DE219FD94FC00AD90CF /* ShellView.h in Headers */, - E29F5DE319FD94FC00AD90CF /* Space.h in Headers */, - E29F5DE419FD94FC00AD90CF /* FSCommandHistory.h in Headers */, - E29F5DE519FD94FC00AD90CF /* FSSystem.h in Headers */, - E29F5DE619FD94FC00AD90CF /* KTestManager.h in Headers */, - E29F5DE719FD94FC00AD90CF /* FSNSDistantObject.h in Headers */, - E29F5DE819FD94FC00AD90CF /* DOTest.h in Headers */, - E29F5DE919FD94FC00AD90CF /* FScriptTextView.h in Headers */, - E29F5DEA19FD94FC00AD90CF /* FSObjectBrowserArgumentPanel.h in Headers */, - E29F5DEB19FD94FC00AD90CF /* FSNSProtocolChecker.h in Headers */, - E29F5DEC19FD94FC00AD90CF /* FSObjectBrowserToolbar.h in Headers */, - E29F5DED19FD94FC00AD90CF /* FSEvalCommand.h in Headers */, - E29F5DEE19FD94FC00AD90CF /* FSServicesProvider.h in Headers */, - E29F5DEF19FD94FC00AD90CF /* FSTask.h in Headers */, - E29F5DF019FD94FC00AD90CF /* FSObjectBrowserToolbarButton.h in Headers */, - E29F5DF119FD94FC00AD90CF /* FSObjectBrowserButtonCtxBlock.h in Headers */, - E29F5DF219FD94FC00AD90CF /* FSObjectBrowserButtonsInspector.h in Headers */, - E29F5DF319FD94FC00AD90CF /* FSObjectBrowserView.h in Headers */, - E29F5DF419FD94FC00AD90CF /* PointerPrivate.h in Headers */, - E29F5DF519FD94FC00AD90CF /* FSInterpreterPrivate.h in Headers */, - E29F5DF619FD94FC00AD90CF /* FSObjectFormatter.h in Headers */, - E29F5DF719FD94FC00AD90CF /* FSIdentifierFormatter.h in Headers */, - E29F5DF819FD94FC00AD90CF /* FSSystemPrivate.h in Headers */, - E29F5DF919FD94FC00AD90CF /* FSKeyedUnarchiver.h in Headers */, - E29F5DFA19FD94FC00AD90CF /* FSKeyedArchiver.h in Headers */, - E29F5DFB19FD94FC00AD90CF /* FSConstantListBuilder.h in Headers */, - E29F5DFC19FD94FC00AD90CF /* FSImageInspector.h in Headers */, - E29F5DFD19FD94FC00AD90CF /* FSNSImage.h in Headers */, - E29F5DFE19FD94FC00AD90CF /* FSObjectBrowserToolbarItem.h in Headers */, - E29F5DFF19FD94FC00AD90CF /* ArrayRepBoolean.h in Headers */, - E29F5E0019FD94FC00AD90CF /* FSNSObjectPrivate.h in Headers */, - E29F5E0119FD94FC00AD90CF /* FSArrayEnumerator.h in Headers */, - E29F5E0219FD94FC00AD90CF /* TestFS.h in Headers */, - E29F5E0319FD94FC00AD90CF /* FSNSMutableArray.h in Headers */, - E29F5E0419FD94FC00AD90CF /* FSNSValue.h in Headers */, - E29F5E0519FD94FC00AD90CF /* FSReplacementForCoderForNilInArray.h in Headers */, - E29F5E0619FD94FC00AD90CF /* FSNamedNumber.h in Headers */, - E29F5E0719FD94FC00AD90CF /* FSCollectionInspectorTableView.h in Headers */, - E29F5E0819FD94FC00AD90CF /* FSNSSet.h in Headers */, - E29F5E0919FD94FC00AD90CF /* FSAttributedStringInspector.h in Headers */, - E29F5E0A19FD94FC00AD90CF /* FSNSAttributedString.h in Headers */, - E29F5E0B19FD94FC00AD90CF /* FSInterpreterViewPrivate.h in Headers */, - E29F5E0C19FD94FC00AD90CF /* FScriptMenuItem.h in Headers */, - E29F5E0D19FD94FC00AD90CF /* FSNSFont.h in Headers */, - E29F5E0E19FD94FC00AD90CF /* FSObjectBrowserMatrix.h in Headers */, - E29F5E0F19FD94FC00AD90CF /* FSSymbolTable.h in Headers */, - E29F5E1019FD94FC00AD90CF /* FSObjectBrowserViewObjectInfo.h in Headers */, - E29F5E1119FD94FC00AD90CF /* FSCollectionInspectorView.h in Headers */, - E29F5E1219FD94FC00AD90CF /* ArrayRepFetchRequest.h in Headers */, - E29F5E1319FD94FC00AD90CF /* FSPointer.h in Headers */, - E29F5E1419FD94FC00AD90CF /* FSGenericPointer.h in Headers */, - E29F5E1519FD94FC00AD90CF /* FSPointerPrivate.h in Headers */, - E29F5E1619FD94FC00AD90CF /* FSGenericPointerPrivate.h in Headers */, - E29F5E1719FD94FC00AD90CF /* FSObjectPointer.h in Headers */, - E29F5E1819FD94FC00AD90CF /* FSObjectPointerPrivate.h in Headers */, - E29F5E1919FD94FC00AD90CF /* FSObjectBrowserNamedObjectWrapper.h in Headers */, - E29F5E1A19FD94FC00AD90CF /* FSInspectorUniquier.h in Headers */, - E29F5E1B19FD94FC00AD90CF /* FSPredicateTextView.h in Headers */, - E29F5E1C19FD94FC00AD90CF /* FSCoreDataSample.h in Headers */, - E29F5E1D19FD94FC00AD90CF /* FSManagedObjectContextInspector.h in Headers */, - E29F5E1E19FD94FC00AD90CF /* FSNSManagedObjectContext.h in Headers */, - E29F5E1F19FD94FC00AD90CF /* FSObjectBrowserSearchField.h in Headers */, - E29F5E2019FD94FC00AD90CF /* FSBlockCompilationResult.h in Headers */, - E29F5E2119FD94FC00AD90CF /* FSReturnSignal.h in Headers */, - E29F5E2219FD94FC00AD90CF /* FSMethod.h in Headers */, - E29F5E2319FD94FC00AD90CF /* FSCNClassDefinition.h in Headers */, - E29F5E2419FD94FC00AD90CF /* FSCNBase.h in Headers */, - E29F5E2519FD94FC00AD90CF /* FSCNIdentifier.h in Headers */, - E29F5E2619FD94FC00AD90CF /* FSTestObjCClass1.h in Headers */, - E29F5E2719FD94FC00AD90CF /* FSTestObjCClass2.h in Headers */, - E29F5E2819FD94FC00AD90CF /* FSCNCategory.h in Headers */, - E29F5E2919FD94FC00AD90CF /* FSCNMessage.h in Headers */, - E29F5E2A19FD94FC00AD90CF /* FSCNSuper.h in Headers */, - E29F5E2B19FD94FC00AD90CF /* FSCNUnaryMessage.h in Headers */, - E29F5E2C19FD94FC00AD90CF /* FSCNBinaryMessage.h in Headers */, - E29F5E2D19FD94FC00AD90CF /* FSCNKeywordMessage.h in Headers */, - E29F5E2E19FD94FC00AD90CF /* FSCNCascade.h in Headers */, - E29F5E2F19FD94FC00AD90CF /* FSCNStatementList.h in Headers */, - E29F5E3019FD94FC00AD90CF /* FSCNPrecomputedObject.h in Headers */, - E29F5E3119FD94FC00AD90CF /* FSCNArray.h in Headers */, - E29F5E3219FD94FC00AD90CF /* FSCNBlock.h in Headers */, - E29F5E3319FD94FC00AD90CF /* FSCNAssignment.h in Headers */, - E29F5E3419FD94FC00AD90CF /* FSCNMethod.h in Headers */, - E29F5E3519FD94FC00AD90CF /* FSCNReturn.h in Headers */, - E29F5E3619FD94FC00AD90CF /* FSClassDefinition.h in Headers */, - E29F5E3719FD94FC00AD90CF /* FSTranscript.h in Headers */, - E29F5E3819FD94FC00AD90CF /* FSArray.h in Headers */, - E29F5E3919FD94FC00AD90CF /* Array_fscript.h in Headers */, - E29F5E3A19FD94FC00AD90CF /* Block_fscript.h in Headers */, - E29F5E3B19FD94FC00AD90CF /* Number_fscript.h in Headers */, - E29F5E3C19FD94FC00AD90CF /* FSGlobalScope.h in Headers */, - E29F5E3D19FD94FC00AD90CF /* FSNSFileHandle.h in Headers */, - E29F5E3E19FD94FC00AD90CF /* FSAssociation.h in Headers */, - E29F5E3F19FD94FC00AD90CF /* FSCNDictionary.h in Headers */, - E29F5E4019FD94FC00AD90CF /* FSObjectBrowserBottomBarTextDisplay.h in Headers */, - E29F5E4119FD94FC00AD90CF /* FSNSAffineTransform.h in Headers */, - E29F5E4219FD94FC00AD90CF /* FSNewlyAllocatedObject.h in Headers */, - E29F5E4319FD94FC00AD90CF /* FSWorksWhenModalWindow.h in Headers */, - E29F5E4419FD94FC00AD90CF /* FSNSMutableDictionary.h in Headers */, + EDC2CAD11A1AA52500942777 /* BlockSignature.h in Headers */, + EDC2CAD21A1AA52500942777 /* FSAirplane.h in Headers */, + EDC2CAD31A1AA52500942777 /* ArrayPrivate.h in Headers */, + EDC2CAD41A1AA52500942777 /* ArrayRep.h in Headers */, + EDC2CAD51A1AA52500942777 /* ArrayRepDouble.h in Headers */, + EDC2CAD61A1AA52500942777 /* ArrayRepEmpty.h in Headers */, + EDC2CAD71A1AA52500942777 /* ArrayRepId.h in Headers */, + EDC2CAD81A1AA52500942777 /* FSCollectionInspector.h in Headers */, + EDC2CAD91A1AA52500942777 /* FSObjectBrowser.h in Headers */, + EDC2CADA1A1AA52500942777 /* FSObjectBrowserCell.h in Headers */, + EDC2CADB1A1AA52500942777 /* FSObjectInspectorViewModelItem.h in Headers */, + EDA6AC471A1F407C001CD1F2 /* FSObjectInspectorOutlineView.h in Headers */, + EDC2CADC1A1AA52500942777 /* FSBlock.h in Headers */, + EDC2CADD1A1AA52500942777 /* BlockInspector.h in Headers */, + EDC2CADE1A1AA52500942777 /* BlockPrivate.h in Headers */, + EDC2CADF1A1AA52500942777 /* BlockRep.h in Headers */, + EDC2CAE01A1AA52500942777 /* BlockStackElem.h in Headers */, + EDC2CAE11A1AA52500942777 /* build_config.h in Headers */, + EDC2CAE21A1AA52500942777 /* FSDetailedObjectInspector.h in Headers */, + EDC2CAE31A1AA52500942777 /* CLIView.h in Headers */, + EDC2CAE41A1AA52500942777 /* FSCompilationResult.h in Headers */, + EDC2CAE51A1AA52500942777 /* CompiledCodeNode.h in Headers */, + EDC2CAE61A1AA52500942777 /* FSCompiler.h in Headers */, + EDC2CAE71A1AA52500942777 /* FSConstantsInitialization.h in Headers */, + EDC2CAE81A1AA52500942777 /* FSExecEngine.h in Headers */, + EDC2CAE91A1AA52500942777 /* FSExecutor.h in Headers */, + EDC2CAEA1A1AA52500942777 /* FSFlight.h in Headers */, + EDC2CAEB1A1AA52500942777 /* FSArchiver.h in Headers */, + EDC2CAEC1A1AA52500942777 /* FSBoolean.h in Headers */, + EDC2CAED1A1AA52500942777 /* FSBooleanPrivate.h in Headers */, + EDC2CAEE1A1AA52500942777 /* FScript.h in Headers */, + EDC2CAEF1A1AA52500942777 /* FScriptFunctions.h in Headers */, + EDC2CAF01A1AA52500942777 /* FSInterpreter.h in Headers */, + EDC2CAF11A1AA52500942777 /* FSInterpreterResult.h in Headers */, + EDC2CAF21A1AA52500942777 /* FSInterpreterResultPrivate.h in Headers */, + EDC2CAF31A1AA52500942777 /* FSInterpreterView.h in Headers */, + EDC2CAF41A1AA52500942777 /* FSInterpreterViewIBHeader.h in Headers */, + EDC2CAF51A1AA52500942777 /* FSNSArray.h in Headers */, + ED8319241A1BC2B500290EE2 /* FSUtils.h in Headers */, + EDC2CAF61A1AA52500942777 /* FSNSArrayPrivate.h in Headers */, + EDC2CAF71A1AA52500942777 /* FSNSDate.h in Headers */, + EDC2CAF81A1AA52500942777 /* FSNSDictionary.h in Headers */, + EDC2CAF91A1AA52500942777 /* FSNSMutableString.h in Headers */, + EDC2CAFA1A1AA52500942777 /* FSNSNumber.h in Headers */, + EDC2CAFB1A1AA52500942777 /* FSNSObject.h in Headers */, + EDC2CAFC1A1AA52500942777 /* FSNSProxy.h in Headers */, + EDC2CAFD1A1AA52500942777 /* FSNSString.h in Headers */, + EDC2CAFE1A1AA52500942777 /* FSNSStringPrivate.h in Headers */, + EDC2CAFF1A1AA52500942777 /* FSPattern.h in Headers */, + EDC2CB001A1AA52500942777 /* FSUnarchiver.h in Headers */, + EDC2CB011A1AA52500942777 /* FSVoid.h in Headers */, + EDC2CB021A1AA52500942777 /* FSVoidPrivate.h in Headers */, + EDC2CB031A1AA52500942777 /* FSGenericObjectInspector.h in Headers */, + EDC2CB041A1AA52500942777 /* MessagePatternCodeNode.h in Headers */, + EDC2CB051A1AA52500942777 /* FSMiscTools.h in Headers */, + EDC2CB061A1AA52500942777 /* FSMsgContext.h in Headers */, + EDC2CB071A1AA52500942777 /* FSNewlyAllocatedObjectHolder.h in Headers */, + EDC2CB081A1AA52500942777 /* FSNumber.h in Headers */, + EDC2CB091A1AA52500942777 /* NumberPrivate.h in Headers */, + EDC2CB0A1A1AA52500942777 /* FSPilot.h in Headers */, + EDC2CB0B1A1AA52500942777 /* Pointer.h in Headers */, + EDC2CB0C1A1AA52500942777 /* FSReplacementForCoderForClass.h in Headers */, + EDC2CB0D1A1AA52500942777 /* FSObjectInspectorViewController.h in Headers */, + EDC2CB0E1A1AA52500942777 /* metamacros.h in Headers */, + EDC2CB0F1A1AA52500942777 /* ShellView.h in Headers */, + EDC2CB101A1AA52500942777 /* Space.h in Headers */, + EDC2CB111A1AA52500942777 /* FSCommandHistory.h in Headers */, + EDC2CB121A1AA52500942777 /* FSSystem.h in Headers */, + EDC2CB131A1AA52500942777 /* KTestManager.h in Headers */, + EDC2CB141A1AA52500942777 /* FSNSDistantObject.h in Headers */, + EDC2CB151A1AA52500942777 /* DOTest.h in Headers */, + EDC2CB161A1AA52500942777 /* FScriptTextView.h in Headers */, + EDC2CB171A1AA52500942777 /* FSObjectBrowserArgumentPanel.h in Headers */, + ED68BE551A35E94B00968430 /* FSObjectBrowserWindow.h in Headers */, + ED8319391A1BFA7400290EE2 /* FSObjectInspectorViewController+NonArc.h in Headers */, + EDC2CB181A1AA52500942777 /* FSNSProtocolChecker.h in Headers */, + EDC2CB191A1AA52500942777 /* FSObjectBrowserToolbar.h in Headers */, + EDC2CB1A1A1AA52500942777 /* FSEvalCommand.h in Headers */, + EDC2CB1B1A1AA52500942777 /* FSServicesProvider.h in Headers */, + EDC2CB1C1A1AA52500942777 /* FSTask.h in Headers */, + EDC2CB1D1A1AA52500942777 /* FSObjectBrowserToolbarButton.h in Headers */, + EDC2CB1E1A1AA52500942777 /* FSObjectBrowserButtonCtxBlock.h in Headers */, + EDC2CB1F1A1AA52500942777 /* FSObjectBrowserButtonsInspector.h in Headers */, + EDC2CB201A1AA52500942777 /* FSObjectBrowserView.h in Headers */, + EDC2CB211A1AA52500942777 /* PointerPrivate.h in Headers */, + EDC2CB221A1AA52500942777 /* FSInterpreterPrivate.h in Headers */, + EDC2CB231A1AA52500942777 /* FSObjectFormatter.h in Headers */, + EDC2CB241A1AA52500942777 /* FSIdentifierFormatter.h in Headers */, + EDC2CB251A1AA52500942777 /* FSSystemPrivate.h in Headers */, + EDC2CB261A1AA52500942777 /* FSKeyedUnarchiver.h in Headers */, + EDC2CB271A1AA52500942777 /* FSKeyedArchiver.h in Headers */, + EDC2CB281A1AA52500942777 /* FSConstantListBuilder.h in Headers */, + EDC2CB291A1AA52500942777 /* FSImageInspector.h in Headers */, + EDC2CB2A1A1AA52500942777 /* FSNSImage.h in Headers */, + EDC2CB2B1A1AA52500942777 /* FSObjectBrowserToolbarItem.h in Headers */, + EDC2CB2C1A1AA52500942777 /* ArrayRepBoolean.h in Headers */, + EDC2CB2D1A1AA52500942777 /* FSNSObjectPrivate.h in Headers */, + EDC2CB2E1A1AA52500942777 /* FSArrayEnumerator.h in Headers */, + EDC2CB301A1AA52500942777 /* TestFS.h in Headers */, + EDC2CB311A1AA52500942777 /* FSNSMutableArray.h in Headers */, + EDC2CB321A1AA52500942777 /* FSNSValue.h in Headers */, + EDC2CB331A1AA52500942777 /* FSReplacementForCoderForNilInArray.h in Headers */, + EDC2CB341A1AA52500942777 /* FSNamedNumber.h in Headers */, + EDC2CB361A1AA52500942777 /* FSCollectionInspectorTableView.h in Headers */, + EDC2CB371A1AA52500942777 /* FSNSSet.h in Headers */, + EDC2CB391A1AA52500942777 /* FSAttributedStringInspector.h in Headers */, + EDC2CB3A1A1AA52500942777 /* FSNSAttributedString.h in Headers */, + EDC2CB3B1A1AA52500942777 /* FSInterpreterViewPrivate.h in Headers */, + EDC2CB3C1A1AA52500942777 /* FScriptMenuItem.h in Headers */, + EDC2CB3D1A1AA52500942777 /* FSNSFont.h in Headers */, + EDC2CB3E1A1AA52500942777 /* FSObjectBrowserMatrix.h in Headers */, + EDC2CB3F1A1AA52500942777 /* FSSymbolTable.h in Headers */, + EDC2CB401A1AA52500942777 /* FSObjectBrowserViewObjectInfo.h in Headers */, + EDC2CB411A1AA52500942777 /* FSCollectionInspectorView.h in Headers */, + EDC2CB421A1AA52500942777 /* ArrayRepFetchRequest.h in Headers */, + EDC2CB431A1AA52500942777 /* FSPointer.h in Headers */, + EDC2CB441A1AA52500942777 /* FSGenericPointer.h in Headers */, + EDC2CB451A1AA52500942777 /* FSPointerPrivate.h in Headers */, + EDC2CB461A1AA52500942777 /* FSGenericPointerPrivate.h in Headers */, + EDC2CB471A1AA52500942777 /* FSObjectPointer.h in Headers */, + EDC2CB481A1AA52500942777 /* FSObjectPointerPrivate.h in Headers */, + EDC2CB491A1AA52500942777 /* FSObjectBrowserNamedObjectWrapper.h in Headers */, + EDC2CB4A1A1AA52500942777 /* FSInspectorUniquier.h in Headers */, + EDC2CB4B1A1AA52500942777 /* FSPredicateTextView.h in Headers */, + EDC2CB4C1A1AA52500942777 /* FSCoreDataSample.h in Headers */, + EDC2CB4D1A1AA52500942777 /* FSManagedObjectContextInspector.h in Headers */, + EDC2CB4E1A1AA52500942777 /* FSObjectInspectorBackgroundView.h in Headers */, + EDC2CB4F1A1AA52500942777 /* FSNSManagedObjectContext.h in Headers */, + EDC2CB501A1AA52500942777 /* FSObjectBrowserSearchField.h in Headers */, + EDC2CB511A1AA52500942777 /* FSBlockCompilationResult.h in Headers */, + EDC2CB521A1AA52500942777 /* FSObjectEnumInfo.h in Headers */, + EDC2CB531A1AA52500942777 /* FSReturnSignal.h in Headers */, + EDC2CB541A1AA52500942777 /* FSMethod.h in Headers */, + EDC2CB551A1AA52500942777 /* FSCNClassDefinition.h in Headers */, + EDC2CB561A1AA52500942777 /* FSCNBase.h in Headers */, + EDC2CB571A1AA52500942777 /* FSCNIdentifier.h in Headers */, + EDC2CB581A1AA52500942777 /* FSTestObjCClass1.h in Headers */, + EDC2CB591A1AA52500942777 /* FSTestObjCClass2.h in Headers */, + EDC2CB5A1A1AA52500942777 /* FSCNCategory.h in Headers */, + EDC2CB5B1A1AA52500942777 /* FSCNMessage.h in Headers */, + EDA6AC5D1A1F52E6001CD1F2 /* FSObjectInspectorOptionsViewController.h in Headers */, + EDC2CB5C1A1AA52500942777 /* FSCNSuper.h in Headers */, + EDC2CB5D1A1AA52500942777 /* FSCNUnaryMessage.h in Headers */, + EDC2CB5E1A1AA52500942777 /* FSCNBinaryMessage.h in Headers */, + EDC2CB5F1A1AA52500942777 /* FSCNKeywordMessage.h in Headers */, + EDC2CB601A1AA52500942777 /* FSCNCascade.h in Headers */, + EDC2CB611A1AA52500942777 /* FSCNStatementList.h in Headers */, + EDC2CB621A1AA52500942777 /* FSCNPrecomputedObject.h in Headers */, + EDC2CB631A1AA52500942777 /* FSCNArray.h in Headers */, + EDC2CB641A1AA52500942777 /* FSCNBlock.h in Headers */, + EDC2CB651A1AA52500942777 /* FSCNAssignment.h in Headers */, + EDC2CB661A1AA52500942777 /* FSCNMethod.h in Headers */, + EDC2CB671A1AA52500942777 /* FSCNReturn.h in Headers */, + EDC2CB681A1AA52500942777 /* FSClassDefinition.h in Headers */, + EDC2CB691A1AA52500942777 /* FSTranscript.h in Headers */, + EDC2CB6A1A1AA52500942777 /* FSArray.h in Headers */, + EDC2CB6B1A1AA52500942777 /* Array_fscript.h in Headers */, + EDC2CB6C1A1AA52500942777 /* Block_fscript.h in Headers */, + EDC2CB6D1A1AA52500942777 /* Number_fscript.h in Headers */, + EDC2CB6E1A1AA52500942777 /* FSGlobalScope.h in Headers */, + EDC2CB6F1A1AA52500942777 /* FSNSFileHandle.h in Headers */, + EDC2CB701A1AA52500942777 /* FSAssociation.h in Headers */, + EDC2CB711A1AA52500942777 /* FSCNDictionary.h in Headers */, + EDC2CB721A1AA52500942777 /* FSObjectBrowserBottomBarTextDisplay.h in Headers */, + EDC2CB731A1AA52500942777 /* FSNSAffineTransform.h in Headers */, + EDC2CB741A1AA52500942777 /* FSNewlyAllocatedObject.h in Headers */, + EDC2CB751A1AA52500942777 /* FSWorksWhenModalWindow.h in Headers */, + EDC2CB761A1AA52500942777 /* FSNSMutableDictionary.h in Headers */, ); runOnlyForDeploymentPostprocessing = 0; }; /* End PBXHeadersBuildPhase section */ /* Begin PBXNativeTarget section */ - 8F6392D00BDB8521005C8D94 /* FScriptIBPlugin */ = { - isa = PBXNativeTarget; - buildConfigurationList = 8F6392D30BDB8522005C8D94 /* Build configuration list for PBXNativeTarget "FScriptIBPlugin" */; - buildPhases = ( - 8F6392CD0BDB8521005C8D94 /* Resources */, - 8F6392CE0BDB8521005C8D94 /* Sources */, - 8F6392CF0BDB8521005C8D94 /* Frameworks */, - ); - buildRules = ( - ); - dependencies = ( - 8F38D0DB0C36ACE0002512EE /* PBXTargetDependency */, - ); - name = FScriptIBPlugin; - productName = FScripIBPlugin; - productReference = 8F6392D10BDB8521005C8D94 /* FScriptIBPlugin.ibplugin */; - productType = "com.apple.product-type.bundle"; - }; - 8F6DA5DE055FC6980050409A /* FSTest2 */ = { - isa = PBXNativeTarget; - buildConfigurationList = 8F2881F008F9C040005B3C5A /* Build configuration list for PBXNativeTarget "FSTest2" */; - buildPhases = ( - 8F6DA5DF055FC6980050409A /* Headers */, - 8F6DA64E055FC6980050409A /* Resources */, - 8F6DA660055FC6980050409A /* Sources */, - 8F6DA6C2055FC6980050409A /* Frameworks */, - 8F6DA6CF055FC6980050409A /* Rez */, - ); - buildRules = ( - ); - dependencies = ( - ); - name = FSTest2; - productInstallPath = "$(USER_APPS_DIR)"; - productName = FSTest2; - productReference = 8FD37B9F08472E0F00524B98 /* FSTest2.app */; - productType = "com.apple.product-type.application"; - }; 8F6DA6D8055FC6C80050409A /* FSTest1 */ = { isa = PBXNativeTarget; buildConfigurationList = 8F2881EC08F9C040005B3C5A /* Build configuration list for PBXNativeTarget "FSTest1" */; @@ -6783,7 +7082,7 @@ name = "FScriptFramework 10.8"; productInstallPath = ""; productName = FScript; - productReference = BA223668189FA429002C5B6A /* FScript.framework */; + productReference = BA223668189FA429002C5B6A /* FScriptFramework.framework */; productType = "com.apple.product-type.framework"; }; BA22366A189FA431002C5B6A /* FScriptFramework 10.9 */ = { @@ -6806,36 +7105,34 @@ productReference = BA2237B0189FA432002C5B6A /* FScript.framework */; productType = "com.apple.product-type.framework"; }; - E29F5BCC19FD93FD00AD90CF /* F-Script 10.10 */ = { + EDC2C8FF1A1AA50D00942777 /* F-Script 10.10 */ = { isa = PBXNativeTarget; - buildConfigurationList = E29F5D8719FD93FD00AD90CF /* Build configuration list for PBXNativeTarget "F-Script 10.10" */; + buildConfigurationList = EDC2CACA1A1AA50D00942777 /* Build configuration list for PBXNativeTarget "F-Script 10.10" */; buildPhases = ( - E29F5BD119FD93FD00AD90CF /* Headers */, - E29F5C7319FD93FD00AD90CF /* Resources */, - E29F5C8F19FD93FD00AD90CF /* Sources */, - E29F5D1F19FD93FD00AD90CF /* Frameworks */, - E29F5D8619FD93FD00AD90CF /* Rez */, + EDC2C9041A1AA50D00942777 /* Headers */, + EDC2C9AF1A1AA50D00942777 /* Resources */, + EDC2C9CC1A1AA50D00942777 /* Sources */, + EDC2CA641A1AA50D00942777 /* Frameworks */, + EDC2CAC91A1AA50D00942777 /* Rez */, ); buildRules = ( ); dependencies = ( - E29F5BCD19FD93FD00AD90CF /* PBXTargetDependency */, - E29F5BCF19FD93FD00AD90CF /* PBXTargetDependency */, ); name = "F-Script 10.10"; productName = fs; - productReference = E29F5D8A19FD93FD00AD90CF /* F-Script.app */; + productReference = EDC2CACD1A1AA50D00942777 /* F-Script.app */; productType = "com.apple.product-type.application"; }; - E29F5DA619FD94FC00AD90CF /* FScriptFramework 10.10 */ = { + EDC2CACF1A1AA52500942777 /* FScriptFramework 10.10 */ = { isa = PBXNativeTarget; - buildConfigurationList = E29F5EE919FD94FC00AD90CF /* Build configuration list for PBXNativeTarget "FScriptFramework 10.10" */; + buildConfigurationList = EDC2CC241A1AA52500942777 /* Build configuration list for PBXNativeTarget "FScriptFramework 10.10" */; buildPhases = ( - E29F5DA719FD94FC00AD90CF /* Headers */, - E29F5E4519FD94FC00AD90CF /* Resources */, - E29F5E5C19FD94FC00AD90CF /* Sources */, - E29F5EE519FD94FC00AD90CF /* Frameworks */, - E29F5EE819FD94FC00AD90CF /* Rez */, + EDC2CAD01A1AA52500942777 /* Headers */, + EDC2CB771A1AA52500942777 /* Resources */, + EDC2CB8F1A1AA52500942777 /* Sources */, + EDC2CC201A1AA52500942777 /* Frameworks */, + EDC2CC231A1AA52500942777 /* Rez */, ); buildRules = ( ); @@ -6844,7 +7141,7 @@ name = "FScriptFramework 10.10"; productInstallPath = ""; productName = FScript; - productReference = E29F5EEC19FD94FC00AD90CF /* FScript.framework */; + productReference = EDC2CC271A1AA52500942777 /* FScript.framework */; productType = "com.apple.product-type.framework"; }; /* End PBXNativeTarget section */ @@ -6853,7 +7150,7 @@ 0CD4E2FA00D7DD4D7BE9C1BD /* Project object */ = { isa = PBXProject; attributes = { - LastUpgradeCheck = 0500; + LastUpgradeCheck = 0700; }; buildConfigurationList = 8F2881FC08F9C040005B3C5A /* Build configuration list for PBXProject "FScript" */; compatibilityVersion = "Xcode 3.2"; @@ -6861,6 +7158,7 @@ hasScannedForEncodings = 1; knownRegions = ( en, + English, ); mainGroup = 0CD4E2FB00D7DD4D7BE9C1BD; productRefGroup = 0CD4E2FC00D7DDB47BE9C1BD /* Products */; @@ -6873,11 +7171,9 @@ BA223522189FA429002C5B6A /* FScriptFramework 10.8 */, BA223362189FA412002C5B6A /* F-Script 10.9 */, BA22366A189FA431002C5B6A /* FScriptFramework 10.9 */, - E29F5BCC19FD93FD00AD90CF /* F-Script 10.10 */, - E29F5DA619FD94FC00AD90CF /* FScriptFramework 10.10 */, + EDC2C8FF1A1AA50D00942777 /* F-Script 10.10 */, + EDC2CACF1A1AA52500942777 /* FScriptFramework 10.10 */, 8F6DA6D8055FC6C80050409A /* FSTest1 */, - 8F6DA5DE055FC6980050409A /* FSTest2 */, - 8F6392D00BDB8521005C8D94 /* FScriptIBPlugin */, ); }; /* End PBXProject section */ @@ -6887,34 +7183,25 @@ isa = PBXResourcesBuildPhase; buildActionMask = 2147483647; files = ( - 8F6598150C381250006CDCA0 /* FSInterpreterView.classdescription in Resources */, - 8F0CBC610BDB9519002B0AD7 /* FSCollectionInspector.nib in Resources */, - 8F0CBC620BDB9519002B0AD7 /* blockInspector.nib in Resources */, 8F0CBC630BDB9519002B0AD7 /* FlightTutorial.txt in Resources */, 8F0CBC640BDB9519002B0AD7 /* genObjInspector.nib in Resources */, 8F0CBC650BDB9519002B0AD7 /* KTest.txt in Resources */, 8F0CBC660BDB9519002B0AD7 /* license.txt in Resources */, 8F0CBC670BDB9519002B0AD7 /* fs.scriptSuite in Resources */, 8F0CBC680BDB9519002B0AD7 /* fs.scriptTerminology in Resources */, - 8F0CBC6A0BDB9519002B0AD7 /* FSObjectBrowserButtonsInspector.nib in Resources */, - 8F0CBC6B0BDB9519002B0AD7 /* FSImageInspector.nib in Resources */, + ED68BE4B1A35E39000968430 /* FSObjectBrowser.xib in Resources */, 8F0CBC6C0BDB9519002B0AD7 /* ReadMe.txt in Resources */, - 8F0CBC6D0BDB9519002B0AD7 /* ArrayTableView.nib in Resources */, 8F0CBC6E0BDB9519002B0AD7 /* constantsDictionary in Resources */, - 8F0CBC6F0BDB9519002B0AD7 /* FSAttributedStringInspector.nib in Resources */, - 8F0CBC700BDB9519002B0AD7 /* FSConsole.nib in Resources */, - 8F0CBC710BDB9519002B0AD7 /* FScriptPreferences.nib in Resources */, 8F0CBC720BDB9519002B0AD7 /* run.tiff in Resources */, 8F0CBC730BDB9519002B0AD7 /* build.tiff in Resources */, - 8F0CBC750BDB9519002B0AD7 /* FSCollectionInspectorView.nib in Resources */, - 8F0CBC770BDB9519002B0AD7 /* FSManagedObjectContextInspector.nib in Resources */, - 8F913FDF0BDB92FC001685EA /* Info.plist in Resources */, - 8F913FE00BDB92FC001685EA /* version.plist in Resources */, - 8FB524190C2205C20028B297 /* FScriptIBPluginInspector.nib in Resources */, - 8FB5241A0C2205C20028B297 /* FScriptIBPluginLibrary.nib in Resources */, + EDE508E219DD4FDC0012F16A /* FScriptPreferences.xib in Resources */, + EDA22BF31A24C28D0093DB91 /* window.png in Resources */, + EDA22BE91A24C28D0093DB91 /* view.png in Resources */, 8F38D0FA0C36AD13002512EE /* FScript.framework in Resources */, - 8F6597B60C37F061006CDCA0 /* FScriptMenuItem.png in Resources */, + EDE508D919DD4D310012F16A /* FSConsole.xib in Resources */, 8F6631D20C4A270000FA798A /* FSMovieInspector.nib in Resources */, + EDA6AC721A1F52E6001CD1F2 /* FSObjectInspectorOptionsViewController.xib in Resources */, + EDFB2FFA1A17E345002C8DD7 /* FSObjectBrowserButtonsInspector.xib in Resources */, 8FE3DC9B0D26C0FD00A1D767 /* FSTestClasses.txt in Resources */, ); runOnlyForDeploymentPostprocessing = 0; @@ -6923,25 +7210,21 @@ isa = PBXResourcesBuildPhase; buildActionMask = 2147483647; files = ( - 8F6DA64F055FC6980050409A /* MainMenu.nib in Resources */, - 8F6DA650055FC6980050409A /* FSCollectionInspector.nib in Resources */, - 8F6DA651055FC6980050409A /* blockInspector.nib in Resources */, 8F6DA653055FC6980050409A /* FlightTutorial.txt in Resources */, 8F6DA655055FC6980050409A /* KTest.txt in Resources */, 8F6DA656055FC6980050409A /* license.txt in Resources */, + EDFB2FF91A17E345002C8DD7 /* FSObjectBrowserButtonsInspector.xib in Resources */, + EDA6AC711A1F52E6001CD1F2 /* FSObjectInspectorOptionsViewController.xib in Resources */, 8F6DA657055FC6980050409A /* genObjInspector.nib in Resources */, 8F6DA658055FC6980050409A /* fs.scriptSuite in Resources */, 8F6DA659055FC6980050409A /* fs.scriptTerminology in Resources */, - 8F6DA65B055FC6980050409A /* FSObjectBrowserButtonsInspector.nib in Resources */, - 8F6DA65D055FC6980050409A /* FSImageInspector.nib in Resources */, - 8F6DA65F055FC6980050409A /* ArrayTableView.nib in Resources */, - 8FDCCD7E05C0A0A000747C0A /* FSAttributedStringInspector.nib in Resources */, - 8F0B64CC05C5370E0099180D /* FSConsole.nib in Resources */, - 8F0B665305C557A40099180D /* FScriptPreferences.nib in Resources */, + EDE508D819DD4D310012F16A /* FSConsole.xib in Resources */, + EDA22BE81A24C28D0093DB91 /* view.png in Resources */, + EDE508E119DD4FDC0012F16A /* FScriptPreferences.xib in Resources */, + ED68BE4A1A35E39000968430 /* FSObjectBrowser.xib in Resources */, 8F2D067305CED9B9007EA81B /* run.tiff in Resources */, 8F56036705CF22660044FA65 /* build.tiff in Resources */, - 8FA8EFA307739FD5001BEC7B /* FSCollectionInspectorView.nib in Resources */, - 8F936BF7082E8DC300A04EBF /* FSManagedObjectContextInspector.nib in Resources */, + EDA22BF21A24C28D0093DB91 /* window.png in Resources */, 8F6631D30C4A270100FA798A /* FSMovieInspector.nib in Resources */, 8FE3DC9A0D26C0FD00A1D767 /* FSTestClasses.txt in Resources */, ); @@ -6959,32 +7242,36 @@ isa = PBXResourcesBuildPhase; buildActionMask = 2147483647; files = ( - 8FCFCF19094F712400FF7406 /* FSTest2.app in Resources */, + 0B73892B1B397D2E005BD678 /* FSCollectionInspectorView.xib in Resources */, 8FCFCF08094F711900FF7406 /* FSTest1.app in Resources */, - 8F6DA865055FC70C0050409A /* FSCollectionInspector.nib in Resources */, - 8F6DA866055FC70C0050409A /* blockInspector.nib in Resources */, + EDFB2FF31A17E345002C8DD7 /* FSObjectBrowserButtonsInspector.xib in Resources */, 8F6DA869055FC70C0050409A /* FlightTutorial.txt in Resources */, 8F6DA86A055FC70C0050409A /* genObjInspector.nib in Resources */, + EDE508D219DD4D310012F16A /* FSConsole.xib in Resources */, + 0B7389341B397D43005BD678 /* FSImageInspector.xib in Resources */, + 0B7389221B397D1E005BD678 /* FSCollectionInspector.xib in Resources */, 8F6DA86B055FC70C0050409A /* KTest.txt in Resources */, 8F6DA86C055FC70C0050409A /* license.txt in Resources */, + 0B7388FC1B397B90005BD678 /* FScriptAppPreference.xib in Resources */, + 0B73893D1B397D62005BD678 /* FSManagedObjectContextInspector.xib in Resources */, 8F6DA86D055FC70C0050409A /* fs.icns in Resources */, - 8F6DA86E055FC70C0050409A /* FScriptAppPreference.nib in Resources */, - 8F6DA870055FC70C0050409A /* fs.nib in Resources */, 8F6DA871055FC70C0050409A /* fs.scriptSuite in Resources */, 8F6DA872055FC70C0050409A /* fs.scriptTerminology in Resources */, - 8F6DA874055FC70C0050409A /* FSObjectBrowserButtonsInspector.nib in Resources */, - 8F6DA876055FC70C0050409A /* FSImageInspector.nib in Resources */, - 8F6DA878055FC70C0050409A /* ArrayTableView.nib in Resources */, + 0B7389191B397D0A005BD678 /* FSAttributedStringInspector.xib in Resources */, 8F6DA879055FC70C0050409A /* constantsDictionary in Resources */, - 8FDCCD7C05C0A0A000747C0A /* FSAttributedStringInspector.nib in Resources */, - 8F0B64CA05C5370D0099180D /* FSConsole.nib in Resources */, - 8F0B665105C557A40099180D /* FScriptPreferences.nib in Resources */, + ED3004F41A1A86EF00675D94 /* FSObjectInspectorViewController.xib in Resources */, + EDE508DB19DD4FDC0012F16A /* FScriptPreferences.xib in Resources */, 8F2D067105CED9B9007EA81B /* run.tiff in Resources */, + EDA22BEA1A24C28D0093DB91 /* window.png in Resources */, + 0B7389071B397CD5005BD678 /* blockInspector.xib in Resources */, 8F56036805CF22660044FA65 /* build.tiff in Resources */, - 8FA8EFA007739FD5001BEC7B /* FSCollectionInspectorView.nib in Resources */, - 8FCA6B88078E0E4F005FC6B2 /* FSManagedObjectContextInspector.nib in Resources */, + ED68BE421A35E39000968430 /* FSObjectBrowser.xib in Resources */, + EDA6AC691A1F52E6001CD1F2 /* FSObjectInspectorOptionsViewController.xib in Resources */, + 0B7389101B397CE6005BD678 /* ArrayTableView.xib in Resources */, + EDA22BE01A24C28D0093DB91 /* view.png in Resources */, 8F6631D40C4A270200FA798A /* FSMovieInspector.nib in Resources */, 8FE3DC9C0D26C0FD00A1D767 /* FSTestClasses.txt in Resources */, + 0B7389021B397C4F005BD678 /* fs.xib in Resources */, 8F9636490F8DF86600A70F39 /* DemoAssistant.xib in Resources */, ); runOnlyForDeploymentPostprocessing = 0; @@ -6993,26 +7280,31 @@ isa = PBXResourcesBuildPhase; buildActionMask = 2147483647; files = ( - 8F6DA964055FC71F0050409A /* FSCollectionInspector.nib in Resources */, - 8F6DA965055FC71F0050409A /* blockInspector.nib in Resources */, + EDE508D319DD4D310012F16A /* FSConsole.xib in Resources */, + ED3004F51A1A86EF00675D94 /* FSObjectInspectorViewController.xib in Resources */, + 0B73891A1B397D0A005BD678 /* FSAttributedStringInspector.xib in Resources */, 8F6DA968055FC71F0050409A /* FlightTutorial.txt in Resources */, 8F6DA969055FC71F0050409A /* genObjInspector.nib in Resources */, + 0B7389111B397CE6005BD678 /* ArrayTableView.xib in Resources */, + ED68BE431A35E39000968430 /* FSObjectBrowser.xib in Resources */, + EDE508DC19DD4FDC0012F16A /* FScriptPreferences.xib in Resources */, 8F6DA96A055FC71F0050409A /* KTest.txt in Resources */, + 0B73892C1B397D2E005BD678 /* FSCollectionInspectorView.xib in Resources */, 8F6DA96B055FC71F0050409A /* license.txt in Resources */, 8F6DA96D055FC71F0050409A /* fs.scriptSuite in Resources */, + 0B7389351B397D43005BD678 /* FSImageInspector.xib in Resources */, + 0B73893E1B397D62005BD678 /* FSManagedObjectContextInspector.xib in Resources */, 8F6DA96E055FC71F0050409A /* fs.scriptTerminology in Resources */, - 8F6DA970055FC71F0050409A /* FSObjectBrowserButtonsInspector.nib in Resources */, - 8F6DA972055FC71F0050409A /* FSImageInspector.nib in Resources */, + 0B7389231B397D1E005BD678 /* FSCollectionInspector.xib in Resources */, 8F6DA973055FC71F0050409A /* ReadMe.txt in Resources */, - 8F6DA974055FC71F0050409A /* ArrayTableView.nib in Resources */, 8F6DA975055FC71F0050409A /* constantsDictionary in Resources */, - 8FDCCD7B05C0A0A000747C0A /* FSAttributedStringInspector.nib in Resources */, - 8F0B64C905C5370D0099180D /* FSConsole.nib in Resources */, - 8F0B665005C557A40099180D /* FScriptPreferences.nib in Resources */, + EDA22BE11A24C28D0093DB91 /* view.png in Resources */, 8F2D067005CED9B9007EA81B /* run.tiff in Resources */, 8F56036905CF22660044FA65 /* build.tiff in Resources */, - 8FA8EF9F07739FD4001BEC7B /* FSCollectionInspectorView.nib in Resources */, - 8F936BEF082E8D9F00A04EBF /* FSManagedObjectContextInspector.nib in Resources */, + EDFB2FF41A17E345002C8DD7 /* FSObjectBrowserButtonsInspector.xib in Resources */, + 0B7389081B397CD5005BD678 /* blockInspector.xib in Resources */, + EDA22BEB1A24C28D0093DB91 /* window.png in Resources */, + EDA6AC6A1A1F52E6001CD1F2 /* FSObjectInspectorOptionsViewController.xib in Resources */, 8F6631D50C4A270200FA798A /* FSMovieInspector.nib in Resources */, 8FE3DC9D0D26C0FD00A1D767 /* FSTestClasses.txt in Resources */, ); @@ -7022,32 +7314,36 @@ isa = PBXResourcesBuildPhase; buildActionMask = 2147483647; files = ( - BA22324A189FA403002C5B6A /* FSTest2.app in Resources */, + 0B73892D1B397D2E005BD678 /* FSCollectionInspectorView.xib in Resources */, BA22324B189FA403002C5B6A /* FSTest1.app in Resources */, - BA22324C189FA403002C5B6A /* FSCollectionInspector.nib in Resources */, - BA22324D189FA403002C5B6A /* blockInspector.nib in Resources */, + EDFB2FF51A17E345002C8DD7 /* FSObjectBrowserButtonsInspector.xib in Resources */, BA22324E189FA403002C5B6A /* FlightTutorial.txt in Resources */, BA22324F189FA403002C5B6A /* genObjInspector.nib in Resources */, + EDE508D419DD4D310012F16A /* FSConsole.xib in Resources */, + 0B7389361B397D43005BD678 /* FSImageInspector.xib in Resources */, + 0B7389241B397D1E005BD678 /* FSCollectionInspector.xib in Resources */, BA223250189FA403002C5B6A /* KTest.txt in Resources */, BA223251189FA403002C5B6A /* license.txt in Resources */, + 0B7388FD1B397B90005BD678 /* FScriptAppPreference.xib in Resources */, + 0B73893F1B397D62005BD678 /* FSManagedObjectContextInspector.xib in Resources */, BA223252189FA403002C5B6A /* fs.icns in Resources */, - BA223253189FA403002C5B6A /* FScriptAppPreference.nib in Resources */, - BA223254189FA403002C5B6A /* fs.nib in Resources */, BA223255189FA403002C5B6A /* fs.scriptSuite in Resources */, BA223256189FA403002C5B6A /* fs.scriptTerminology in Resources */, - BA223257189FA403002C5B6A /* FSObjectBrowserButtonsInspector.nib in Resources */, - BA223258189FA403002C5B6A /* FSImageInspector.nib in Resources */, - BA223259189FA403002C5B6A /* ArrayTableView.nib in Resources */, + 0B73891B1B397D0A005BD678 /* FSAttributedStringInspector.xib in Resources */, BA22325A189FA403002C5B6A /* constantsDictionary in Resources */, - BA22325B189FA403002C5B6A /* FSAttributedStringInspector.nib in Resources */, - BA22325C189FA403002C5B6A /* FSConsole.nib in Resources */, - BA22325D189FA403002C5B6A /* FScriptPreferences.nib in Resources */, + ED3004F61A1A86EF00675D94 /* FSObjectInspectorViewController.xib in Resources */, + EDE508DD19DD4FDC0012F16A /* FScriptPreferences.xib in Resources */, BA22325E189FA403002C5B6A /* run.tiff in Resources */, + EDA22BEC1A24C28D0093DB91 /* window.png in Resources */, + 0B7389091B397CD5005BD678 /* blockInspector.xib in Resources */, BA22325F189FA403002C5B6A /* build.tiff in Resources */, - BA223260189FA403002C5B6A /* FSCollectionInspectorView.nib in Resources */, - BA223261189FA403002C5B6A /* FSManagedObjectContextInspector.nib in Resources */, + ED68BE441A35E39000968430 /* FSObjectBrowser.xib in Resources */, + EDA6AC6B1A1F52E6001CD1F2 /* FSObjectInspectorOptionsViewController.xib in Resources */, + 0B7389121B397CE6005BD678 /* ArrayTableView.xib in Resources */, + EDA22BE21A24C28D0093DB91 /* view.png in Resources */, BA223262189FA403002C5B6A /* FSMovieInspector.nib in Resources */, BA223263189FA403002C5B6A /* FSTestClasses.txt in Resources */, + 0B7389031B397C4F005BD678 /* fs.xib in Resources */, BA223264189FA403002C5B6A /* DemoAssistant.xib in Resources */, ); runOnlyForDeploymentPostprocessing = 0; @@ -7056,32 +7352,36 @@ isa = PBXResourcesBuildPhase; buildActionMask = 2147483647; files = ( - BA22340A189FA412002C5B6A /* FSTest2.app in Resources */, + 0B73892F1B397D2E005BD678 /* FSCollectionInspectorView.xib in Resources */, BA22340B189FA412002C5B6A /* FSTest1.app in Resources */, - BA22340C189FA412002C5B6A /* FSCollectionInspector.nib in Resources */, - BA22340D189FA412002C5B6A /* blockInspector.nib in Resources */, + EDFB2FF71A17E345002C8DD7 /* FSObjectBrowserButtonsInspector.xib in Resources */, BA22340E189FA412002C5B6A /* FlightTutorial.txt in Resources */, BA22340F189FA412002C5B6A /* genObjInspector.nib in Resources */, + EDE508D619DD4D310012F16A /* FSConsole.xib in Resources */, + 0B7389381B397D43005BD678 /* FSImageInspector.xib in Resources */, + 0B7389261B397D1E005BD678 /* FSCollectionInspector.xib in Resources */, BA223410189FA412002C5B6A /* KTest.txt in Resources */, BA223411189FA412002C5B6A /* license.txt in Resources */, + 0B7388FE1B397B90005BD678 /* FScriptAppPreference.xib in Resources */, + 0B7389411B397D62005BD678 /* FSManagedObjectContextInspector.xib in Resources */, BA223412189FA412002C5B6A /* fs.icns in Resources */, - BA223413189FA412002C5B6A /* FScriptAppPreference.nib in Resources */, - BA223414189FA412002C5B6A /* fs.nib in Resources */, BA223415189FA412002C5B6A /* fs.scriptSuite in Resources */, BA223416189FA412002C5B6A /* fs.scriptTerminology in Resources */, - BA223417189FA412002C5B6A /* FSObjectBrowserButtonsInspector.nib in Resources */, - BA223418189FA412002C5B6A /* FSImageInspector.nib in Resources */, - BA223419189FA412002C5B6A /* ArrayTableView.nib in Resources */, + 0B73891D1B397D0A005BD678 /* FSAttributedStringInspector.xib in Resources */, BA22341A189FA412002C5B6A /* constantsDictionary in Resources */, - BA22341B189FA412002C5B6A /* FSAttributedStringInspector.nib in Resources */, - BA22341C189FA412002C5B6A /* FSConsole.nib in Resources */, - BA22341D189FA412002C5B6A /* FScriptPreferences.nib in Resources */, + ED3004F81A1A86EF00675D94 /* FSObjectInspectorViewController.xib in Resources */, + EDE508DF19DD4FDC0012F16A /* FScriptPreferences.xib in Resources */, BA22341E189FA412002C5B6A /* run.tiff in Resources */, + EDA22BEE1A24C28D0093DB91 /* window.png in Resources */, + 0B73890B1B397CD5005BD678 /* blockInspector.xib in Resources */, BA22341F189FA412002C5B6A /* build.tiff in Resources */, - BA223420189FA412002C5B6A /* FSCollectionInspectorView.nib in Resources */, - BA223421189FA412002C5B6A /* FSManagedObjectContextInspector.nib in Resources */, + ED68BE461A35E39000968430 /* FSObjectBrowser.xib in Resources */, + EDA6AC6D1A1F52E6001CD1F2 /* FSObjectInspectorOptionsViewController.xib in Resources */, + 0B7389141B397CE6005BD678 /* ArrayTableView.xib in Resources */, + EDA22BE41A24C28D0093DB91 /* view.png in Resources */, BA223422189FA412002C5B6A /* FSMovieInspector.nib in Resources */, BA223423189FA412002C5B6A /* FSTestClasses.txt in Resources */, + 0B7389041B397C4F005BD678 /* fs.xib in Resources */, BA223424189FA412002C5B6A /* DemoAssistant.xib in Resources */, ); runOnlyForDeploymentPostprocessing = 0; @@ -7090,26 +7390,31 @@ isa = PBXResourcesBuildPhase; buildActionMask = 2147483647; files = ( - BA2235C2189FA429002C5B6A /* FSCollectionInspector.nib in Resources */, - BA2235C3189FA429002C5B6A /* blockInspector.nib in Resources */, + EDE508D519DD4D310012F16A /* FSConsole.xib in Resources */, + ED3004F71A1A86EF00675D94 /* FSObjectInspectorViewController.xib in Resources */, + 0B73891C1B397D0A005BD678 /* FSAttributedStringInspector.xib in Resources */, BA2235C4189FA429002C5B6A /* FlightTutorial.txt in Resources */, BA2235C5189FA429002C5B6A /* genObjInspector.nib in Resources */, + 0B7389131B397CE6005BD678 /* ArrayTableView.xib in Resources */, + ED68BE451A35E39000968430 /* FSObjectBrowser.xib in Resources */, + EDE508DE19DD4FDC0012F16A /* FScriptPreferences.xib in Resources */, BA2235C6189FA429002C5B6A /* KTest.txt in Resources */, + 0B73892E1B397D2E005BD678 /* FSCollectionInspectorView.xib in Resources */, BA2235C7189FA429002C5B6A /* license.txt in Resources */, BA2235C8189FA429002C5B6A /* fs.scriptSuite in Resources */, + 0B7389371B397D43005BD678 /* FSImageInspector.xib in Resources */, + 0B7389401B397D62005BD678 /* FSManagedObjectContextInspector.xib in Resources */, BA2235C9189FA429002C5B6A /* fs.scriptTerminology in Resources */, - BA2235CA189FA429002C5B6A /* FSObjectBrowserButtonsInspector.nib in Resources */, - BA2235CB189FA429002C5B6A /* FSImageInspector.nib in Resources */, + 0B7389251B397D1E005BD678 /* FSCollectionInspector.xib in Resources */, BA2235CC189FA429002C5B6A /* ReadMe.txt in Resources */, - BA2235CD189FA429002C5B6A /* ArrayTableView.nib in Resources */, BA2235CE189FA429002C5B6A /* constantsDictionary in Resources */, - BA2235CF189FA429002C5B6A /* FSAttributedStringInspector.nib in Resources */, - BA2235D0189FA429002C5B6A /* FSConsole.nib in Resources */, - BA2235D1189FA429002C5B6A /* FScriptPreferences.nib in Resources */, + EDA22BE31A24C28D0093DB91 /* view.png in Resources */, BA2235D2189FA429002C5B6A /* run.tiff in Resources */, BA2235D3189FA429002C5B6A /* build.tiff in Resources */, - BA2235D4189FA429002C5B6A /* FSCollectionInspectorView.nib in Resources */, - BA2235D5189FA429002C5B6A /* FSManagedObjectContextInspector.nib in Resources */, + EDFB2FF61A17E345002C8DD7 /* FSObjectBrowserButtonsInspector.xib in Resources */, + 0B73890A1B397CD5005BD678 /* blockInspector.xib in Resources */, + EDA22BED1A24C28D0093DB91 /* window.png in Resources */, + EDA6AC6C1A1F52E6001CD1F2 /* FSObjectInspectorOptionsViewController.xib in Resources */, BA2235D6189FA429002C5B6A /* FSMovieInspector.nib in Resources */, BA2235D7189FA429002C5B6A /* FSTestClasses.txt in Resources */, ); @@ -7119,91 +7424,104 @@ isa = PBXResourcesBuildPhase; buildActionMask = 2147483647; files = ( - BA22370A189FA431002C5B6A /* FSCollectionInspector.nib in Resources */, - BA22370B189FA431002C5B6A /* blockInspector.nib in Resources */, + EDE508D719DD4D310012F16A /* FSConsole.xib in Resources */, + ED3004F91A1A86EF00675D94 /* FSObjectInspectorViewController.xib in Resources */, + 0B73891E1B397D0A005BD678 /* FSAttributedStringInspector.xib in Resources */, BA22370C189FA431002C5B6A /* FlightTutorial.txt in Resources */, BA22370D189FA431002C5B6A /* genObjInspector.nib in Resources */, + 0B7389151B397CE6005BD678 /* ArrayTableView.xib in Resources */, + ED68BE471A35E39000968430 /* FSObjectBrowser.xib in Resources */, + EDE508E019DD4FDC0012F16A /* FScriptPreferences.xib in Resources */, BA22370E189FA431002C5B6A /* KTest.txt in Resources */, + 0B7389301B397D2E005BD678 /* FSCollectionInspectorView.xib in Resources */, BA22370F189FA431002C5B6A /* license.txt in Resources */, BA223710189FA431002C5B6A /* fs.scriptSuite in Resources */, + 0B7389391B397D43005BD678 /* FSImageInspector.xib in Resources */, + 0B7389421B397D62005BD678 /* FSManagedObjectContextInspector.xib in Resources */, BA223711189FA431002C5B6A /* fs.scriptTerminology in Resources */, - BA223712189FA431002C5B6A /* FSObjectBrowserButtonsInspector.nib in Resources */, - BA223713189FA431002C5B6A /* FSImageInspector.nib in Resources */, + 0B7389271B397D1E005BD678 /* FSCollectionInspector.xib in Resources */, BA223714189FA431002C5B6A /* ReadMe.txt in Resources */, - BA223715189FA431002C5B6A /* ArrayTableView.nib in Resources */, BA223716189FA431002C5B6A /* constantsDictionary in Resources */, - BA223717189FA431002C5B6A /* FSAttributedStringInspector.nib in Resources */, - BA223718189FA431002C5B6A /* FSConsole.nib in Resources */, - BA223719189FA431002C5B6A /* FScriptPreferences.nib in Resources */, + EDA22BE51A24C28D0093DB91 /* view.png in Resources */, BA22371A189FA431002C5B6A /* run.tiff in Resources */, BA22371B189FA431002C5B6A /* build.tiff in Resources */, - BA22371C189FA431002C5B6A /* FSCollectionInspectorView.nib in Resources */, - BA22371D189FA431002C5B6A /* FSManagedObjectContextInspector.nib in Resources */, + EDFB2FF81A17E345002C8DD7 /* FSObjectBrowserButtonsInspector.xib in Resources */, + 0B73890C1B397CD5005BD678 /* blockInspector.xib in Resources */, + EDA22BEF1A24C28D0093DB91 /* window.png in Resources */, + EDA6AC6E1A1F52E6001CD1F2 /* FSObjectInspectorOptionsViewController.xib in Resources */, BA22371E189FA431002C5B6A /* FSMovieInspector.nib in Resources */, BA22371F189FA431002C5B6A /* FSTestClasses.txt in Resources */, ); runOnlyForDeploymentPostprocessing = 0; }; - E29F5C7319FD93FD00AD90CF /* Resources */ = { + EDC2C9AF1A1AA50D00942777 /* Resources */ = { isa = PBXResourcesBuildPhase; buildActionMask = 2147483647; files = ( - E29F5C7419FD93FD00AD90CF /* FSTest2.app in Resources */, - E29F5C7519FD93FD00AD90CF /* FSTest1.app in Resources */, - E29F5C7619FD93FD00AD90CF /* FSCollectionInspector.nib in Resources */, - E29F5C7719FD93FD00AD90CF /* blockInspector.nib in Resources */, - E29F5C7819FD93FD00AD90CF /* FlightTutorial.txt in Resources */, - E29F5C7919FD93FD00AD90CF /* genObjInspector.nib in Resources */, - E29F5C7A19FD93FD00AD90CF /* KTest.txt in Resources */, - E29F5C7B19FD93FD00AD90CF /* license.txt in Resources */, - E29F5C7C19FD93FD00AD90CF /* fs.icns in Resources */, - E29F5C7D19FD93FD00AD90CF /* FScriptAppPreference.nib in Resources */, - E29F5C7E19FD93FD00AD90CF /* fs.nib in Resources */, - E29F5C7F19FD93FD00AD90CF /* fs.scriptSuite in Resources */, - E29F5C8019FD93FD00AD90CF /* fs.scriptTerminology in Resources */, - E29F5C8119FD93FD00AD90CF /* FSObjectBrowserButtonsInspector.nib in Resources */, - E29F5C8219FD93FD00AD90CF /* FSImageInspector.nib in Resources */, - E29F5C8319FD93FD00AD90CF /* ArrayTableView.nib in Resources */, - E29F5C8419FD93FD00AD90CF /* constantsDictionary in Resources */, - E29F5C8519FD93FD00AD90CF /* FSAttributedStringInspector.nib in Resources */, - E29F5C8619FD93FD00AD90CF /* FSConsole.nib in Resources */, - E29F5C8719FD93FD00AD90CF /* FScriptPreferences.nib in Resources */, - E29F5C8819FD93FD00AD90CF /* run.tiff in Resources */, - E29F5C8919FD93FD00AD90CF /* build.tiff in Resources */, - E29F5C8A19FD93FD00AD90CF /* FSCollectionInspectorView.nib in Resources */, - E29F5C8B19FD93FD00AD90CF /* FSManagedObjectContextInspector.nib in Resources */, - E29F5C8C19FD93FD00AD90CF /* FSMovieInspector.nib in Resources */, - E29F5C8D19FD93FD00AD90CF /* FSTestClasses.txt in Resources */, - E29F5C8E19FD93FD00AD90CF /* DemoAssistant.xib in Resources */, + EDC2C9B21A1AA50D00942777 /* FSObjectBrowserButtonsInspector.xib in Resources */, + EDC2C9B51A1AA50D00942777 /* FlightTutorial.txt in Resources */, + EDA22BF01A24C28D0093DB91 /* window.png in Resources */, + 0B7388FF1B397B90005BD678 /* FScriptAppPreference.xib in Resources */, + EDC2C9B61A1AA50D00942777 /* genObjInspector.nib in Resources */, + EDC2C9B71A1AA50D00942777 /* FSConsole.xib in Resources */, + 0B73891F1B397D0A005BD678 /* FSAttributedStringInspector.xib in Resources */, + 0B73893A1B397D43005BD678 /* FSImageInspector.xib in Resources */, + EDC2C9B81A1AA50D00942777 /* KTest.txt in Resources */, + 0B7389431B397D62005BD678 /* FSManagedObjectContextInspector.xib in Resources */, + EDC2C9B91A1AA50D00942777 /* license.txt in Resources */, + 0B7389161B397CE6005BD678 /* ArrayTableView.xib in Resources */, + EDC2C9BA1A1AA50D00942777 /* fs.icns in Resources */, + ED68BE481A35E39000968430 /* FSObjectBrowser.xib in Resources */, + EDC2C9BD1A1AA50D00942777 /* fs.scriptSuite in Resources */, + EDC2C9BE1A1AA50D00942777 /* fs.scriptTerminology in Resources */, + EDA22BE61A24C28D0093DB91 /* view.png in Resources */, + EDC2C9C11A1AA50D00942777 /* constantsDictionary in Resources */, + EDC2C9C21A1AA50D00942777 /* FSObjectInspectorViewController.xib in Resources */, + 0B73890D1B397CD5005BD678 /* blockInspector.xib in Resources */, + 0B7389051B397C4F005BD678 /* fs.xib in Resources */, + EDC2C9C41A1AA50D00942777 /* FScriptPreferences.xib in Resources */, + EDC2C9C51A1AA50D00942777 /* run.tiff in Resources */, + EDC2C9C61A1AA50D00942777 /* build.tiff in Resources */, + EDA6AC6F1A1F52E6001CD1F2 /* FSObjectInspectorOptionsViewController.xib in Resources */, + 0B7389311B397D2E005BD678 /* FSCollectionInspectorView.xib in Resources */, + EDC2C9C91A1AA50D00942777 /* FSMovieInspector.nib in Resources */, + EDC2C9CA1A1AA50D00942777 /* FSTestClasses.txt in Resources */, + 0B7389281B397D1E005BD678 /* FSCollectionInspector.xib in Resources */, + EDC2C9CB1A1AA50D00942777 /* DemoAssistant.xib in Resources */, ); runOnlyForDeploymentPostprocessing = 0; }; - E29F5E4519FD94FC00AD90CF /* Resources */ = { + EDC2CB771A1AA52500942777 /* Resources */ = { isa = PBXResourcesBuildPhase; buildActionMask = 2147483647; files = ( - E29F5E4619FD94FC00AD90CF /* FSCollectionInspector.nib in Resources */, - E29F5E4719FD94FC00AD90CF /* blockInspector.nib in Resources */, - E29F5E4819FD94FC00AD90CF /* FlightTutorial.txt in Resources */, - E29F5E4919FD94FC00AD90CF /* genObjInspector.nib in Resources */, - E29F5E4A19FD94FC00AD90CF /* KTest.txt in Resources */, - E29F5E4B19FD94FC00AD90CF /* license.txt in Resources */, - E29F5E4C19FD94FC00AD90CF /* fs.scriptSuite in Resources */, - E29F5E4D19FD94FC00AD90CF /* fs.scriptTerminology in Resources */, - E29F5E4E19FD94FC00AD90CF /* FSObjectBrowserButtonsInspector.nib in Resources */, - E29F5E4F19FD94FC00AD90CF /* FSImageInspector.nib in Resources */, - E29F5E5019FD94FC00AD90CF /* ReadMe.txt in Resources */, - E29F5E5119FD94FC00AD90CF /* ArrayTableView.nib in Resources */, - E29F5E5219FD94FC00AD90CF /* constantsDictionary in Resources */, - E29F5E5319FD94FC00AD90CF /* FSAttributedStringInspector.nib in Resources */, - E29F5E5419FD94FC00AD90CF /* FSConsole.nib in Resources */, - E29F5E5519FD94FC00AD90CF /* FScriptPreferences.nib in Resources */, - E29F5E5619FD94FC00AD90CF /* run.tiff in Resources */, - E29F5E5719FD94FC00AD90CF /* build.tiff in Resources */, - E29F5E5819FD94FC00AD90CF /* FSCollectionInspectorView.nib in Resources */, - E29F5E5919FD94FC00AD90CF /* FSManagedObjectContextInspector.nib in Resources */, - E29F5E5A19FD94FC00AD90CF /* FSMovieInspector.nib in Resources */, - E29F5E5B19FD94FC00AD90CF /* FSTestClasses.txt in Resources */, + EDC2CB781A1AA52500942777 /* FSConsole.xib in Resources */, + EDC2CB791A1AA52500942777 /* FSObjectInspectorViewController.xib in Resources */, + 0B7389201B397D0A005BD678 /* FSAttributedStringInspector.xib in Resources */, + EDC2CB7C1A1AA52500942777 /* FlightTutorial.txt in Resources */, + EDC2CB7D1A1AA52500942777 /* genObjInspector.nib in Resources */, + 0B7389171B397CE6005BD678 /* ArrayTableView.xib in Resources */, + ED68BE491A35E39000968430 /* FSObjectBrowser.xib in Resources */, + EDC2CB7E1A1AA52500942777 /* FScriptPreferences.xib in Resources */, + EDC2CB7F1A1AA52500942777 /* KTest.txt in Resources */, + 0B7389321B397D2E005BD678 /* FSCollectionInspectorView.xib in Resources */, + EDC2CB801A1AA52500942777 /* license.txt in Resources */, + EDC2CB811A1AA52500942777 /* fs.scriptSuite in Resources */, + 0B73893B1B397D43005BD678 /* FSImageInspector.xib in Resources */, + 0B7389441B397D62005BD678 /* FSManagedObjectContextInspector.xib in Resources */, + EDC2CB821A1AA52500942777 /* fs.scriptTerminology in Resources */, + 0B7389291B397D1E005BD678 /* FSCollectionInspector.xib in Resources */, + EDC2CB841A1AA52500942777 /* ReadMe.txt in Resources */, + EDC2CB861A1AA52500942777 /* constantsDictionary in Resources */, + EDA22BE71A24C28D0093DB91 /* view.png in Resources */, + EDC2CB881A1AA52500942777 /* run.tiff in Resources */, + EDC2CB891A1AA52500942777 /* build.tiff in Resources */, + EDC2CB8A1A1AA52500942777 /* FSObjectBrowserButtonsInspector.xib in Resources */, + 0B73890E1B397CD5005BD678 /* blockInspector.xib in Resources */, + EDA22BF11A24C28D0093DB91 /* window.png in Resources */, + EDA6AC701A1F52E6001CD1F2 /* FSObjectInspectorOptionsViewController.xib in Resources */, + EDC2CB8D1A1AA52500942777 /* FSMovieInspector.nib in Resources */, + EDC2CB8E1A1AA52500942777 /* FSTestClasses.txt in Resources */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -7266,14 +7584,14 @@ ); runOnlyForDeploymentPostprocessing = 0; }; - E29F5D8619FD93FD00AD90CF /* Rez */ = { + EDC2CAC91A1AA50D00942777 /* Rez */ = { isa = PBXRezBuildPhase; buildActionMask = 2147483647; files = ( ); runOnlyForDeploymentPostprocessing = 0; }; - E29F5EE819FD94FC00AD90CF /* Rez */ = { + EDC2CC231A1AA52500942777 /* Rez */ = { isa = PBXRezBuildPhase; buildActionMask = 2147483647; files = ( @@ -7313,7 +7631,9 @@ 8F0CBBFF0BDB94AD002B0AD7 /* FSInterpreterResult.m in Sources */, 8F0CBC000BDB94AD002B0AD7 /* FSInterpreterView.m in Sources */, 8F0CBC010BDB94AD002B0AD7 /* FSNSArray.m in Sources */, + ED8222F51A19554F00C42C72 /* FSObjectEnumInfo.m in Sources */, 8F0CBC020BDB94AD002B0AD7 /* FSNSDate.m in Sources */, + ED3CB6511A1E5B3300771077 /* FSColorWell.m in Sources */, 8F0CBC030BDB94AD002B0AD7 /* FSNSDictionary.m in Sources */, 8F0CBC040BDB94AD002B0AD7 /* FSNSMutableString.m in Sources */, 8F0CBC050BDB94AD002B0AD7 /* FSNSNumber.m in Sources */, @@ -7355,25 +7675,30 @@ 8F0CBC310BDB94AD002B0AD7 /* FSKeyedUnarchiver.m in Sources */, 8F0CBC320BDB94AD002B0AD7 /* FSKeyedArchiver.m in Sources */, 8F0CBC330BDB94AD002B0AD7 /* FSConstantListBuilder.m in Sources */, + ED68BE601A35E94B00968430 /* FSObjectBrowserWindow.m in Sources */, 8F0CBC340BDB94AD002B0AD7 /* FSImageInspector.m in Sources */, 8F0CBC350BDB94AD002B0AD7 /* FSNSImage.m in Sources */, 8F0CBC360BDB94AD002B0AD7 /* FSObjectBrowserToolbarItem.m in Sources */, 8F0CBC370BDB94AD002B0AD7 /* ArrayRepBoolean.m in Sources */, + ED8222E41A194FD600C42C72 /* FSObjectInspectorViewModelItem.m in Sources */, 8F0CBC380BDB94AD002B0AD7 /* FSArrayEnumerator.m in Sources */, 8F0CBC390BDB94AD002B0AD7 /* FSNSMutableArray.m in Sources */, 8F0CBC3C0BDB94AD002B0AD7 /* FSNSValue.m in Sources */, 8F0CBC3D0BDB94AD002B0AD7 /* FSReplacementForCoderForNilInArray.m in Sources */, 8F0CBC3E0BDB94AD002B0AD7 /* FSNamedNumber.m in Sources */, + ED8319441A1BFA7400290EE2 /* FSObjectInspectorViewController+NonArc.m in Sources */, 8F0CBC3F0BDB94AD002B0AD7 /* FSCollectionInspectorTableView.m in Sources */, 8F0CBC400BDB94AD002B0AD7 /* FSNSSet.m in Sources */, 8F0CBC410BDB94AD002B0AD7 /* FSAttributedStringInspector.m in Sources */, 8F0CBC420BDB94AD002B0AD7 /* FSNSAttributedString.m in Sources */, 8F0CBC430BDB94AD002B0AD7 /* FScriptMenuItem.m in Sources */, + ED83192F1A1BC2B500290EE2 /* FSUtils.m in Sources */, 8F0CBC440BDB94AD002B0AD7 /* FSNSFont.m in Sources */, 8F0CBC450BDB94AD002B0AD7 /* FSObjectBrowserMatrix.m in Sources */, 8F0CBC460BDB94AD002B0AD7 /* FSSymbolTable.m in Sources */, 8F0CBC480BDB94AD002B0AD7 /* FSObjectBrowserViewObjectInfo.m in Sources */, 8F0CBC490BDB94AD002B0AD7 /* FSCollectionInspectorView.m in Sources */, + EDA6AC521A1F407C001CD1F2 /* FSObjectInspectorOutlineView.m in Sources */, 8F0CBC4A0BDB94AD002B0AD7 /* ArrayRepFetchRequest.m in Sources */, 8F0CBC4B0BDB94AD002B0AD7 /* FSPointer.m in Sources */, 8F0CBC4C0BDB94AD002B0AD7 /* FSGenericPointer.m in Sources */, @@ -7387,8 +7712,6 @@ 8F0CBC540BDB94AD002B0AD7 /* FSObjectBrowserSearchField.m in Sources */, 8F0CBC550BDB94AD002B0AD7 /* FSBlockCompilationResult.m in Sources */, 8F0CBC560BDB94AD002B0AD7 /* FSReturnSignal.m in Sources */, - 8F913FD20BDB92EE001685EA /* FScriptIBPlugin.m in Sources */, - 8F913FDC0BDB92FC001685EA /* FScriptIBPluginInspector.m in Sources */, 8F6631CE0C4A26F100FA798A /* FSMovieInspector.m in Sources */, 8F3C139A0C65E66400948776 /* FSMethod.m in Sources */, 8F5AD3220D05CFFE000CEAC6 /* FSCNClassDefinition.m in Sources */, @@ -7407,6 +7730,7 @@ 8F747DAF0DA03AE200148342 /* FSCNPrecomputedObject.m in Sources */, 8F747DBE0DA0467100148342 /* FSCNArray.m in Sources */, 8FAE79AC0DA0ED5D00CB6E14 /* FSCNBlock.m in Sources */, + EDA6AC681A1F52E6001CD1F2 /* FSObjectInspectorOptionsViewController.m in Sources */, 8FAE79F30DA109C500CB6E14 /* FSCNAssignment.m in Sources */, 8F45CBBF0DA813F200AFA8C8 /* FSCNMethod.m in Sources */, 8FD0A3140DD7276000E47459 /* FSCNReturn.m in Sources */, @@ -7420,6 +7744,7 @@ 8F9D041D0F1DF1CB001B8286 /* FSNSFileHandle.m in Sources */, 8F940B850F2393B0004525E1 /* FSAssociation.m in Sources */, 8F940C720F23BC2E004525E1 /* FSCNDictionary.m in Sources */, + EDC2C8FE1A1AA34D00942777 /* FSObjectInspectorBackgroundView.m in Sources */, 8F7A712F0F48397C00E95364 /* FSObjectBrowserBottomBarTextDisplay.m in Sources */, 8F2D720B0F6BD9B100F0862A /* FSNSAffineTransform.m in Sources */, 8FCA593310883B0100F67841 /* FSNewlyAllocatedObject.m in Sources */, @@ -7432,8 +7757,6 @@ isa = PBXSourcesBuildPhase; buildActionMask = 2147483647; files = ( - 8F6DA661055FC6980050409A /* DOCustom.m in Sources */, - 8F6DA662055FC6980050409A /* main.m in Sources */, 8F6DA663055FC6980050409A /* FSAirplane.m in Sources */, 8F6DA665055FC6980050409A /* ArrayRepDouble.m in Sources */, 8F6DA666055FC6980050409A /* ArrayRepEmpty.m in Sources */, @@ -7448,6 +7771,7 @@ 8F6DA66F055FC6980050409A /* BlockRep.m in Sources */, 8F6DA670055FC6980050409A /* BlockStackElem.m in Sources */, 8F6DA671055FC6980050409A /* CLIView.m in Sources */, + ED8222E31A194FD600C42C72 /* FSObjectInspectorViewModelItem.m in Sources */, 8F6DA672055FC6980050409A /* FSCompilationResult.m in Sources */, 8F6DA673055FC6980050409A /* CompiledCodeNode.m in Sources */, 8F6DA674055FC6980050409A /* FSCompiler.m in Sources */, @@ -7476,6 +7800,8 @@ 8F6DA68E055FC6980050409A /* FSUnarchiver.m in Sources */, 8F6DA68F055FC6980050409A /* FSGenericObjectInspector.m in Sources */, 8F6DA690055FC6980050409A /* KTestManager.m in Sources */, + EDA6AC671A1F52E6001CD1F2 /* FSObjectInspectorOptionsViewController.m in Sources */, + ED68BE5F1A35E94B00968430 /* FSObjectBrowserWindow.m in Sources */, 8F6DA691055FC6980050409A /* MessagePatternCodeNode.m in Sources */, 8F6DA692055FC6980050409A /* FSMiscTools.m in Sources */, 8F6DA693055FC6980050409A /* FSMsgContext.m in Sources */, @@ -7498,6 +7824,7 @@ 8F6DA6B0055FC6980050409A /* FSObjectBrowserButtonCtxBlock.m in Sources */, 8F6DA6B1055FC6980050409A /* FSObjectBrowserButtonsInspector.m in Sources */, 8F6DA6B2055FC6980050409A /* Pointer.m in Sources */, + ED3CB6501A1E5B3300771077 /* FSColorWell.m in Sources */, 8F6DA6B3055FC6980050409A /* FSIdentifierFormatter.m in Sources */, 8F6DA6B4055FC6980050409A /* FSObjectFormatter.m in Sources */, 8F6DA6B7055FC6980050409A /* FSKeyedUnarchiver.m in Sources */, @@ -7526,6 +7853,7 @@ 8F8EA797077F6C9300AC1C96 /* FSGenericPointer.m in Sources */, 8FE9AE30078071CC005B2CC4 /* FSObjectPointer.m in Sources */, 8F86923B07F19BA8000D20A4 /* FSObjectBrowserNamedObjectWrapper.m in Sources */, + EDC2C8EB1A1A99BF00942777 /* FSDetailedObjectInspector.m in Sources */, 8F7F4F9F07FB274C008E42F4 /* FSInspectorUniquier.m in Sources */, 8F95E3CA08034A670030B65C /* FSPredicateTextView.m in Sources */, 8FE7E0EF082AD964008231E8 /* FSCoreDataSample.m in Sources */, @@ -7545,9 +7873,12 @@ 8F8112F50D85E58200CB3407 /* FSCNCategory.m in Sources */, 8F59CA720D86DD0800D67A78 /* FSCNMessage.m in Sources */, 8F7223820D870C6A00394C99 /* FSCNSuper.m in Sources */, + ED8319431A1BFA7400290EE2 /* FSObjectInspectorViewController+NonArc.m in Sources */, 8F2E34250D8DB61C00912543 /* FSCNUnaryMessage.m in Sources */, + EDA6AC511A1F407C001CD1F2 /* FSObjectInspectorOutlineView.m in Sources */, 8F2E34380D8DBF6A00912543 /* FSCNBinaryMessage.m in Sources */, 8F2E34410D8DBFE700912543 /* FSCNKeywordMessage.m in Sources */, + EDC2C8ED1A1A99F600942777 /* FSObjectInspectorViewController.m in Sources */, 8F5900160D9468FC003A8B17 /* FSCNCascade.m in Sources */, 8F8F58690D9FE6AA00ED0FED /* FSCNStatementList.m in Sources */, 8F747DAC0DA03AE200148342 /* FSCNPrecomputedObject.m in Sources */, @@ -7555,6 +7886,8 @@ 8FAE79B00DA0ED5D00CB6E14 /* FSCNBlock.m in Sources */, 8FAE79F70DA109C500CB6E14 /* FSCNAssignment.m in Sources */, 8F45CBC50DA813F200AFA8C8 /* FSCNMethod.m in Sources */, + EDC2C8FD1A1AA34D00942777 /* FSObjectInspectorBackgroundView.m in Sources */, + ED83192E1A1BC2B500290EE2 /* FSUtils.m in Sources */, 8FD0A31A0DD7276000E47459 /* FSCNReturn.m in Sources */, 8F8949D80DE08B110094EC14 /* FSClassDefinition.m in Sources */, 8F2DE6610E57254700CF83CB /* FSTranscript.m in Sources */, @@ -7570,6 +7903,7 @@ 8F2D720F0F6BD9B100F0862A /* FSNSAffineTransform.m in Sources */, 8FCA593710883B0100F67841 /* FSNewlyAllocatedObject.m in Sources */, 8F5EDA05109B384A003A2F4C /* FSWorksWhenModalWindow.m in Sources */, + ED8222F41A19554F00C42C72 /* FSObjectEnumInfo.m in Sources */, 8F442713116549C700E88F21 /* FSNSMutableDictionary.m in Sources */, ); runOnlyForDeploymentPostprocessing = 0; @@ -7602,6 +7936,8 @@ 8F6DA888055FC70C0050409A /* BlockStackElem.m in Sources */, 8F6DA889055FC70C0050409A /* CLIView.m in Sources */, 8F6DA88A055FC70C0050409A /* FSCompilationResult.m in Sources */, + ED3004EE1A1A86EF00675D94 /* FSObjectInspectorViewController.m in Sources */, + ED83193B1A1BFA7400290EE2 /* FSObjectInspectorViewController+NonArc.m in Sources */, 8F6DA88B055FC70C0050409A /* CompiledCodeNode.m in Sources */, 8F6DA88C055FC70C0050409A /* FSCompiler.m in Sources */, 8F6DA88D055FC70C0050409A /* FSConstantsInitialization.m in Sources */, @@ -7639,7 +7975,9 @@ 8F6DA8B5055FC70C0050409A /* Space.m in Sources */, 8F6DA8B6055FC70C0050409A /* FSCommandHistory.m in Sources */, 8F6DA8B8055FC70C0050409A /* FSSystem.m in Sources */, + ED8222EE1A19554F00C42C72 /* FSObjectEnumInfo.m in Sources */, 8F6DA8BB055FC70C0050409A /* DOTest.m in Sources */, + ED68BE571A35E94B00968430 /* FSObjectBrowserWindow.m in Sources */, 8F6DA8BC055FC70C0050409A /* FSNSProtocolChecker.m in Sources */, 8F6DA8BD055FC70C0050409A /* fs_main.m in Sources */, 8F6DA8BE055FC70C0050409A /* FScriptAppController.m in Sources */, @@ -7656,9 +7994,12 @@ 8F6DA8CF055FC70C0050409A /* FSObjectFormatter.m in Sources */, 8F6DA8D2055FC70C0050409A /* FSKeyedUnarchiver.m in Sources */, 8F6DA8D3055FC70C0050409A /* FSKeyedArchiver.m in Sources */, + ED8222DD1A194FD600C42C72 /* FSObjectInspectorViewModelItem.m in Sources */, 8F6DA8D4055FC70C0050409A /* FSConstantListBuilder.m in Sources */, 8F6DA8D5055FC70C0050409A /* FSImageInspector.m in Sources */, 8F6DA8D6055FC70C0050409A /* FSNSImage.m in Sources */, + ED3CB6491A1E5B3300771077 /* FSColorWell.m in Sources */, + EDC2C8E41A1A943600942777 /* FSDetailedObjectInspector.m in Sources */, 8F6DA8D7055FC70C0050409A /* FSObjectBrowserToolbarItem.m in Sources */, 8F6DA8D8055FC70C0050409A /* FSArrayEnumerator.m in Sources */, 8F6DA8D9055FC70C0050409A /* FSNSMutableArray.m in Sources */, @@ -7674,6 +8015,7 @@ 8F658B2E05C9694F0040FB24 /* FSNSFont.m in Sources */, 8FB5060605D53C8600153B33 /* FSObjectBrowserMatrix.m in Sources */, 8F130139064EC78200A90302 /* FSNSString.m in Sources */, + EDC2C8F71A1AA34D00942777 /* FSObjectInspectorBackgroundView.m in Sources */, 8F17C08206B1309C00F07862 /* FSSymbolTable.m in Sources */, 8F6B34B206E27E4600B3943E /* TestFS.m in Sources */, 8F4E2951075B8E5600F8DCDB /* FSObjectBrowserViewObjectInfo.m in Sources */, @@ -7702,6 +8044,7 @@ 8F48220A0D2C317700754A4E /* FSTestObjCClass2.m in Sources */, 8F8112F70D85E58200CB3407 /* FSCNCategory.m in Sources */, 8F59CA760D86DD0800D67A78 /* FSCNMessage.m in Sources */, + EDA6AC5F1A1F52E6001CD1F2 /* FSObjectInspectorOptionsViewController.m in Sources */, 8F7223840D870C6A00394C99 /* FSCNSuper.m in Sources */, 8F2E34230D8DB61C00912543 /* FSCNUnaryMessage.m in Sources */, 8F2E34360D8DBF6A00912543 /* FSCNBinaryMessage.m in Sources */, @@ -7710,6 +8053,7 @@ 8F8F58670D9FE6AA00ED0FED /* FSCNStatementList.m in Sources */, 8F747DAE0DA03AE200148342 /* FSCNPrecomputedObject.m in Sources */, 8F747DBD0DA0467100148342 /* FSCNArray.m in Sources */, + EDA6AC491A1F407C001CD1F2 /* FSObjectInspectorOutlineView.m in Sources */, 8FAE79B20DA0ED5D00CB6E14 /* FSCNBlock.m in Sources */, 8FAE79F90DA109C500CB6E14 /* FSCNAssignment.m in Sources */, 8F45CBC30DA813F200AFA8C8 /* FSCNMethod.m in Sources */, @@ -7721,6 +8065,7 @@ 8FCA00C60EEAF34300B10420 /* Block.m in Sources */, 8FBB2FF50EEB3467007A3163 /* Number.m in Sources */, 8FB9D59B0F1CEE2100E10274 /* FSGlobalScope.m in Sources */, + ED8319261A1BC2B500290EE2 /* FSUtils.m in Sources */, 8F9D041C0F1DF1CB001B8286 /* FSNSFileHandle.m in Sources */, 8F940B890F2393B0004525E1 /* FSAssociation.m in Sources */, 8F940C760F23BC2E004525E1 /* FSCNDictionary.m in Sources */, @@ -7758,11 +8103,14 @@ 8F6DA98A055FC71F0050409A /* FSFlight.m in Sources */, 8F6DA98B055FC71F0050409A /* FSArchiver.m in Sources */, 8F6DA98C055FC71F0050409A /* FSBoolean.m in Sources */, + ED8222DE1A194FD600C42C72 /* FSObjectInspectorViewModelItem.m in Sources */, 8F6DA98E055FC71F0050409A /* FScriptFunctions.m in Sources */, + EDC2C8E51A1A943600942777 /* FSDetailedObjectInspector.m in Sources */, 8F6DA98F055FC71F0050409A /* FSInterpreter.m in Sources */, 8F6DA990055FC71F0050409A /* FSInterpreterResult.m in Sources */, 8F6DA991055FC71F0050409A /* FSInterpreterView.m in Sources */, 8F6DA992055FC71F0050409A /* FSNSArray.m in Sources */, + ED3CB64A1A1E5B3300771077 /* FSColorWell.m in Sources */, 8F6DA993055FC71F0050409A /* FSNSDate.m in Sources */, 8F6DA994055FC71F0050409A /* FSNSDictionary.m in Sources */, 8F6DA995055FC71F0050409A /* FSNSMutableString.m in Sources */, @@ -7804,6 +8152,7 @@ 8F6DA9C8055FC71F0050409A /* FSIdentifierFormatter.m in Sources */, 8F6DA9CA055FC71F0050409A /* FSKeyedUnarchiver.m in Sources */, 8F6DA9CB055FC71F0050409A /* FSKeyedArchiver.m in Sources */, + ED68BE581A35E94B00968430 /* FSObjectBrowserWindow.m in Sources */, 8F6DA9CC055FC71F0050409A /* FSConstantListBuilder.m in Sources */, 8F6DA9CD055FC71F0050409A /* FSImageInspector.m in Sources */, 8F6DA9CE055FC71F0050409A /* FSNSImage.m in Sources */, @@ -7814,17 +8163,20 @@ 8F553BFA0585222700A92293 /* FSNSValue.m in Sources */, 8F7D7DC0058E32CD00F1B8A8 /* FSReplacementForCoderForNilInArray.m in Sources */, 8F0E3B83059F3DBB003F6CE9 /* FSNamedNumber.m in Sources */, + ED83193C1A1BFA7400290EE2 /* FSObjectInspectorViewController+NonArc.m in Sources */, 8F60217305A25CDC0004EFF1 /* FSCollectionInspectorTableView.m in Sources */, 8F60F24C05A9FE8B00985FEC /* FSNSSet.m in Sources */, 8FDCCD5305C09F8200747C0A /* FSAttributedStringInspector.m in Sources */, 8FDCCDC405C0A23100747C0A /* FSNSAttributedString.m in Sources */, 8F0B670005C5639E0099180D /* FScriptMenuItem.m in Sources */, + ED8319271A1BC2B500290EE2 /* FSUtils.m in Sources */, 8F658B3005C9694F0040FB24 /* FSNSFont.m in Sources */, 8FB5060805D53C8600153B33 /* FSObjectBrowserMatrix.m in Sources */, 8F17C08006B1309C00F07862 /* FSSymbolTable.m in Sources */, 8F4E294F075B8E5600F8DCDB /* FSObjectBrowserViewObjectInfo.m in Sources */, 8FA8EDEC07735B3B001BEC7B /* FSCollectionInspectorView.m in Sources */, 8FBC289F077B7D5200F9B4A2 /* ArrayRepFetchRequest.m in Sources */, + EDA6AC4A1A1F407C001CD1F2 /* FSObjectInspectorOutlineView.m in Sources */, 8F8EA731077F6A5200AC1C96 /* FSPointer.m in Sources */, 8F8EA7A1077F6C9300AC1C96 /* FSGenericPointer.m in Sources */, 8FE9AE3A078071CC005B2CC4 /* FSObjectPointer.m in Sources */, @@ -7842,6 +8194,7 @@ 8F5AD3240D05CFFE000CEAC6 /* FSCNClassDefinition.m in Sources */, 8FE639860D09C0F400255EBA /* FSCNBase.m in Sources */, 8FE639960D09DCB600255EBA /* FSCNIdentifier.m in Sources */, + ED8222EF1A19554F00C42C72 /* FSObjectEnumInfo.m in Sources */, 8FE3DD280D26D49900A1D767 /* FSTestObjCClass1.m in Sources */, 8F4822070D2C317700754A4E /* FSTestObjCClass2.m in Sources */, 8F8112F30D85E58200CB3407 /* FSCNCategory.m in Sources */, @@ -7856,6 +8209,8 @@ 8F747DB90DA0467100148342 /* FSCNArray.m in Sources */, 8FAE79AE0DA0ED5D00CB6E14 /* FSCNBlock.m in Sources */, 8FAE79F50DA109C500CB6E14 /* FSCNAssignment.m in Sources */, + EDA6AC601A1F52E6001CD1F2 /* FSObjectInspectorOptionsViewController.m in Sources */, + ED3004EF1A1A86EF00675D94 /* FSObjectInspectorViewController.m in Sources */, 8F45CBC10DA813F200AFA8C8 /* FSCNMethod.m in Sources */, 8FD0A3160DD7276000E47459 /* FSCNReturn.m in Sources */, 8F8949DD0DE08B110094EC14 /* FSClassDefinition.m in Sources */, @@ -7868,6 +8223,7 @@ 8F9D041F0F1DF1CB001B8286 /* FSNSFileHandle.m in Sources */, 8F940B870F2393B0004525E1 /* FSAssociation.m in Sources */, 8F940C740F23BC2E004525E1 /* FSCNDictionary.m in Sources */, + EDC2C8F81A1AA34D00942777 /* FSObjectInspectorBackgroundView.m in Sources */, 8F7A712C0F48397C00E95364 /* FSObjectBrowserBottomBarTextDisplay.m in Sources */, 8F2D720D0F6BD9B100F0862A /* FSNSAffineTransform.m in Sources */, 8FCA593910883B0100F67841 /* FSNewlyAllocatedObject.m in Sources */, @@ -7895,6 +8251,8 @@ BA223272189FA403002C5B6A /* BlockStackElem.m in Sources */, BA223273189FA403002C5B6A /* CLIView.m in Sources */, BA223274189FA403002C5B6A /* FSCompilationResult.m in Sources */, + ED3004F01A1A86EF00675D94 /* FSObjectInspectorViewController.m in Sources */, + ED83193D1A1BFA7400290EE2 /* FSObjectInspectorViewController+NonArc.m in Sources */, BA223275189FA403002C5B6A /* CompiledCodeNode.m in Sources */, BA223276189FA403002C5B6A /* FSCompiler.m in Sources */, BA223277189FA403002C5B6A /* FSConstantsInitialization.m in Sources */, @@ -7932,7 +8290,9 @@ BA223297189FA403002C5B6A /* Space.m in Sources */, BA223298189FA403002C5B6A /* FSCommandHistory.m in Sources */, BA223299189FA403002C5B6A /* FSSystem.m in Sources */, + ED8222F01A19554F00C42C72 /* FSObjectEnumInfo.m in Sources */, BA22329A189FA403002C5B6A /* DOTest.m in Sources */, + ED68BE591A35E94B00968430 /* FSObjectBrowserWindow.m in Sources */, BA22329B189FA403002C5B6A /* FSNSProtocolChecker.m in Sources */, BA22329C189FA403002C5B6A /* fs_main.m in Sources */, BA22329D189FA403002C5B6A /* FScriptAppController.m in Sources */, @@ -7949,9 +8309,12 @@ BA2232A8189FA403002C5B6A /* FSObjectFormatter.m in Sources */, BA2232A9189FA403002C5B6A /* FSKeyedUnarchiver.m in Sources */, BA2232AA189FA403002C5B6A /* FSKeyedArchiver.m in Sources */, + ED8222DF1A194FD600C42C72 /* FSObjectInspectorViewModelItem.m in Sources */, BA2232AB189FA403002C5B6A /* FSConstantListBuilder.m in Sources */, BA2232AC189FA403002C5B6A /* FSImageInspector.m in Sources */, BA2232AD189FA403002C5B6A /* FSNSImage.m in Sources */, + ED3CB64B1A1E5B3300771077 /* FSColorWell.m in Sources */, + EDC2C8E61A1A943600942777 /* FSDetailedObjectInspector.m in Sources */, BA2232AE189FA403002C5B6A /* FSObjectBrowserToolbarItem.m in Sources */, BA2232AF189FA403002C5B6A /* FSArrayEnumerator.m in Sources */, BA2232B0189FA403002C5B6A /* FSNSMutableArray.m in Sources */, @@ -7967,6 +8330,7 @@ BA2232BA189FA403002C5B6A /* FSNSFont.m in Sources */, BA2232BB189FA403002C5B6A /* FSObjectBrowserMatrix.m in Sources */, BA2232BC189FA403002C5B6A /* FSNSString.m in Sources */, + EDC2C8F91A1AA34D00942777 /* FSObjectInspectorBackgroundView.m in Sources */, BA2232BD189FA403002C5B6A /* FSSymbolTable.m in Sources */, BA2232BE189FA403002C5B6A /* TestFS.m in Sources */, BA2232BF189FA403002C5B6A /* FSObjectBrowserViewObjectInfo.m in Sources */, @@ -7995,6 +8359,7 @@ BA2232D6189FA403002C5B6A /* FSTestObjCClass2.m in Sources */, BA2232D7189FA403002C5B6A /* FSCNCategory.m in Sources */, BA2232D8189FA403002C5B6A /* FSCNMessage.m in Sources */, + EDA6AC611A1F52E6001CD1F2 /* FSObjectInspectorOptionsViewController.m in Sources */, BA2232D9189FA403002C5B6A /* FSCNSuper.m in Sources */, BA2232DA189FA403002C5B6A /* FSCNUnaryMessage.m in Sources */, BA2232DB189FA403002C5B6A /* FSCNBinaryMessage.m in Sources */, @@ -8003,6 +8368,7 @@ BA2232DE189FA403002C5B6A /* FSCNStatementList.m in Sources */, BA2232DF189FA403002C5B6A /* FSCNPrecomputedObject.m in Sources */, BA2232E0189FA403002C5B6A /* FSCNArray.m in Sources */, + EDA6AC4B1A1F407C001CD1F2 /* FSObjectInspectorOutlineView.m in Sources */, BA2232E1189FA403002C5B6A /* FSCNBlock.m in Sources */, BA2232E2189FA403002C5B6A /* FSCNAssignment.m in Sources */, BA2232E3189FA403002C5B6A /* FSCNMethod.m in Sources */, @@ -8014,6 +8380,7 @@ BA2232E9189FA403002C5B6A /* Block.m in Sources */, BA2232EA189FA403002C5B6A /* Number.m in Sources */, BA2232EB189FA403002C5B6A /* FSGlobalScope.m in Sources */, + ED8319281A1BC2B500290EE2 /* FSUtils.m in Sources */, BA2232EC189FA403002C5B6A /* FSNSFileHandle.m in Sources */, BA2232ED189FA403002C5B6A /* FSAssociation.m in Sources */, BA2232EE189FA403002C5B6A /* FSCNDictionary.m in Sources */, @@ -8045,6 +8412,8 @@ BA223432189FA412002C5B6A /* BlockStackElem.m in Sources */, BA223433189FA412002C5B6A /* CLIView.m in Sources */, BA223434189FA412002C5B6A /* FSCompilationResult.m in Sources */, + ED3004F21A1A86EF00675D94 /* FSObjectInspectorViewController.m in Sources */, + ED83193F1A1BFA7400290EE2 /* FSObjectInspectorViewController+NonArc.m in Sources */, BA223435189FA412002C5B6A /* CompiledCodeNode.m in Sources */, BA223436189FA412002C5B6A /* FSCompiler.m in Sources */, BA223437189FA412002C5B6A /* FSConstantsInitialization.m in Sources */, @@ -8082,7 +8451,9 @@ BA223457189FA412002C5B6A /* Space.m in Sources */, BA223458189FA412002C5B6A /* FSCommandHistory.m in Sources */, BA223459189FA412002C5B6A /* FSSystem.m in Sources */, + ED8222F21A19554F00C42C72 /* FSObjectEnumInfo.m in Sources */, BA22345A189FA412002C5B6A /* DOTest.m in Sources */, + ED68BE5B1A35E94B00968430 /* FSObjectBrowserWindow.m in Sources */, BA22345B189FA412002C5B6A /* FSNSProtocolChecker.m in Sources */, BA22345C189FA412002C5B6A /* fs_main.m in Sources */, BA22345D189FA412002C5B6A /* FScriptAppController.m in Sources */, @@ -8099,9 +8470,12 @@ BA223468189FA412002C5B6A /* FSObjectFormatter.m in Sources */, BA223469189FA412002C5B6A /* FSKeyedUnarchiver.m in Sources */, BA22346A189FA412002C5B6A /* FSKeyedArchiver.m in Sources */, + ED8222E11A194FD600C42C72 /* FSObjectInspectorViewModelItem.m in Sources */, BA22346B189FA412002C5B6A /* FSConstantListBuilder.m in Sources */, BA22346C189FA412002C5B6A /* FSImageInspector.m in Sources */, BA22346D189FA412002C5B6A /* FSNSImage.m in Sources */, + ED3CB64D1A1E5B3300771077 /* FSColorWell.m in Sources */, + EDC2C8E81A1A943600942777 /* FSDetailedObjectInspector.m in Sources */, BA22346E189FA412002C5B6A /* FSObjectBrowserToolbarItem.m in Sources */, BA22346F189FA412002C5B6A /* FSArrayEnumerator.m in Sources */, BA223470189FA412002C5B6A /* FSNSMutableArray.m in Sources */, @@ -8117,6 +8491,7 @@ BA22347A189FA412002C5B6A /* FSNSFont.m in Sources */, BA22347B189FA412002C5B6A /* FSObjectBrowserMatrix.m in Sources */, BA22347C189FA412002C5B6A /* FSNSString.m in Sources */, + EDC2C8FB1A1AA34D00942777 /* FSObjectInspectorBackgroundView.m in Sources */, BA22347D189FA412002C5B6A /* FSSymbolTable.m in Sources */, BA22347E189FA412002C5B6A /* TestFS.m in Sources */, BA22347F189FA412002C5B6A /* FSObjectBrowserViewObjectInfo.m in Sources */, @@ -8145,6 +8520,7 @@ BA223496189FA412002C5B6A /* FSTestObjCClass2.m in Sources */, BA223497189FA412002C5B6A /* FSCNCategory.m in Sources */, BA223498189FA412002C5B6A /* FSCNMessage.m in Sources */, + EDA6AC631A1F52E6001CD1F2 /* FSObjectInspectorOptionsViewController.m in Sources */, BA223499189FA412002C5B6A /* FSCNSuper.m in Sources */, BA22349A189FA412002C5B6A /* FSCNUnaryMessage.m in Sources */, BA22349B189FA412002C5B6A /* FSCNBinaryMessage.m in Sources */, @@ -8153,6 +8529,7 @@ BA22349E189FA412002C5B6A /* FSCNStatementList.m in Sources */, BA22349F189FA412002C5B6A /* FSCNPrecomputedObject.m in Sources */, BA2234A0189FA412002C5B6A /* FSCNArray.m in Sources */, + EDA6AC4D1A1F407C001CD1F2 /* FSObjectInspectorOutlineView.m in Sources */, BA2234A1189FA412002C5B6A /* FSCNBlock.m in Sources */, BA2234A2189FA412002C5B6A /* FSCNAssignment.m in Sources */, BA2234A3189FA412002C5B6A /* FSCNMethod.m in Sources */, @@ -8164,6 +8541,7 @@ BA2234A9189FA412002C5B6A /* Block.m in Sources */, BA2234AA189FA412002C5B6A /* Number.m in Sources */, BA2234AB189FA412002C5B6A /* FSGlobalScope.m in Sources */, + ED83192A1A1BC2B500290EE2 /* FSUtils.m in Sources */, BA2234AC189FA412002C5B6A /* FSNSFileHandle.m in Sources */, BA2234AD189FA412002C5B6A /* FSAssociation.m in Sources */, BA2234AE189FA412002C5B6A /* FSCNDictionary.m in Sources */, @@ -8201,11 +8579,14 @@ BA2235EB189FA429002C5B6A /* FSFlight.m in Sources */, BA2235EC189FA429002C5B6A /* FSArchiver.m in Sources */, BA2235ED189FA429002C5B6A /* FSBoolean.m in Sources */, + ED8222E01A194FD600C42C72 /* FSObjectInspectorViewModelItem.m in Sources */, BA2235EE189FA429002C5B6A /* FScriptFunctions.m in Sources */, + EDC2C8E71A1A943600942777 /* FSDetailedObjectInspector.m in Sources */, BA2235EF189FA429002C5B6A /* FSInterpreter.m in Sources */, BA2235F0189FA429002C5B6A /* FSInterpreterResult.m in Sources */, BA2235F1189FA429002C5B6A /* FSInterpreterView.m in Sources */, BA2235F2189FA429002C5B6A /* FSNSArray.m in Sources */, + ED3CB64C1A1E5B3300771077 /* FSColorWell.m in Sources */, BA2235F3189FA429002C5B6A /* FSNSDate.m in Sources */, BA2235F4189FA429002C5B6A /* FSNSDictionary.m in Sources */, BA2235F5189FA429002C5B6A /* FSNSMutableString.m in Sources */, @@ -8247,6 +8628,7 @@ BA223619189FA429002C5B6A /* FSIdentifierFormatter.m in Sources */, BA22361A189FA429002C5B6A /* FSKeyedUnarchiver.m in Sources */, BA22361B189FA429002C5B6A /* FSKeyedArchiver.m in Sources */, + ED68BE5A1A35E94B00968430 /* FSObjectBrowserWindow.m in Sources */, BA22361C189FA429002C5B6A /* FSConstantListBuilder.m in Sources */, BA22361D189FA429002C5B6A /* FSImageInspector.m in Sources */, BA22361E189FA429002C5B6A /* FSNSImage.m in Sources */, @@ -8257,17 +8639,20 @@ BA223623189FA429002C5B6A /* FSNSValue.m in Sources */, BA223624189FA429002C5B6A /* FSReplacementForCoderForNilInArray.m in Sources */, BA223625189FA429002C5B6A /* FSNamedNumber.m in Sources */, + ED83193E1A1BFA7400290EE2 /* FSObjectInspectorViewController+NonArc.m in Sources */, BA223626189FA429002C5B6A /* FSCollectionInspectorTableView.m in Sources */, BA223627189FA429002C5B6A /* FSNSSet.m in Sources */, BA223628189FA429002C5B6A /* FSAttributedStringInspector.m in Sources */, BA223629189FA429002C5B6A /* FSNSAttributedString.m in Sources */, BA22362A189FA429002C5B6A /* FScriptMenuItem.m in Sources */, + ED8319291A1BC2B500290EE2 /* FSUtils.m in Sources */, BA22362B189FA429002C5B6A /* FSNSFont.m in Sources */, BA22362C189FA429002C5B6A /* FSObjectBrowserMatrix.m in Sources */, BA22362D189FA429002C5B6A /* FSSymbolTable.m in Sources */, BA22362E189FA429002C5B6A /* FSObjectBrowserViewObjectInfo.m in Sources */, BA22362F189FA429002C5B6A /* FSCollectionInspectorView.m in Sources */, BA223630189FA429002C5B6A /* ArrayRepFetchRequest.m in Sources */, + EDA6AC4C1A1F407C001CD1F2 /* FSObjectInspectorOutlineView.m in Sources */, BA223631189FA429002C5B6A /* FSPointer.m in Sources */, BA223632189FA429002C5B6A /* FSGenericPointer.m in Sources */, BA223633189FA429002C5B6A /* FSObjectPointer.m in Sources */, @@ -8285,6 +8670,7 @@ BA22363F189FA429002C5B6A /* FSCNClassDefinition.m in Sources */, BA223640189FA429002C5B6A /* FSCNBase.m in Sources */, BA223641189FA429002C5B6A /* FSCNIdentifier.m in Sources */, + ED8222F11A19554F00C42C72 /* FSObjectEnumInfo.m in Sources */, BA223642189FA429002C5B6A /* FSTestObjCClass1.m in Sources */, BA223643189FA429002C5B6A /* FSTestObjCClass2.m in Sources */, BA223644189FA429002C5B6A /* FSCNCategory.m in Sources */, @@ -8299,6 +8685,8 @@ BA22364D189FA429002C5B6A /* FSCNArray.m in Sources */, BA22364E189FA429002C5B6A /* FSCNBlock.m in Sources */, BA22364F189FA429002C5B6A /* FSCNAssignment.m in Sources */, + EDA6AC621A1F52E6001CD1F2 /* FSObjectInspectorOptionsViewController.m in Sources */, + ED3004F11A1A86EF00675D94 /* FSObjectInspectorViewController.m in Sources */, BA223650189FA429002C5B6A /* FSCNMethod.m in Sources */, BA223651189FA429002C5B6A /* FSCNReturn.m in Sources */, BA223652189FA429002C5B6A /* FSClassDefinition.m in Sources */, @@ -8311,6 +8699,7 @@ BA223659189FA429002C5B6A /* FSNSFileHandle.m in Sources */, BA22365A189FA429002C5B6A /* FSAssociation.m in Sources */, BA22365B189FA429002C5B6A /* FSCNDictionary.m in Sources */, + EDC2C8FA1A1AA34D00942777 /* FSObjectInspectorBackgroundView.m in Sources */, BA22365C189FA429002C5B6A /* FSObjectBrowserBottomBarTextDisplay.m in Sources */, BA22365D189FA429002C5B6A /* FSNSAffineTransform.m in Sources */, BA22365E189FA429002C5B6A /* FSNewlyAllocatedObject.m in Sources */, @@ -8344,11 +8733,14 @@ BA223733189FA431002C5B6A /* FSFlight.m in Sources */, BA223734189FA431002C5B6A /* FSArchiver.m in Sources */, BA223735189FA431002C5B6A /* FSBoolean.m in Sources */, + ED8222E21A194FD600C42C72 /* FSObjectInspectorViewModelItem.m in Sources */, BA223736189FA431002C5B6A /* FScriptFunctions.m in Sources */, + EDC2C8E91A1A943600942777 /* FSDetailedObjectInspector.m in Sources */, BA223737189FA431002C5B6A /* FSInterpreter.m in Sources */, BA223738189FA431002C5B6A /* FSInterpreterResult.m in Sources */, BA223739189FA431002C5B6A /* FSInterpreterView.m in Sources */, BA22373A189FA431002C5B6A /* FSNSArray.m in Sources */, + ED3CB64E1A1E5B3300771077 /* FSColorWell.m in Sources */, BA22373B189FA431002C5B6A /* FSNSDate.m in Sources */, BA22373C189FA431002C5B6A /* FSNSDictionary.m in Sources */, BA22373D189FA431002C5B6A /* FSNSMutableString.m in Sources */, @@ -8390,6 +8782,7 @@ BA223761189FA431002C5B6A /* FSIdentifierFormatter.m in Sources */, BA223762189FA431002C5B6A /* FSKeyedUnarchiver.m in Sources */, BA223763189FA431002C5B6A /* FSKeyedArchiver.m in Sources */, + ED68BE5C1A35E94B00968430 /* FSObjectBrowserWindow.m in Sources */, BA223764189FA431002C5B6A /* FSConstantListBuilder.m in Sources */, BA223765189FA431002C5B6A /* FSImageInspector.m in Sources */, BA223766189FA431002C5B6A /* FSNSImage.m in Sources */, @@ -8400,17 +8793,20 @@ BA22376B189FA431002C5B6A /* FSNSValue.m in Sources */, BA22376C189FA431002C5B6A /* FSReplacementForCoderForNilInArray.m in Sources */, BA22376D189FA431002C5B6A /* FSNamedNumber.m in Sources */, + ED8319401A1BFA7400290EE2 /* FSObjectInspectorViewController+NonArc.m in Sources */, BA22376E189FA431002C5B6A /* FSCollectionInspectorTableView.m in Sources */, BA22376F189FA431002C5B6A /* FSNSSet.m in Sources */, BA223770189FA431002C5B6A /* FSAttributedStringInspector.m in Sources */, BA223771189FA431002C5B6A /* FSNSAttributedString.m in Sources */, BA223772189FA431002C5B6A /* FScriptMenuItem.m in Sources */, + ED83192B1A1BC2B500290EE2 /* FSUtils.m in Sources */, BA223773189FA431002C5B6A /* FSNSFont.m in Sources */, BA223774189FA431002C5B6A /* FSObjectBrowserMatrix.m in Sources */, BA223775189FA431002C5B6A /* FSSymbolTable.m in Sources */, BA223776189FA431002C5B6A /* FSObjectBrowserViewObjectInfo.m in Sources */, BA223777189FA431002C5B6A /* FSCollectionInspectorView.m in Sources */, BA223778189FA431002C5B6A /* ArrayRepFetchRequest.m in Sources */, + EDA6AC4E1A1F407C001CD1F2 /* FSObjectInspectorOutlineView.m in Sources */, BA223779189FA432002C5B6A /* FSPointer.m in Sources */, BA22377A189FA432002C5B6A /* FSGenericPointer.m in Sources */, BA22377B189FA432002C5B6A /* FSObjectPointer.m in Sources */, @@ -8428,6 +8824,7 @@ BA223787189FA432002C5B6A /* FSCNClassDefinition.m in Sources */, BA223788189FA432002C5B6A /* FSCNBase.m in Sources */, BA223789189FA432002C5B6A /* FSCNIdentifier.m in Sources */, + ED8222F31A19554F00C42C72 /* FSObjectEnumInfo.m in Sources */, BA22378A189FA432002C5B6A /* FSTestObjCClass1.m in Sources */, BA22378B189FA432002C5B6A /* FSTestObjCClass2.m in Sources */, BA22378C189FA432002C5B6A /* FSCNCategory.m in Sources */, @@ -8442,6 +8839,8 @@ BA223795189FA432002C5B6A /* FSCNArray.m in Sources */, BA223796189FA432002C5B6A /* FSCNBlock.m in Sources */, BA223797189FA432002C5B6A /* FSCNAssignment.m in Sources */, + EDA6AC641A1F52E6001CD1F2 /* FSObjectInspectorOptionsViewController.m in Sources */, + ED3004F31A1A86EF00675D94 /* FSObjectInspectorViewController.m in Sources */, BA223798189FA432002C5B6A /* FSCNMethod.m in Sources */, BA223799189FA432002C5B6A /* FSCNReturn.m in Sources */, BA22379A189FA432002C5B6A /* FSClassDefinition.m in Sources */, @@ -8454,6 +8853,7 @@ BA2237A1189FA432002C5B6A /* FSNSFileHandle.m in Sources */, BA2237A2189FA432002C5B6A /* FSAssociation.m in Sources */, BA2237A3189FA432002C5B6A /* FSCNDictionary.m in Sources */, + EDC2C8FC1A1AA34D00942777 /* FSObjectInspectorBackgroundView.m in Sources */, BA2237A4189FA432002C5B6A /* FSObjectBrowserBottomBarTextDisplay.m in Sources */, BA2237A5189FA432002C5B6A /* FSNSAffineTransform.m in Sources */, BA2237A6189FA432002C5B6A /* FSNewlyAllocatedObject.m in Sources */, @@ -8462,296 +8862,318 @@ ); runOnlyForDeploymentPostprocessing = 0; }; - E29F5C8F19FD93FD00AD90CF /* Sources */ = { + EDC2C9CC1A1AA50D00942777 /* Sources */ = { isa = PBXSourcesBuildPhase; buildActionMask = 2147483647; files = ( - E29F5C9019FD93FD00AD90CF /* FSAirplane.m in Sources */, - E29F5C9119FD93FD00AD90CF /* ArrayRepDouble.m in Sources */, - E29F5C9219FD93FD00AD90CF /* ArrayRepEmpty.m in Sources */, - E29F5C9319FD93FD00AD90CF /* ArrayRepId.m in Sources */, - E29F5C9419FD93FD00AD90CF /* FSCollectionInspector.m in Sources */, - E29F5C9519FD93FD00AD90CF /* FSObjectBrowser.m in Sources */, - E29F5C9619FD93FD00AD90CF /* FSObjectBrowserArgumentPanel.m in Sources */, - E29F5C9719FD93FD00AD90CF /* FSObjectBrowserCell.m in Sources */, - E29F5C9819FD93FD00AD90CF /* FSObjectBrowserView.m in Sources */, - E29F5C9919FD93FD00AD90CF /* FSBlock.m in Sources */, - E29F5C9A19FD93FD00AD90CF /* BlockInspector.m in Sources */, - E29F5C9B19FD93FD00AD90CF /* BlockRep.m in Sources */, - E29F5C9C19FD93FD00AD90CF /* BlockStackElem.m in Sources */, - E29F5C9D19FD93FD00AD90CF /* CLIView.m in Sources */, - E29F5C9E19FD93FD00AD90CF /* FSCompilationResult.m in Sources */, - E29F5C9F19FD93FD00AD90CF /* CompiledCodeNode.m in Sources */, - E29F5CA019FD93FD00AD90CF /* FSCompiler.m in Sources */, - E29F5CA119FD93FD00AD90CF /* FSConstantsInitialization.m in Sources */, - E29F5CA219FD93FD00AD90CF /* FSExecEngine.m in Sources */, - E29F5CA319FD93FD00AD90CF /* FSExecutor.m in Sources */, - E29F5CA419FD93FD00AD90CF /* FSFlight.m in Sources */, - E29F5CA519FD93FD00AD90CF /* FSArchiver.m in Sources */, - E29F5CA619FD93FD00AD90CF /* FSBoolean.m in Sources */, - E29F5CA719FD93FD00AD90CF /* FScriptFunctions.m in Sources */, - E29F5CA819FD93FD00AD90CF /* FScriptTextView.m in Sources */, - E29F5CA919FD93FD00AD90CF /* FSInterpreter.m in Sources */, - E29F5CAA19FD93FD00AD90CF /* FSInterpreterResult.m in Sources */, - E29F5CAB19FD93FD00AD90CF /* FSInterpreterView.m in Sources */, - E29F5CAC19FD93FD00AD90CF /* FSNSArray.m in Sources */, - E29F5CAD19FD93FD00AD90CF /* FSNSDate.m in Sources */, - E29F5CAE19FD93FD00AD90CF /* FSNSDictionary.m in Sources */, - E29F5CAF19FD93FD00AD90CF /* FSNSDistantObject.m in Sources */, - E29F5CB019FD93FD00AD90CF /* FSNSMutableString.m in Sources */, - E29F5CB119FD93FD00AD90CF /* FSNSNumber.m in Sources */, - E29F5CB219FD93FD00AD90CF /* FSNSObject.m in Sources */, - E29F5CB319FD93FD00AD90CF /* FSNSProxy.m in Sources */, - E29F5CB419FD93FD00AD90CF /* FSPattern.m in Sources */, - E29F5CB519FD93FD00AD90CF /* FSUnarchiver.m in Sources */, - E29F5CB619FD93FD00AD90CF /* FSVoid.m in Sources */, - E29F5CB719FD93FD00AD90CF /* FSGenericObjectInspector.m in Sources */, - E29F5CB819FD93FD00AD90CF /* KTestManager.m in Sources */, - E29F5CB919FD93FD00AD90CF /* FSMiscTools.m in Sources */, - E29F5CBA19FD93FD00AD90CF /* FSMsgContext.m in Sources */, - E29F5CBB19FD93FD00AD90CF /* FSNewlyAllocatedObjectHolder.m in Sources */, - E29F5CBC19FD93FD00AD90CF /* FSNumber.m in Sources */, - E29F5CBD19FD93FD00AD90CF /* FSPilot.m in Sources */, - E29F5CBE19FD93FD00AD90CF /* MessagePatternCodeNode.m in Sources */, - E29F5CBF19FD93FD00AD90CF /* FSReplacementForCoderForClass.m in Sources */, - E29F5CC019FD93FD00AD90CF /* ShellView.m in Sources */, - E29F5CC119FD93FD00AD90CF /* Space.m in Sources */, - E29F5CC219FD93FD00AD90CF /* FSCommandHistory.m in Sources */, - E29F5CC319FD93FD00AD90CF /* FSSystem.m in Sources */, - E29F5CC419FD93FD00AD90CF /* DOTest.m in Sources */, - E29F5CC519FD93FD00AD90CF /* FSNSProtocolChecker.m in Sources */, - E29F5CC619FD93FD00AD90CF /* fs_main.m in Sources */, - E29F5CC719FD93FD00AD90CF /* FScriptAppController.m in Sources */, - E29F5CC819FD93FD00AD90CF /* FSObjectBrowserToolbar.m in Sources */, - E29F5CC919FD93FD00AD90CF /* FSEvalCommand.m in Sources */, - E29F5CCA19FD93FD00AD90CF /* FSServicesProvider.m in Sources */, - E29F5CCB19FD93FD00AD90CF /* FSTask.m in Sources */, - E29F5CCC19FD93FD00AD90CF /* FSObjectBrowserToolbarButton.m in Sources */, - E29F5CCD19FD93FD00AD90CF /* FSObjectBrowserButtonsInspector.m in Sources */, - E29F5CCE19FD93FD00AD90CF /* FSObjectBrowserButtonCtxBlock.m in Sources */, - E29F5CCF19FD93FD00AD90CF /* DOCustom.m in Sources */, - E29F5CD019FD93FD00AD90CF /* Pointer.m in Sources */, - E29F5CD119FD93FD00AD90CF /* FSIdentifierFormatter.m in Sources */, - E29F5CD219FD93FD00AD90CF /* FSObjectFormatter.m in Sources */, - E29F5CD319FD93FD00AD90CF /* FSKeyedUnarchiver.m in Sources */, - E29F5CD419FD93FD00AD90CF /* FSKeyedArchiver.m in Sources */, - E29F5CD519FD93FD00AD90CF /* FSConstantListBuilder.m in Sources */, - E29F5CD619FD93FD00AD90CF /* FSImageInspector.m in Sources */, - E29F5CD719FD93FD00AD90CF /* FSNSImage.m in Sources */, - E29F5CD819FD93FD00AD90CF /* FSObjectBrowserToolbarItem.m in Sources */, - E29F5CD919FD93FD00AD90CF /* FSArrayEnumerator.m in Sources */, - E29F5CDA19FD93FD00AD90CF /* FSNSMutableArray.m in Sources */, - E29F5CDB19FD93FD00AD90CF /* ArrayRepBoolean.m in Sources */, - E29F5CDC19FD93FD00AD90CF /* FSNSValue.m in Sources */, - E29F5CDD19FD93FD00AD90CF /* FSReplacementForCoderForNilInArray.m in Sources */, - E29F5CDE19FD93FD00AD90CF /* FSNamedNumber.m in Sources */, - E29F5CDF19FD93FD00AD90CF /* FSCollectionInspectorTableView.m in Sources */, - E29F5CE019FD93FD00AD90CF /* FSNSSet.m in Sources */, - E29F5CE119FD93FD00AD90CF /* FSAttributedStringInspector.m in Sources */, - E29F5CE219FD93FD00AD90CF /* FSNSAttributedString.m in Sources */, - E29F5CE319FD93FD00AD90CF /* FScriptMenuItem.m in Sources */, - E29F5CE419FD93FD00AD90CF /* FSNSFont.m in Sources */, - E29F5CE519FD93FD00AD90CF /* FSObjectBrowserMatrix.m in Sources */, - E29F5CE619FD93FD00AD90CF /* FSNSString.m in Sources */, - E29F5CE719FD93FD00AD90CF /* FSSymbolTable.m in Sources */, - E29F5CE819FD93FD00AD90CF /* TestFS.m in Sources */, - E29F5CE919FD93FD00AD90CF /* FSObjectBrowserViewObjectInfo.m in Sources */, - E29F5CEA19FD93FD00AD90CF /* FSCollectionInspectorView.m in Sources */, - E29F5CEB19FD93FD00AD90CF /* ArrayRepFetchRequest.m in Sources */, - E29F5CEC19FD93FD00AD90CF /* FSPointer.m in Sources */, - E29F5CED19FD93FD00AD90CF /* FSGenericPointer.m in Sources */, - E29F5CEE19FD93FD00AD90CF /* FSObjectPointer.m in Sources */, - E29F5CEF19FD93FD00AD90CF /* FSManagedObjectContextInspector.m in Sources */, - E29F5CF019FD93FD00AD90CF /* FSObjectBrowserNamedObjectWrapper.m in Sources */, - E29F5CF119FD93FD00AD90CF /* FSInspectorUniquier.m in Sources */, - E29F5CF219FD93FD00AD90CF /* FSPredicateTextView.m in Sources */, - E29F5CF319FD93FD00AD90CF /* FSCoreDataSample.m in Sources */, - E29F5CF419FD93FD00AD90CF /* FSNSManagedObjectContext.m in Sources */, - E29F5CF519FD93FD00AD90CF /* FSObjectBrowserSearchField.m in Sources */, - E29F5CF619FD93FD00AD90CF /* FSBlockCompilationResult.m in Sources */, - E29F5CF719FD93FD00AD90CF /* FSReturnSignal.m in Sources */, - E29F5CF819FD93FD00AD90CF /* FSConstantsDictionaryGenerator.m in Sources */, - E29F5CF919FD93FD00AD90CF /* FSQTMovie.m in Sources */, - E29F5CFA19FD93FD00AD90CF /* FSMovieInspector.m in Sources */, - E29F5CFB19FD93FD00AD90CF /* FSMethod.m in Sources */, - E29F5CFC19FD93FD00AD90CF /* FSCNClassDefinition.m in Sources */, - E29F5CFD19FD93FD00AD90CF /* FSCNBase.m in Sources */, - E29F5CFE19FD93FD00AD90CF /* FSCNIdentifier.m in Sources */, - E29F5CFF19FD93FD00AD90CF /* FSTestObjCClass1.m in Sources */, - E29F5D0019FD93FD00AD90CF /* FSTestObjCClass2.m in Sources */, - E29F5D0119FD93FD00AD90CF /* FSCNCategory.m in Sources */, - E29F5D0219FD93FD00AD90CF /* FSCNMessage.m in Sources */, - E29F5D0319FD93FD00AD90CF /* FSCNSuper.m in Sources */, - E29F5D0419FD93FD00AD90CF /* FSCNUnaryMessage.m in Sources */, - E29F5D0519FD93FD00AD90CF /* FSCNBinaryMessage.m in Sources */, - E29F5D0619FD93FD00AD90CF /* FSCNKeywordMessage.m in Sources */, - E29F5D0719FD93FD00AD90CF /* FSCNCascade.m in Sources */, - E29F5D0819FD93FD00AD90CF /* FSCNStatementList.m in Sources */, - E29F5D0919FD93FD00AD90CF /* FSCNPrecomputedObject.m in Sources */, - E29F5D0A19FD93FD00AD90CF /* FSCNArray.m in Sources */, - E29F5D0B19FD93FD00AD90CF /* FSCNBlock.m in Sources */, - E29F5D0C19FD93FD00AD90CF /* FSCNAssignment.m in Sources */, - E29F5D0D19FD93FD00AD90CF /* FSCNMethod.m in Sources */, - E29F5D0E19FD93FD00AD90CF /* FSCNReturn.m in Sources */, - E29F5D0F19FD93FD00AD90CF /* FSClassDefinition.m in Sources */, - E29F5D1019FD93FD00AD90CF /* FSTranscript.m in Sources */, - E29F5D1119FD93FD00AD90CF /* FSArray.m in Sources */, - E29F5D1219FD93FD00AD90CF /* Array.m in Sources */, - E29F5D1319FD93FD00AD90CF /* Block.m in Sources */, - E29F5D1419FD93FD00AD90CF /* Number.m in Sources */, - E29F5D1519FD93FD00AD90CF /* FSGlobalScope.m in Sources */, - E29F5D1619FD93FD00AD90CF /* FSNSFileHandle.m in Sources */, - E29F5D1719FD93FD00AD90CF /* FSAssociation.m in Sources */, - E29F5D1819FD93FD00AD90CF /* FSCNDictionary.m in Sources */, - E29F5D1919FD93FD00AD90CF /* FSObjectBrowserBottomBarTextDisplay.m in Sources */, - E29F5D1A19FD93FD00AD90CF /* FSNSAffineTransform.m in Sources */, - E29F5D1B19FD93FD00AD90CF /* FSDemoAssistant.m in Sources */, - E29F5D1C19FD93FD00AD90CF /* FSNewlyAllocatedObject.m in Sources */, - E29F5D1D19FD93FD00AD90CF /* FSWorksWhenModalWindow.m in Sources */, - E29F5D1E19FD93FD00AD90CF /* FSNSMutableDictionary.m in Sources */, + EDC2C9CD1A1AA50D00942777 /* FSAirplane.m in Sources */, + EDC2C9CE1A1AA50D00942777 /* ArrayRepDouble.m in Sources */, + EDC2C9CF1A1AA50D00942777 /* ArrayRepEmpty.m in Sources */, + EDC2C9D01A1AA50D00942777 /* ArrayRepId.m in Sources */, + EDC2C9D11A1AA50D00942777 /* FSCollectionInspector.m in Sources */, + EDC2C9D21A1AA50D00942777 /* FSObjectBrowser.m in Sources */, + EDC2C9D31A1AA50D00942777 /* FSObjectBrowserArgumentPanel.m in Sources */, + EDC2C9D41A1AA50D00942777 /* FSObjectBrowserCell.m in Sources */, + EDC2C9D51A1AA50D00942777 /* FSObjectBrowserView.m in Sources */, + EDC2C9D61A1AA50D00942777 /* FSBlock.m in Sources */, + EDC2C9D71A1AA50D00942777 /* BlockInspector.m in Sources */, + EDC2C9D81A1AA50D00942777 /* BlockRep.m in Sources */, + EDC2C9D91A1AA50D00942777 /* BlockStackElem.m in Sources */, + EDC2C9DA1A1AA50D00942777 /* CLIView.m in Sources */, + EDC2C9DB1A1AA50D00942777 /* FSCompilationResult.m in Sources */, + EDC2C9DC1A1AA50D00942777 /* FSObjectInspectorViewController.m in Sources */, + ED8319411A1BFA7400290EE2 /* FSObjectInspectorViewController+NonArc.m in Sources */, + EDC2C9DD1A1AA50D00942777 /* CompiledCodeNode.m in Sources */, + EDC2C9DE1A1AA50D00942777 /* FSCompiler.m in Sources */, + EDC2C9DF1A1AA50D00942777 /* FSConstantsInitialization.m in Sources */, + EDC2C9E01A1AA50D00942777 /* FSExecEngine.m in Sources */, + EDC2C9E11A1AA50D00942777 /* FSExecutor.m in Sources */, + EDC2C9E21A1AA50D00942777 /* FSFlight.m in Sources */, + EDC2C9E41A1AA50D00942777 /* FSArchiver.m in Sources */, + EDC2C9E51A1AA50D00942777 /* FSBoolean.m in Sources */, + EDC2C9E61A1AA50D00942777 /* FScriptFunctions.m in Sources */, + EDC2C9E71A1AA50D00942777 /* FScriptTextView.m in Sources */, + EDC2C9E81A1AA50D00942777 /* FSInterpreter.m in Sources */, + EDC2C9E91A1AA50D00942777 /* FSInterpreterResult.m in Sources */, + EDC2C9EA1A1AA50D00942777 /* FSInterpreterView.m in Sources */, + EDC2C9EB1A1AA50D00942777 /* FSNSArray.m in Sources */, + EDC2C9EC1A1AA50D00942777 /* FSNSDate.m in Sources */, + EDC2C9ED1A1AA50D00942777 /* FSNSDictionary.m in Sources */, + EDC2C9EE1A1AA50D00942777 /* FSNSDistantObject.m in Sources */, + EDC2C9EF1A1AA50D00942777 /* FSNSMutableString.m in Sources */, + EDC2C9F11A1AA50D00942777 /* FSNSNumber.m in Sources */, + EDC2C9F21A1AA50D00942777 /* FSNSObject.m in Sources */, + EDC2C9F31A1AA50D00942777 /* FSNSProxy.m in Sources */, + EDC2C9F41A1AA50D00942777 /* FSPattern.m in Sources */, + EDC2C9F51A1AA50D00942777 /* FSUnarchiver.m in Sources */, + EDC2C9F61A1AA50D00942777 /* FSVoid.m in Sources */, + EDC2C9F71A1AA50D00942777 /* FSGenericObjectInspector.m in Sources */, + EDC2C9F81A1AA50D00942777 /* KTestManager.m in Sources */, + EDC2C9F91A1AA50D00942777 /* FSMiscTools.m in Sources */, + EDC2C9FA1A1AA50D00942777 /* FSMsgContext.m in Sources */, + EDC2C9FB1A1AA50D00942777 /* FSNewlyAllocatedObjectHolder.m in Sources */, + EDC2C9FC1A1AA50D00942777 /* FSNumber.m in Sources */, + EDC2C9FD1A1AA50D00942777 /* FSPilot.m in Sources */, + EDC2C9FE1A1AA50D00942777 /* MessagePatternCodeNode.m in Sources */, + EDC2C9FF1A1AA50D00942777 /* FSReplacementForCoderForClass.m in Sources */, + EDC2CA001A1AA50D00942777 /* ShellView.m in Sources */, + EDC2CA011A1AA50D00942777 /* Space.m in Sources */, + EDC2CA021A1AA50D00942777 /* FSCommandHistory.m in Sources */, + EDC2CA031A1AA50D00942777 /* FSSystem.m in Sources */, + EDC2CA041A1AA50D00942777 /* FSObjectEnumInfo.m in Sources */, + EDC2CA051A1AA50D00942777 /* DOTest.m in Sources */, + ED68BE5D1A35E94B00968430 /* FSObjectBrowserWindow.m in Sources */, + EDC2CA061A1AA50D00942777 /* FSNSProtocolChecker.m in Sources */, + EDC2CA071A1AA50D00942777 /* fs_main.m in Sources */, + EDC2CA081A1AA50D00942777 /* FScriptAppController.m in Sources */, + EDC2CA091A1AA50D00942777 /* FSObjectBrowserToolbar.m in Sources */, + EDC2CA0A1A1AA50D00942777 /* FSEvalCommand.m in Sources */, + EDC2CA0B1A1AA50D00942777 /* FSServicesProvider.m in Sources */, + EDC2CA0C1A1AA50D00942777 /* FSTask.m in Sources */, + EDC2CA0D1A1AA50D00942777 /* FSObjectBrowserToolbarButton.m in Sources */, + EDC2CA0E1A1AA50D00942777 /* FSObjectBrowserButtonsInspector.m in Sources */, + EDC2CA0F1A1AA50D00942777 /* FSObjectBrowserButtonCtxBlock.m in Sources */, + EDC2CA101A1AA50D00942777 /* DOCustom.m in Sources */, + EDC2CA111A1AA50D00942777 /* Pointer.m in Sources */, + EDC2CA121A1AA50D00942777 /* FSIdentifierFormatter.m in Sources */, + EDC2CA131A1AA50D00942777 /* FSObjectFormatter.m in Sources */, + EDC2CA141A1AA50D00942777 /* FSKeyedUnarchiver.m in Sources */, + EDC2CA151A1AA50D00942777 /* FSKeyedArchiver.m in Sources */, + EDC2CA161A1AA50D00942777 /* FSObjectInspectorViewModelItem.m in Sources */, + EDC2CA171A1AA50D00942777 /* FSConstantListBuilder.m in Sources */, + EDC2CA181A1AA50D00942777 /* FSImageInspector.m in Sources */, + EDC2CA191A1AA50D00942777 /* FSNSImage.m in Sources */, + ED3CB64F1A1E5B3300771077 /* FSColorWell.m in Sources */, + EDC2CA1A1A1AA50D00942777 /* FSDetailedObjectInspector.m in Sources */, + EDC2CA1B1A1AA50D00942777 /* FSObjectBrowserToolbarItem.m in Sources */, + EDC2CA1C1A1AA50D00942777 /* FSArrayEnumerator.m in Sources */, + EDC2CA1D1A1AA50D00942777 /* FSNSMutableArray.m in Sources */, + EDC2CA1E1A1AA50D00942777 /* ArrayRepBoolean.m in Sources */, + EDC2CA1F1A1AA50D00942777 /* FSNSValue.m in Sources */, + EDC2CA201A1AA50D00942777 /* FSReplacementForCoderForNilInArray.m in Sources */, + EDC2CA211A1AA50D00942777 /* FSNamedNumber.m in Sources */, + EDC2CA221A1AA50D00942777 /* FSCollectionInspectorTableView.m in Sources */, + EDC2CA231A1AA50D00942777 /* FSNSSet.m in Sources */, + EDC2CA241A1AA50D00942777 /* FSAttributedStringInspector.m in Sources */, + EDC2CA251A1AA50D00942777 /* FSNSAttributedString.m in Sources */, + EDC2CA261A1AA50D00942777 /* FScriptMenuItem.m in Sources */, + EDC2CA271A1AA50D00942777 /* FSNSFont.m in Sources */, + EDC2CA281A1AA50D00942777 /* FSObjectBrowserMatrix.m in Sources */, + EDC2CA291A1AA50D00942777 /* FSNSString.m in Sources */, + EDC2CA2A1A1AA50D00942777 /* FSObjectInspectorBackgroundView.m in Sources */, + EDC2CA2B1A1AA50D00942777 /* FSSymbolTable.m in Sources */, + EDC2CA2C1A1AA50D00942777 /* TestFS.m in Sources */, + EDC2CA2D1A1AA50D00942777 /* FSObjectBrowserViewObjectInfo.m in Sources */, + EDC2CA2E1A1AA50D00942777 /* FSCollectionInspectorView.m in Sources */, + EDC2CA2F1A1AA50D00942777 /* ArrayRepFetchRequest.m in Sources */, + EDC2CA301A1AA50D00942777 /* FSPointer.m in Sources */, + EDC2CA311A1AA50D00942777 /* FSGenericPointer.m in Sources */, + EDC2CA321A1AA50D00942777 /* FSObjectPointer.m in Sources */, + EDC2CA331A1AA50D00942777 /* FSManagedObjectContextInspector.m in Sources */, + EDC2CA341A1AA50D00942777 /* FSObjectBrowserNamedObjectWrapper.m in Sources */, + EDC2CA351A1AA50D00942777 /* FSInspectorUniquier.m in Sources */, + EDC2CA361A1AA50D00942777 /* FSPredicateTextView.m in Sources */, + EDC2CA371A1AA50D00942777 /* FSCoreDataSample.m in Sources */, + EDC2CA381A1AA50D00942777 /* FSNSManagedObjectContext.m in Sources */, + EDC2CA391A1AA50D00942777 /* FSObjectBrowserSearchField.m in Sources */, + EDC2CA3A1A1AA50D00942777 /* FSBlockCompilationResult.m in Sources */, + EDC2CA3B1A1AA50D00942777 /* FSReturnSignal.m in Sources */, + EDC2CA3C1A1AA50D00942777 /* FSConstantsDictionaryGenerator.m in Sources */, + EDC2CA3D1A1AA50D00942777 /* FSQTMovie.m in Sources */, + EDC2CA3E1A1AA50D00942777 /* FSMovieInspector.m in Sources */, + EDC2CA3F1A1AA50D00942777 /* FSMethod.m in Sources */, + EDC2CA401A1AA50D00942777 /* FSCNClassDefinition.m in Sources */, + EDC2CA411A1AA50D00942777 /* FSCNBase.m in Sources */, + EDC2CA421A1AA50D00942777 /* FSCNIdentifier.m in Sources */, + EDC2CA431A1AA50D00942777 /* FSTestObjCClass1.m in Sources */, + EDC2CA451A1AA50D00942777 /* FSTestObjCClass2.m in Sources */, + EDC2CA461A1AA50D00942777 /* FSCNCategory.m in Sources */, + EDC2CA471A1AA50D00942777 /* FSCNMessage.m in Sources */, + EDA6AC651A1F52E6001CD1F2 /* FSObjectInspectorOptionsViewController.m in Sources */, + EDC2CA481A1AA50D00942777 /* FSCNSuper.m in Sources */, + EDC2CA491A1AA50D00942777 /* FSCNUnaryMessage.m in Sources */, + EDC2CA4A1A1AA50D00942777 /* FSCNBinaryMessage.m in Sources */, + EDC2CA4B1A1AA50D00942777 /* FSCNKeywordMessage.m in Sources */, + EDC2CA4C1A1AA50D00942777 /* FSCNCascade.m in Sources */, + EDC2CA4D1A1AA50D00942777 /* FSCNStatementList.m in Sources */, + EDC2CA4E1A1AA50D00942777 /* FSCNPrecomputedObject.m in Sources */, + EDC2CA4F1A1AA50D00942777 /* FSCNArray.m in Sources */, + EDA6AC4F1A1F407C001CD1F2 /* FSObjectInspectorOutlineView.m in Sources */, + EDC2CA501A1AA50D00942777 /* FSCNBlock.m in Sources */, + EDC2CA511A1AA50D00942777 /* FSCNAssignment.m in Sources */, + EDC2CA521A1AA50D00942777 /* FSCNMethod.m in Sources */, + EDC2CA531A1AA50D00942777 /* FSCNReturn.m in Sources */, + EDC2CA541A1AA50D00942777 /* FSClassDefinition.m in Sources */, + EDC2CA551A1AA50D00942777 /* FSTranscript.m in Sources */, + EDC2CA561A1AA50D00942777 /* FSArray.m in Sources */, + EDC2CA571A1AA50D00942777 /* Array.m in Sources */, + EDC2CA581A1AA50D00942777 /* Block.m in Sources */, + EDC2CA591A1AA50D00942777 /* Number.m in Sources */, + EDC2CA5A1A1AA50D00942777 /* FSGlobalScope.m in Sources */, + ED83192C1A1BC2B500290EE2 /* FSUtils.m in Sources */, + EDC2CA5B1A1AA50D00942777 /* FSNSFileHandle.m in Sources */, + EDC2CA5C1A1AA50D00942777 /* FSAssociation.m in Sources */, + EDC2CA5D1A1AA50D00942777 /* FSCNDictionary.m in Sources */, + EDC2CA5E1A1AA50D00942777 /* FSObjectBrowserBottomBarTextDisplay.m in Sources */, + EDC2CA5F1A1AA50D00942777 /* FSNSAffineTransform.m in Sources */, + EDC2CA601A1AA50D00942777 /* FSDemoAssistant.m in Sources */, + EDC2CA611A1AA50D00942777 /* FSNewlyAllocatedObject.m in Sources */, + EDC2CA621A1AA50D00942777 /* FSWorksWhenModalWindow.m in Sources */, + EDC2CA631A1AA50D00942777 /* FSNSMutableDictionary.m in Sources */, ); runOnlyForDeploymentPostprocessing = 0; }; - E29F5E5C19FD94FC00AD90CF /* Sources */ = { + EDC2CB8F1A1AA52500942777 /* Sources */ = { isa = PBXSourcesBuildPhase; buildActionMask = 2147483647; files = ( - E29F5E5D19FD94FC00AD90CF /* FSAirplane.m in Sources */, - E29F5E5E19FD94FC00AD90CF /* ArrayRepDouble.m in Sources */, - E29F5E5F19FD94FC00AD90CF /* ArrayRepEmpty.m in Sources */, - E29F5E6019FD94FC00AD90CF /* ArrayRepId.m in Sources */, - E29F5E6119FD94FC00AD90CF /* FSCollectionInspector.m in Sources */, - E29F5E6219FD94FC00AD90CF /* FSObjectBrowser.m in Sources */, - E29F5E6319FD94FC00AD90CF /* FSObjectBrowserCell.m in Sources */, - E29F5E6419FD94FC00AD90CF /* FSBlock.m in Sources */, - E29F5E6519FD94FC00AD90CF /* BlockInspector.m in Sources */, - E29F5E6619FD94FC00AD90CF /* BlockRep.m in Sources */, - E29F5E6719FD94FC00AD90CF /* BlockStackElem.m in Sources */, - E29F5E6819FD94FC00AD90CF /* CLIView.m in Sources */, - E29F5E6919FD94FC00AD90CF /* FSCompilationResult.m in Sources */, - E29F5E6A19FD94FC00AD90CF /* CompiledCodeNode.m in Sources */, - E29F5E6B19FD94FC00AD90CF /* FSCompiler.m in Sources */, - E29F5E6C19FD94FC00AD90CF /* FSConstantsInitialization.m in Sources */, - E29F5E6D19FD94FC00AD90CF /* FSExecEngine.m in Sources */, - E29F5E6E19FD94FC00AD90CF /* FSExecutor.m in Sources */, - E29F5E6F19FD94FC00AD90CF /* FSFlight.m in Sources */, - E29F5E7019FD94FC00AD90CF /* FSArchiver.m in Sources */, - E29F5E7119FD94FC00AD90CF /* FSBoolean.m in Sources */, - E29F5E7219FD94FC00AD90CF /* FScriptFunctions.m in Sources */, - E29F5E7319FD94FC00AD90CF /* FSInterpreter.m in Sources */, - E29F5E7419FD94FC00AD90CF /* FSInterpreterResult.m in Sources */, - E29F5E7519FD94FC00AD90CF /* FSInterpreterView.m in Sources */, - E29F5E7619FD94FC00AD90CF /* FSNSArray.m in Sources */, - E29F5E7719FD94FC00AD90CF /* FSNSDate.m in Sources */, - E29F5E7819FD94FC00AD90CF /* FSNSDictionary.m in Sources */, - E29F5E7919FD94FC00AD90CF /* FSNSMutableString.m in Sources */, - E29F5E7A19FD94FC00AD90CF /* FSNSNumber.m in Sources */, - E29F5E7B19FD94FC00AD90CF /* FSNSObject.m in Sources */, - E29F5E7C19FD94FC00AD90CF /* FSNSProxy.m in Sources */, - E29F5E7D19FD94FC00AD90CF /* FSNSString.m in Sources */, - E29F5E7E19FD94FC00AD90CF /* FSPattern.m in Sources */, - E29F5E7F19FD94FC00AD90CF /* FSUnarchiver.m in Sources */, - E29F5E8019FD94FC00AD90CF /* FSVoid.m in Sources */, - E29F5E8119FD94FC00AD90CF /* FSGenericObjectInspector.m in Sources */, - E29F5E8219FD94FC00AD90CF /* MessagePatternCodeNode.m in Sources */, - E29F5E8319FD94FC00AD90CF /* FSMiscTools.m in Sources */, - E29F5E8419FD94FC00AD90CF /* FSMsgContext.m in Sources */, - E29F5E8519FD94FC00AD90CF /* FSNewlyAllocatedObjectHolder.m in Sources */, - E29F5E8619FD94FC00AD90CF /* FSNumber.m in Sources */, - E29F5E8719FD94FC00AD90CF /* FSPilot.m in Sources */, - E29F5E8819FD94FC00AD90CF /* FSReplacementForCoderForClass.m in Sources */, - E29F5E8919FD94FC00AD90CF /* ShellView.m in Sources */, - E29F5E8A19FD94FC00AD90CF /* Space.m in Sources */, - E29F5E8B19FD94FC00AD90CF /* FSCommandHistory.m in Sources */, - E29F5E8C19FD94FC00AD90CF /* FSSystem.m in Sources */, - E29F5E8D19FD94FC00AD90CF /* KTestManager.m in Sources */, - E29F5E8E19FD94FC00AD90CF /* FSNSDistantObject.m in Sources */, - E29F5E8F19FD94FC00AD90CF /* DOTest.m in Sources */, - E29F5E9019FD94FC00AD90CF /* FScriptTextView.m in Sources */, - E29F5E9119FD94FC00AD90CF /* FSObjectBrowserArgumentPanel.m in Sources */, - E29F5E9219FD94FC00AD90CF /* FSNSProtocolChecker.m in Sources */, - E29F5E9319FD94FC00AD90CF /* FSObjectBrowserToolbar.m in Sources */, - E29F5E9419FD94FC00AD90CF /* FSEvalCommand.m in Sources */, - E29F5E9519FD94FC00AD90CF /* FSServicesProvider.m in Sources */, - E29F5E9619FD94FC00AD90CF /* FSTask.m in Sources */, - E29F5E9719FD94FC00AD90CF /* FSObjectBrowserToolbarButton.m in Sources */, - E29F5E9819FD94FC00AD90CF /* FSObjectBrowserButtonCtxBlock.m in Sources */, - E29F5E9919FD94FC00AD90CF /* FSObjectBrowserButtonsInspector.m in Sources */, - E29F5E9A19FD94FC00AD90CF /* FSObjectBrowserView.m in Sources */, - E29F5E9B19FD94FC00AD90CF /* Pointer.m in Sources */, - E29F5E9C19FD94FC00AD90CF /* FSObjectFormatter.m in Sources */, - E29F5E9D19FD94FC00AD90CF /* FSIdentifierFormatter.m in Sources */, - E29F5E9E19FD94FC00AD90CF /* FSKeyedUnarchiver.m in Sources */, - E29F5E9F19FD94FC00AD90CF /* FSKeyedArchiver.m in Sources */, - E29F5EA019FD94FC00AD90CF /* FSConstantListBuilder.m in Sources */, - E29F5EA119FD94FC00AD90CF /* FSImageInspector.m in Sources */, - E29F5EA219FD94FC00AD90CF /* FSNSImage.m in Sources */, - E29F5EA319FD94FC00AD90CF /* FSObjectBrowserToolbarItem.m in Sources */, - E29F5EA419FD94FC00AD90CF /* ArrayRepBoolean.m in Sources */, - E29F5EA519FD94FC00AD90CF /* FSArrayEnumerator.m in Sources */, - E29F5EA619FD94FC00AD90CF /* FSNSMutableArray.m in Sources */, - E29F5EA719FD94FC00AD90CF /* FSNSValue.m in Sources */, - E29F5EA819FD94FC00AD90CF /* FSReplacementForCoderForNilInArray.m in Sources */, - E29F5EA919FD94FC00AD90CF /* FSNamedNumber.m in Sources */, - E29F5EAA19FD94FC00AD90CF /* FSCollectionInspectorTableView.m in Sources */, - E29F5EAB19FD94FC00AD90CF /* FSNSSet.m in Sources */, - E29F5EAC19FD94FC00AD90CF /* FSAttributedStringInspector.m in Sources */, - E29F5EAD19FD94FC00AD90CF /* FSNSAttributedString.m in Sources */, - E29F5EAE19FD94FC00AD90CF /* FScriptMenuItem.m in Sources */, - E29F5EAF19FD94FC00AD90CF /* FSNSFont.m in Sources */, - E29F5EB019FD94FC00AD90CF /* FSObjectBrowserMatrix.m in Sources */, - E29F5EB119FD94FC00AD90CF /* FSSymbolTable.m in Sources */, - E29F5EB219FD94FC00AD90CF /* FSObjectBrowserViewObjectInfo.m in Sources */, - E29F5EB319FD94FC00AD90CF /* FSCollectionInspectorView.m in Sources */, - E29F5EB419FD94FC00AD90CF /* ArrayRepFetchRequest.m in Sources */, - E29F5EB519FD94FC00AD90CF /* FSPointer.m in Sources */, - E29F5EB619FD94FC00AD90CF /* FSGenericPointer.m in Sources */, - E29F5EB719FD94FC00AD90CF /* FSObjectPointer.m in Sources */, - E29F5EB819FD94FC00AD90CF /* FSObjectBrowserNamedObjectWrapper.m in Sources */, - E29F5EB919FD94FC00AD90CF /* FSInspectorUniquier.m in Sources */, - E29F5EBA19FD94FC00AD90CF /* FSPredicateTextView.m in Sources */, - E29F5EBB19FD94FC00AD90CF /* FSCoreDataSample.m in Sources */, - E29F5EBC19FD94FC00AD90CF /* FSManagedObjectContextInspector.m in Sources */, - E29F5EBD19FD94FC00AD90CF /* FSNSManagedObjectContext.m in Sources */, - E29F5EBE19FD94FC00AD90CF /* FSObjectBrowserSearchField.m in Sources */, - E29F5EBF19FD94FC00AD90CF /* FSBlockCompilationResult.m in Sources */, - E29F5EC019FD94FC00AD90CF /* FSReturnSignal.m in Sources */, - E29F5EC119FD94FC00AD90CF /* FSMovieInspector.m in Sources */, - E29F5EC219FD94FC00AD90CF /* FSMethod.m in Sources */, - E29F5EC319FD94FC00AD90CF /* FSCNClassDefinition.m in Sources */, - E29F5EC419FD94FC00AD90CF /* FSCNBase.m in Sources */, - E29F5EC519FD94FC00AD90CF /* FSCNIdentifier.m in Sources */, - E29F5EC619FD94FC00AD90CF /* FSTestObjCClass1.m in Sources */, - E29F5EC719FD94FC00AD90CF /* FSTestObjCClass2.m in Sources */, - E29F5EC819FD94FC00AD90CF /* FSCNCategory.m in Sources */, - E29F5EC919FD94FC00AD90CF /* FSCNMessage.m in Sources */, - E29F5ECA19FD94FC00AD90CF /* FSCNSuper.m in Sources */, - E29F5ECB19FD94FC00AD90CF /* FSCNUnaryMessage.m in Sources */, - E29F5ECC19FD94FC00AD90CF /* FSCNBinaryMessage.m in Sources */, - E29F5ECD19FD94FC00AD90CF /* FSCNKeywordMessage.m in Sources */, - E29F5ECE19FD94FC00AD90CF /* FSCNCascade.m in Sources */, - E29F5ECF19FD94FC00AD90CF /* FSCNStatementList.m in Sources */, - E29F5ED019FD94FC00AD90CF /* FSCNPrecomputedObject.m in Sources */, - E29F5ED119FD94FC00AD90CF /* FSCNArray.m in Sources */, - E29F5ED219FD94FC00AD90CF /* FSCNBlock.m in Sources */, - E29F5ED319FD94FC00AD90CF /* FSCNAssignment.m in Sources */, - E29F5ED419FD94FC00AD90CF /* FSCNMethod.m in Sources */, - E29F5ED519FD94FC00AD90CF /* FSCNReturn.m in Sources */, - E29F5ED619FD94FC00AD90CF /* FSClassDefinition.m in Sources */, - E29F5ED719FD94FC00AD90CF /* FSTranscript.m in Sources */, - E29F5ED819FD94FC00AD90CF /* FSArray.m in Sources */, - E29F5ED919FD94FC00AD90CF /* Array.m in Sources */, - E29F5EDA19FD94FC00AD90CF /* Block.m in Sources */, - E29F5EDB19FD94FC00AD90CF /* Number.m in Sources */, - E29F5EDC19FD94FC00AD90CF /* FSGlobalScope.m in Sources */, - E29F5EDD19FD94FC00AD90CF /* FSNSFileHandle.m in Sources */, - E29F5EDE19FD94FC00AD90CF /* FSAssociation.m in Sources */, - E29F5EDF19FD94FC00AD90CF /* FSCNDictionary.m in Sources */, - E29F5EE019FD94FC00AD90CF /* FSObjectBrowserBottomBarTextDisplay.m in Sources */, - E29F5EE119FD94FC00AD90CF /* FSNSAffineTransform.m in Sources */, - E29F5EE219FD94FC00AD90CF /* FSNewlyAllocatedObject.m in Sources */, - E29F5EE319FD94FC00AD90CF /* FSWorksWhenModalWindow.m in Sources */, - E29F5EE419FD94FC00AD90CF /* FSNSMutableDictionary.m in Sources */, + EDC2CB901A1AA52500942777 /* FSAirplane.m in Sources */, + EDC2CB911A1AA52500942777 /* ArrayRepDouble.m in Sources */, + EDC2CB921A1AA52500942777 /* ArrayRepEmpty.m in Sources */, + EDC2CB931A1AA52500942777 /* ArrayRepId.m in Sources */, + EDC2CB941A1AA52500942777 /* FSCollectionInspector.m in Sources */, + EDC2CB951A1AA52500942777 /* FSObjectBrowser.m in Sources */, + EDC2CB961A1AA52500942777 /* FSObjectBrowserCell.m in Sources */, + EDC2CB971A1AA52500942777 /* FSBlock.m in Sources */, + EDC2CB981A1AA52500942777 /* BlockInspector.m in Sources */, + EDC2CB991A1AA52500942777 /* BlockRep.m in Sources */, + EDC2CB9A1A1AA52500942777 /* BlockStackElem.m in Sources */, + EDC2CB9B1A1AA52500942777 /* CLIView.m in Sources */, + EDC2CB9C1A1AA52500942777 /* FSCompilationResult.m in Sources */, + EDC2CB9D1A1AA52500942777 /* CompiledCodeNode.m in Sources */, + EDC2CB9E1A1AA52500942777 /* FSCompiler.m in Sources */, + EDC2CB9F1A1AA52500942777 /* FSConstantsInitialization.m in Sources */, + EDC2CBA11A1AA52500942777 /* FSExecEngine.m in Sources */, + EDC2CBA21A1AA52500942777 /* FSExecutor.m in Sources */, + EDC2CBA31A1AA52500942777 /* FSFlight.m in Sources */, + EDC2CBA41A1AA52500942777 /* FSArchiver.m in Sources */, + EDC2CBA51A1AA52500942777 /* FSBoolean.m in Sources */, + EDC2CBA61A1AA52500942777 /* FSObjectInspectorViewModelItem.m in Sources */, + EDC2CBA71A1AA52500942777 /* FScriptFunctions.m in Sources */, + EDC2CBA81A1AA52500942777 /* FSDetailedObjectInspector.m in Sources */, + EDC2CBA91A1AA52500942777 /* FSInterpreter.m in Sources */, + EDC2CBAA1A1AA52500942777 /* FSInterpreterResult.m in Sources */, + EDC2CBAB1A1AA52500942777 /* FSInterpreterView.m in Sources */, + EDC2CBAC1A1AA52500942777 /* FSNSArray.m in Sources */, + ED3CB6521A1E5B9100771077 /* FSColorWell.m in Sources */, + EDC2CBAD1A1AA52500942777 /* FSNSDate.m in Sources */, + EDC2CBAE1A1AA52500942777 /* FSNSDictionary.m in Sources */, + EDC2CBB01A1AA52500942777 /* FSNSMutableString.m in Sources */, + EDC2CBB11A1AA52500942777 /* FSNSNumber.m in Sources */, + EDC2CBB21A1AA52500942777 /* FSNSObject.m in Sources */, + EDC2CBB31A1AA52500942777 /* FSNSProxy.m in Sources */, + EDC2CBB41A1AA52500942777 /* FSNSString.m in Sources */, + EDC2CBB51A1AA52500942777 /* FSPattern.m in Sources */, + EDC2CBB61A1AA52500942777 /* FSUnarchiver.m in Sources */, + EDC2CBB71A1AA52500942777 /* FSVoid.m in Sources */, + EDC2CBB81A1AA52500942777 /* FSGenericObjectInspector.m in Sources */, + EDC2CBB91A1AA52500942777 /* MessagePatternCodeNode.m in Sources */, + EDC2CBBA1A1AA52500942777 /* FSMiscTools.m in Sources */, + EDC2CBBB1A1AA52500942777 /* FSMsgContext.m in Sources */, + EDC2CBBC1A1AA52500942777 /* FSNewlyAllocatedObjectHolder.m in Sources */, + EDC2CBBD1A1AA52500942777 /* FSNumber.m in Sources */, + EDC2CBBE1A1AA52500942777 /* FSPilot.m in Sources */, + EDC2CBBF1A1AA52500942777 /* FSReplacementForCoderForClass.m in Sources */, + EDC2CBC01A1AA52500942777 /* ShellView.m in Sources */, + EDC2CBC11A1AA52500942777 /* Space.m in Sources */, + EDC2CBC21A1AA52500942777 /* FSCommandHistory.m in Sources */, + EDC2CBC31A1AA52500942777 /* FSSystem.m in Sources */, + EDC2CBC41A1AA52500942777 /* KTestManager.m in Sources */, + EDC2CBC51A1AA52500942777 /* FSNSDistantObject.m in Sources */, + EDC2CBC61A1AA52500942777 /* DOTest.m in Sources */, + EDC2CBC71A1AA52500942777 /* FScriptTextView.m in Sources */, + EDC2CBC81A1AA52500942777 /* FSObjectBrowserArgumentPanel.m in Sources */, + EDC2CBC91A1AA52500942777 /* FSNSProtocolChecker.m in Sources */, + EDC2CBCA1A1AA52500942777 /* FSObjectBrowserToolbar.m in Sources */, + EDC2CBCB1A1AA52500942777 /* FSEvalCommand.m in Sources */, + EDC2CBCC1A1AA52500942777 /* FSServicesProvider.m in Sources */, + EDC2CBCD1A1AA52500942777 /* FSTask.m in Sources */, + EDC2CBCE1A1AA52500942777 /* FSObjectBrowserToolbarButton.m in Sources */, + EDC2CBCF1A1AA52500942777 /* FSObjectBrowserButtonCtxBlock.m in Sources */, + EDC2CBD01A1AA52500942777 /* FSObjectBrowserButtonsInspector.m in Sources */, + EDC2CBD11A1AA52500942777 /* FSObjectBrowserView.m in Sources */, + EDC2CBD21A1AA52500942777 /* Pointer.m in Sources */, + EDC2CBD31A1AA52500942777 /* FSObjectFormatter.m in Sources */, + EDC2CBD41A1AA52500942777 /* FSIdentifierFormatter.m in Sources */, + EDC2CBD51A1AA52500942777 /* FSKeyedUnarchiver.m in Sources */, + EDC2CBD61A1AA52500942777 /* FSKeyedArchiver.m in Sources */, + ED68BE5E1A35E94B00968430 /* FSObjectBrowserWindow.m in Sources */, + EDC2CBD71A1AA52500942777 /* FSConstantListBuilder.m in Sources */, + EDC2CBD81A1AA52500942777 /* FSImageInspector.m in Sources */, + EDC2CBD91A1AA52500942777 /* FSNSImage.m in Sources */, + EDC2CBDA1A1AA52500942777 /* FSObjectBrowserToolbarItem.m in Sources */, + EDC2CBDB1A1AA52500942777 /* ArrayRepBoolean.m in Sources */, + EDC2CBDC1A1AA52500942777 /* FSArrayEnumerator.m in Sources */, + EDC2CBDD1A1AA52500942777 /* FSNSMutableArray.m in Sources */, + EDC2CBDE1A1AA52500942777 /* FSNSValue.m in Sources */, + EDC2CBDF1A1AA52500942777 /* FSReplacementForCoderForNilInArray.m in Sources */, + EDC2CBE01A1AA52500942777 /* FSNamedNumber.m in Sources */, + ED8319421A1BFA7400290EE2 /* FSObjectInspectorViewController+NonArc.m in Sources */, + EDC2CBE11A1AA52500942777 /* FSCollectionInspectorTableView.m in Sources */, + EDC2CBE21A1AA52500942777 /* FSNSSet.m in Sources */, + EDC2CBE31A1AA52500942777 /* FSAttributedStringInspector.m in Sources */, + EDC2CBE41A1AA52500942777 /* FSNSAttributedString.m in Sources */, + EDC2CBE51A1AA52500942777 /* FScriptMenuItem.m in Sources */, + ED83192D1A1BC2B500290EE2 /* FSUtils.m in Sources */, + EDC2CBE61A1AA52500942777 /* FSNSFont.m in Sources */, + EDC2CBE71A1AA52500942777 /* FSObjectBrowserMatrix.m in Sources */, + EDC2CBE81A1AA52500942777 /* FSSymbolTable.m in Sources */, + EDC2CBE91A1AA52500942777 /* FSObjectBrowserViewObjectInfo.m in Sources */, + EDC2CBEA1A1AA52500942777 /* FSCollectionInspectorView.m in Sources */, + EDC2CBEB1A1AA52500942777 /* ArrayRepFetchRequest.m in Sources */, + EDA6AC501A1F407C001CD1F2 /* FSObjectInspectorOutlineView.m in Sources */, + EDC2CBED1A1AA52500942777 /* FSPointer.m in Sources */, + EDC2CBEE1A1AA52500942777 /* FSGenericPointer.m in Sources */, + EDC2CBEF1A1AA52500942777 /* FSObjectPointer.m in Sources */, + EDC2CBF01A1AA52500942777 /* FSObjectBrowserNamedObjectWrapper.m in Sources */, + EDC2CBF11A1AA52500942777 /* FSInspectorUniquier.m in Sources */, + EDC2CBF21A1AA52500942777 /* FSPredicateTextView.m in Sources */, + EDC2CBF31A1AA52500942777 /* FSCoreDataSample.m in Sources */, + EDC2CBF41A1AA52500942777 /* FSManagedObjectContextInspector.m in Sources */, + EDC2CBF51A1AA52500942777 /* FSNSManagedObjectContext.m in Sources */, + EDC2CBF61A1AA52500942777 /* FSObjectBrowserSearchField.m in Sources */, + EDC2CBF71A1AA52500942777 /* FSBlockCompilationResult.m in Sources */, + EDC2CBF81A1AA52500942777 /* FSReturnSignal.m in Sources */, + EDC2CBF91A1AA52500942777 /* FSMovieInspector.m in Sources */, + EDC2CBFA1A1AA52500942777 /* FSMethod.m in Sources */, + EDC2CBFB1A1AA52500942777 /* FSCNClassDefinition.m in Sources */, + EDC2CBFC1A1AA52500942777 /* FSCNBase.m in Sources */, + EDC2CBFD1A1AA52500942777 /* FSCNIdentifier.m in Sources */, + EDC2CBFE1A1AA52500942777 /* FSObjectEnumInfo.m in Sources */, + EDC2CBFF1A1AA52500942777 /* FSTestObjCClass1.m in Sources */, + EDC2CC001A1AA52500942777 /* FSTestObjCClass2.m in Sources */, + EDC2CC011A1AA52500942777 /* FSCNCategory.m in Sources */, + EDC2CC021A1AA52500942777 /* FSCNMessage.m in Sources */, + EDC2CC031A1AA52500942777 /* FSCNSuper.m in Sources */, + EDC2CC041A1AA52500942777 /* FSCNUnaryMessage.m in Sources */, + EDC2CC051A1AA52500942777 /* FSCNBinaryMessage.m in Sources */, + EDC2CC061A1AA52500942777 /* FSCNKeywordMessage.m in Sources */, + EDC2CC071A1AA52500942777 /* FSCNCascade.m in Sources */, + EDC2CC081A1AA52500942777 /* FSCNStatementList.m in Sources */, + EDC2CC091A1AA52500942777 /* FSCNPrecomputedObject.m in Sources */, + EDC2CC0A1A1AA52500942777 /* FSCNArray.m in Sources */, + EDC2CC0B1A1AA52500942777 /* FSCNBlock.m in Sources */, + EDC2CC0C1A1AA52500942777 /* FSCNAssignment.m in Sources */, + EDA6AC661A1F52E6001CD1F2 /* FSObjectInspectorOptionsViewController.m in Sources */, + EDC2CC0D1A1AA52500942777 /* FSObjectInspectorViewController.m in Sources */, + EDC2CC0E1A1AA52500942777 /* FSCNMethod.m in Sources */, + EDC2CC0F1A1AA52500942777 /* FSCNReturn.m in Sources */, + EDC2CC101A1AA52500942777 /* FSClassDefinition.m in Sources */, + EDC2CC111A1AA52500942777 /* FSTranscript.m in Sources */, + EDC2CC121A1AA52500942777 /* FSArray.m in Sources */, + EDC2CC131A1AA52500942777 /* Array.m in Sources */, + EDC2CC141A1AA52500942777 /* Block.m in Sources */, + EDC2CC151A1AA52500942777 /* Number.m in Sources */, + EDC2CC161A1AA52500942777 /* FSGlobalScope.m in Sources */, + EDC2CC171A1AA52500942777 /* FSNSFileHandle.m in Sources */, + EDC2CC181A1AA52500942777 /* FSAssociation.m in Sources */, + EDC2CC191A1AA52500942777 /* FSCNDictionary.m in Sources */, + EDC2CC1A1A1AA52500942777 /* FSObjectInspectorBackgroundView.m in Sources */, + EDC2CC1B1A1AA52500942777 /* FSObjectBrowserBottomBarTextDisplay.m in Sources */, + EDC2CC1C1A1AA52500942777 /* FSNSAffineTransform.m in Sources */, + EDC2CC1D1A1AA52500942777 /* FSNewlyAllocatedObject.m in Sources */, + EDC2CC1E1A1AA52500942777 /* FSWorksWhenModalWindow.m in Sources */, + EDC2CC1F1A1AA52500942777 /* FSNSMutableDictionary.m in Sources */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -8763,11 +9185,6 @@ target = 8F6DA8F2055FC71F0050409A /* FScriptFramework 10.7 */; targetProxy = 8F38D0DA0C36ACE0002512EE /* PBXContainerItemProxy */; }; - 8F3C42570E95545800DFD84F /* PBXTargetDependency */ = { - isa = PBXTargetDependency; - target = 8F6DA5DE055FC6980050409A /* FSTest2 */; - targetProxy = 8F3C42560E95545800DFD84F /* PBXContainerItemProxy */; - }; 8FD176B8098C25FB00D0A57D /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = 8F6DA6D8055FC6C80050409A /* FSTest1 */; @@ -8778,58 +9195,22 @@ target = 8F6DA6D8055FC6C80050409A /* FSTest1 */; targetProxy = BA2231A4189FA403002C5B6A /* PBXContainerItemProxy */; }; - BA2231A5189FA403002C5B6A /* PBXTargetDependency */ = { - isa = PBXTargetDependency; - target = 8F6DA5DE055FC6980050409A /* FSTest2 */; - targetProxy = BA2231A6189FA403002C5B6A /* PBXContainerItemProxy */; - }; BA223363189FA412002C5B6A /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = 8F6DA6D8055FC6C80050409A /* FSTest1 */; targetProxy = BA223364189FA412002C5B6A /* PBXContainerItemProxy */; }; - BA223365189FA412002C5B6A /* PBXTargetDependency */ = { - isa = PBXTargetDependency; - target = 8F6DA5DE055FC6980050409A /* FSTest2 */; - targetProxy = BA223366189FA412002C5B6A /* PBXContainerItemProxy */; - }; - E29F5BCD19FD93FD00AD90CF /* PBXTargetDependency */ = { - isa = PBXTargetDependency; - target = 8F6DA6D8055FC6C80050409A /* FSTest1 */; - targetProxy = E29F5BCE19FD93FD00AD90CF /* PBXContainerItemProxy */; - }; - E29F5BCF19FD93FD00AD90CF /* PBXTargetDependency */ = { - isa = PBXTargetDependency; - target = 8F6DA5DE055FC6980050409A /* FSTest2 */; - targetProxy = E29F5BD019FD93FD00AD90CF /* PBXContainerItemProxy */; - }; /* End PBXTargetDependency section */ /* Begin PBXVariantGroup section */ - 8FB524150C2205C20028B297 /* FScriptIBPluginInspector.nib */ = { + 0B7389001B397C4F005BD678 /* fs.xib */ = { isa = PBXVariantGroup; children = ( - 8FB524160C2205C20028B297 /* English */, + 0B7389011B397C4F005BD678 /* English */, ); - name = FScriptIBPluginInspector.nib; + name = fs.xib; sourceTree = ""; }; - 8FB524170C2205C20028B297 /* FScriptIBPluginLibrary.nib */ = { - isa = PBXVariantGroup; - children = ( - 8FB524180C2205C20028B297 /* English */, - ); - name = FScriptIBPluginLibrary.nib; - sourceTree = ""; - }; - F598CDB7025CF7E5011B2E41 /* fs.nib */ = { - isa = PBXVariantGroup; - children = ( - F598CDB8025CF7E5011B2E41 /* English */, - ); - name = fs.nib; - sourceTree = SOURCE_ROOT; - }; /* End PBXVariantGroup section */ /* Begin XCBuildConfiguration section */ @@ -8837,17 +9218,22 @@ isa = XCBuildConfiguration; buildSettings = { COMBINE_HIDPI_IMAGES = YES; + COPY_PHASE_STRIP = "$(value) NO"; DYLIB_COMPATIBILITY_VERSION = 1; + DYLIB_CURRENT_VERSION = 2; + FRAMEWORK_SEARCH_PATHS = ""; FRAMEWORK_VERSION = A; GCC_C_LANGUAGE_STANDARD = gnu99; GCC_DYNAMIC_NO_PIC = NO; GCC_ENABLE_PASCAL_STRINGS = NO; + GCC_GENERATE_DEBUGGING_SYMBOLS = YES; GCC_MODEL_TUNING = ""; GCC_OPTIMIZATION_LEVEL = 0; GCC_WARN_FOUR_CHARACTER_CONSTANTS = NO; GCC_WARN_UNKNOWN_PRAGMAS = NO; - INFOPLIST_FILE = "Info-FScriptFramework.plist"; + INFOPLIST_FILE = "Info-FScriptFramework__Upgraded_.plist"; INSTALL_PATH = "@executable_path/../Frameworks"; + OTHER_CFLAGS = ""; OTHER_LDFLAGS = ( "-lffi", "-weak_framework", @@ -8857,7 +9243,7 @@ OTHER_REZFLAGS = ""; PRINCIPAL_CLASS = ""; PRODUCT_NAME = FScript; - SDKROOT = macosx10.7; + SECTORDER_FLAGS = ""; SKIP_INSTALL = YES; WRAPPER_EXTENSION = framework; ZERO_LINK = NO; @@ -8868,15 +9254,20 @@ isa = XCBuildConfiguration; buildSettings = { COMBINE_HIDPI_IMAGES = YES; + COPY_PHASE_STRIP = YES; DYLIB_COMPATIBILITY_VERSION = 1; + DYLIB_CURRENT_VERSION = 2; + FRAMEWORK_SEARCH_PATHS = ""; FRAMEWORK_VERSION = A; GCC_C_LANGUAGE_STANDARD = gnu99; GCC_ENABLE_PASCAL_STRINGS = NO; + GCC_GENERATE_DEBUGGING_SYMBOLS = NO; GCC_OPTIMIZATION_LEVEL = 3; GCC_WARN_FOUR_CHARACTER_CONSTANTS = NO; GCC_WARN_UNKNOWN_PRAGMAS = NO; - INFOPLIST_FILE = "Info-FScriptFramework.plist"; + INFOPLIST_FILE = "Info-FScriptFramework__Upgraded_.plist"; INSTALL_PATH = "@executable_path/../Frameworks"; + OTHER_CFLAGS = ""; OTHER_LDFLAGS = ( "-lffi", "-weak_framework", @@ -8886,7 +9277,7 @@ OTHER_REZFLAGS = ""; PRINCIPAL_CLASS = ""; PRODUCT_NAME = FScript; - SDKROOT = macosx10.7; + SECTORDER_FLAGS = ""; SKIP_INSTALL = YES; WRAPPER_EXTENSION = framework; ZERO_LINK = NO; @@ -8897,15 +9288,19 @@ isa = XCBuildConfiguration; buildSettings = { COMBINE_HIDPI_IMAGES = YES; + COPY_PHASE_STRIP = "$(value) NO"; GCC_DYNAMIC_NO_PIC = NO; GCC_ENABLE_PASCAL_STRINGS = NO; + GCC_GENERATE_DEBUGGING_SYMBOLS = YES; GCC_MODEL_TUNING = ""; GCC_WARN_FOUR_CHARACTER_CONSTANTS = NO; GCC_WARN_UNKNOWN_PRAGMAS = NO; INFOPLIST_FILE = "Info-FSTest1_2.plist"; OTHER_CFLAGS = ""; + OTHER_LDFLAGS = ""; OTHER_REZFLAGS = ""; PRODUCT_NAME = FSTest1; + SECTORDER_FLAGS = ""; WARNING_CFLAGS = "-Wmost"; WRAPPER_EXTENSION = app; ZERO_LINK = NO; @@ -8916,55 +9311,19 @@ isa = XCBuildConfiguration; buildSettings = { COMBINE_HIDPI_IMAGES = YES; + COPY_PHASE_STRIP = YES; GCC_ENABLE_OBJC_GC = unsupported; GCC_ENABLE_PASCAL_STRINGS = NO; + GCC_GENERATE_DEBUGGING_SYMBOLS = NO; GCC_MODEL_TUNING = ""; GCC_WARN_FOUR_CHARACTER_CONSTANTS = NO; GCC_WARN_UNKNOWN_PRAGMAS = NO; INFOPLIST_FILE = "Info-FSTest1_2.plist"; OTHER_CFLAGS = ""; + OTHER_LDFLAGS = ""; OTHER_REZFLAGS = ""; PRODUCT_NAME = FSTest1; - WARNING_CFLAGS = "-Wmost"; - WRAPPER_EXTENSION = app; - ZERO_LINK = NO; - }; - name = Release; - }; - 8F2881F108F9C040005B3C5A /* Debug */ = { - isa = XCBuildConfiguration; - buildSettings = { - COMBINE_HIDPI_IMAGES = YES; - GCC_DYNAMIC_NO_PIC = NO; - GCC_ENABLE_PASCAL_STRINGS = NO; - GCC_MODEL_TUNING = ""; - GCC_OPTIMIZATION_LEVEL = 0; - GCC_WARN_FOUR_CHARACTER_CONSTANTS = NO; - GCC_WARN_UNKNOWN_PRAGMAS = NO; - INFOPLIST_FILE = "Info-FSTest2_2.plist"; - OTHER_CFLAGS = ""; - OTHER_LDFLAGS = "-lffi"; - OTHER_REZFLAGS = ""; - PRODUCT_NAME = FSTest2; - WARNING_CFLAGS = "-Wmost"; - WRAPPER_EXTENSION = app; - ZERO_LINK = NO; - }; - name = Debug; - }; - 8F2881F208F9C040005B3C5A /* Release */ = { - isa = XCBuildConfiguration; - buildSettings = { - COMBINE_HIDPI_IMAGES = YES; - GCC_ENABLE_PASCAL_STRINGS = NO; - GCC_MODEL_TUNING = ""; - GCC_WARN_FOUR_CHARACTER_CONSTANTS = NO; - GCC_WARN_UNKNOWN_PRAGMAS = NO; - INFOPLIST_FILE = "Info-FSTest2_2.plist"; - OTHER_CFLAGS = ""; - OTHER_LDFLAGS = "-lffi"; - OTHER_REZFLAGS = ""; - PRODUCT_NAME = FSTest2; + SECTORDER_FLAGS = ""; WARNING_CFLAGS = "-Wmost"; WRAPPER_EXTENSION = app; ZERO_LINK = NO; @@ -8976,6 +9335,7 @@ buildSettings = { AUTO_SHADOW = YES; COMBINE_HIDPI_IMAGES = YES; + COPY_PHASE_STRIP = "$(value) NO"; FRAMEWORK_SEARCH_PATHS = ( "$(inherited)", "$(FRAMEWORK_SEARCH_PATHS_QUOTED_FOR_TARGET_1)", @@ -8984,14 +9344,17 @@ FRAMEWORK_SEARCH_PATHS_QUOTED_FOR_TARGET_1 = "\"$(DEVELOPER_FRAMEWORKS_DIR)\""; GCC_DYNAMIC_NO_PIC = NO; GCC_ENABLE_PASCAL_STRINGS = NO; + GCC_GENERATE_DEBUGGING_SYMBOLS = YES; GCC_MODEL_TUNING = ""; GCC_WARN_FOUR_CHARACTER_CONSTANTS = NO; GCC_WARN_UNKNOWN_PRAGMAS = NO; - INFOPLIST_FILE = "Info-FScript.plist"; + HEADER_SEARCH_PATHS = ""; + INFOPLIST_FILE = "Info-F_Script__Upgraded_.plist"; + OTHER_CFLAGS = ""; OTHER_LDFLAGS = "-lffi"; OTHER_REZFLAGS = ""; PRODUCT_NAME = "F-Script"; - SDKROOT = macosx10.7; + SECTORDER_FLAGS = ""; WRAPPER_EXTENSION = app; ZERO_LINK = NO; }; @@ -9001,6 +9364,7 @@ isa = XCBuildConfiguration; buildSettings = { COMBINE_HIDPI_IMAGES = YES; + COPY_PHASE_STRIP = YES; FRAMEWORK_SEARCH_PATHS = ( "$(inherited)", "$(FRAMEWORK_SEARCH_PATHS_QUOTED_1)", @@ -9010,6 +9374,7 @@ GCC_C_LANGUAGE_STANDARD = gnu99; GCC_DYNAMIC_NO_PIC = YES; GCC_ENABLE_PASCAL_STRINGS = NO; + GCC_GENERATE_DEBUGGING_SYMBOLS = NO; GCC_MODEL_TUNING = ""; GCC_OPTIMIZATION_LEVEL = 3; GCC_WARN_64_TO_32_BIT_CONVERSION = NO; @@ -9023,11 +9388,13 @@ GCC_WARN_SHADOW = NO; GCC_WARN_UNKNOWN_PRAGMAS = NO; GCC_WARN_UNUSED_PARAMETER = YES; - INFOPLIST_FILE = "Info-FScript.plist"; + HEADER_SEARCH_PATHS = ""; + INFOPLIST_FILE = "Info-F_Script__Upgraded_.plist"; + OTHER_CFLAGS = ""; OTHER_LDFLAGS = "-lffi"; OTHER_REZFLAGS = ""; PRODUCT_NAME = "F-Script"; - SDKROOT = macosx10.7; + SECTORDER_FLAGS = ""; WARNING_CFLAGS = "-Wmost"; WRAPPER_EXTENSION = app; ZERO_LINK = NO; @@ -9038,9 +9405,8 @@ isa = XCBuildConfiguration; buildSettings = { ALWAYS_SEARCH_USER_PATHS = NO; - ARCHS = "$(ARCHS_STANDARD_64_BIT)"; - CURRENT_PROJECT_VERSION = 2.3; DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; + ENABLE_TESTABILITY = YES; GCC_C_LANGUAGE_STANDARD = "compiler-default"; GCC_ENABLE_CPP_EXCEPTIONS = NO; GCC_ENABLE_CPP_RTTI = NO; @@ -9066,6 +9432,7 @@ IBC_FLATTEN_NIBS = NO; MACOSX_DEPLOYMENT_TARGET = 10.7; ONLY_ACTIVE_ARCH = YES; + OTHER_LDFLAGS = ""; SDKROOT = macosx; WARNING_CFLAGS = ( "-Wmost", @@ -9079,8 +9446,6 @@ isa = XCBuildConfiguration; buildSettings = { ALWAYS_SEARCH_USER_PATHS = NO; - ARCHS = "$(ARCHS_STANDARD_64_BIT)"; - CURRENT_PROJECT_VERSION = 2.3; DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; GCC_C_LANGUAGE_STANDARD = "compiler-default"; GCC_ENABLE_CPP_EXCEPTIONS = NO; @@ -9096,6 +9461,7 @@ IBC_FLATTEN_NIBS = NO; INSTALL_OWNER = "$(inherited)"; MACOSX_DEPLOYMENT_TARGET = 10.7; + OTHER_LDFLAGS = ""; SDKROOT = macosx; WARNING_CFLAGS = ( "-Wmost", @@ -9104,70 +9470,12 @@ }; name = Release; }; - 8F6392D40BDB8522005C8D94 /* Debug */ = { - isa = XCBuildConfiguration; - buildSettings = { - COMBINE_HIDPI_IMAGES = YES; - FRAMEWORK_SEARCH_PATHS = ( - "$(inherited)", - "$(FRAMEWORK_SEARCH_PATHS_QUOTED_FOR_TARGET_1)", - ); - FRAMEWORK_SEARCH_PATHS_QUOTED_FOR_TARGET_1 = "\"$(SYSTEM_DEVELOPER_DIR)/Library/Frameworks\""; - GCC_DYNAMIC_NO_PIC = NO; - GCC_ENABLE_OBJC_GC = unsupported; - GCC_MODEL_TUNING = ""; - GCC_PRECOMPILE_PREFIX_HEADER = YES; - GCC_PREFIX_HEADER = "$(SYSTEM_LIBRARY_DIR)/Frameworks/AppKit.framework/Headers/AppKit.h"; - GCC_WARN_UNUSED_PARAMETER = NO; - INFOPLIST_FILE = "FScriptIBPlugin/FScriptIBPlugin-Info.plist"; - INSTALL_PATH = "$(HOME)/Library/Bundles"; - OTHER_LDFLAGS = ( - "-lffi", - "-framework", - Foundation, - "-framework", - AppKit, - ); - PRODUCT_NAME = FScriptIBPlugin; - WRAPPER_EXTENSION = ibplugin; - ZERO_LINK = NO; - }; - name = Debug; - }; - 8F6392D50BDB8522005C8D94 /* Release */ = { - isa = XCBuildConfiguration; - buildSettings = { - COMBINE_HIDPI_IMAGES = YES; - FRAMEWORK_SEARCH_PATHS = ( - "$(inherited)", - "$(FRAMEWORK_SEARCH_PATHS_QUOTED_1)", - ); - FRAMEWORK_SEARCH_PATHS_QUOTED_1 = "\"$(SYSTEM_DEVELOPER_DIR)/Library/Frameworks\""; - GCC_ENABLE_OBJC_GC = unsupported; - GCC_MODEL_TUNING = ""; - GCC_OPTIMIZATION_LEVEL = 3; - GCC_PRECOMPILE_PREFIX_HEADER = YES; - GCC_PREFIX_HEADER = "$(SYSTEM_LIBRARY_DIR)/Frameworks/AppKit.framework/Headers/AppKit.h"; - INFOPLIST_FILE = "FScriptIBPlugin/FScriptIBPlugin-Info.plist"; - INSTALL_PATH = "$(HOME)/Library/Bundles"; - OTHER_LDFLAGS = ( - "-lffi", - "-framework", - Foundation, - "-framework", - AppKit, - ); - PRODUCT_NAME = FScriptIBPlugin; - WRAPPER_EXTENSION = ibplugin; - ZERO_LINK = NO; - }; - name = Release; - }; BA22335E189FA403002C5B6A /* Debug */ = { isa = XCBuildConfiguration; buildSettings = { AUTO_SHADOW = YES; COMBINE_HIDPI_IMAGES = YES; + COPY_PHASE_STRIP = "$(value) NO"; FRAMEWORK_SEARCH_PATHS = ( "$(inherited)", "$(FRAMEWORK_SEARCH_PATHS_QUOTED_FOR_TARGET_1)", @@ -9176,15 +9484,18 @@ FRAMEWORK_SEARCH_PATHS_QUOTED_FOR_TARGET_1 = "\"$(DEVELOPER_FRAMEWORKS_DIR)\""; GCC_DYNAMIC_NO_PIC = NO; GCC_ENABLE_PASCAL_STRINGS = NO; + GCC_GENERATE_DEBUGGING_SYMBOLS = YES; GCC_MODEL_TUNING = ""; GCC_WARN_FOUR_CHARACTER_CONSTANTS = NO; GCC_WARN_UNKNOWN_PRAGMAS = NO; - INFOPLIST_FILE = "Info-FScript.plist"; + HEADER_SEARCH_PATHS = ""; + INFOPLIST_FILE = "Info-F_Script__Upgraded_.plist"; MACOSX_DEPLOYMENT_TARGET = 10.8; + OTHER_CFLAGS = ""; OTHER_LDFLAGS = "-lffi"; OTHER_REZFLAGS = ""; PRODUCT_NAME = "F-Script"; - SDKROOT = macosx10.8; + SECTORDER_FLAGS = ""; WRAPPER_EXTENSION = app; ZERO_LINK = NO; }; @@ -9194,6 +9505,7 @@ isa = XCBuildConfiguration; buildSettings = { COMBINE_HIDPI_IMAGES = YES; + COPY_PHASE_STRIP = YES; FRAMEWORK_SEARCH_PATHS = ( "$(inherited)", "$(FRAMEWORK_SEARCH_PATHS_QUOTED_1)", @@ -9203,6 +9515,7 @@ GCC_C_LANGUAGE_STANDARD = gnu99; GCC_DYNAMIC_NO_PIC = YES; GCC_ENABLE_PASCAL_STRINGS = NO; + GCC_GENERATE_DEBUGGING_SYMBOLS = NO; GCC_MODEL_TUNING = ""; GCC_OPTIMIZATION_LEVEL = 3; GCC_WARN_64_TO_32_BIT_CONVERSION = NO; @@ -9216,12 +9529,14 @@ GCC_WARN_SHADOW = NO; GCC_WARN_UNKNOWN_PRAGMAS = NO; GCC_WARN_UNUSED_PARAMETER = YES; - INFOPLIST_FILE = "Info-FScript.plist"; + HEADER_SEARCH_PATHS = ""; + INFOPLIST_FILE = "Info-F_Script__Upgraded_.plist"; MACOSX_DEPLOYMENT_TARGET = 10.8; + OTHER_CFLAGS = ""; OTHER_LDFLAGS = "-lffi"; OTHER_REZFLAGS = ""; PRODUCT_NAME = "F-Script"; - SDKROOT = macosx10.8; + SECTORDER_FLAGS = ""; WARNING_CFLAGS = "-Wmost"; WRAPPER_EXTENSION = app; ZERO_LINK = NO; @@ -9233,6 +9548,7 @@ buildSettings = { AUTO_SHADOW = YES; COMBINE_HIDPI_IMAGES = YES; + COPY_PHASE_STRIP = "$(value) NO"; FRAMEWORK_SEARCH_PATHS = ( "$(inherited)", "$(FRAMEWORK_SEARCH_PATHS_QUOTED_FOR_TARGET_1)", @@ -9241,15 +9557,18 @@ FRAMEWORK_SEARCH_PATHS_QUOTED_FOR_TARGET_1 = "\"$(DEVELOPER_FRAMEWORKS_DIR)\""; GCC_DYNAMIC_NO_PIC = NO; GCC_ENABLE_PASCAL_STRINGS = NO; + GCC_GENERATE_DEBUGGING_SYMBOLS = YES; GCC_MODEL_TUNING = ""; GCC_WARN_FOUR_CHARACTER_CONSTANTS = NO; GCC_WARN_UNKNOWN_PRAGMAS = NO; - INFOPLIST_FILE = "Info-FScript.plist"; + HEADER_SEARCH_PATHS = ""; + INFOPLIST_FILE = "Info-F_Script__Upgraded_.plist"; MACOSX_DEPLOYMENT_TARGET = 10.9; + OTHER_CFLAGS = ""; OTHER_LDFLAGS = "-lffi"; OTHER_REZFLAGS = ""; PRODUCT_NAME = "F-Script"; - SDKROOT = macosx10.9; + SECTORDER_FLAGS = ""; WRAPPER_EXTENSION = app; ZERO_LINK = NO; }; @@ -9259,6 +9578,7 @@ isa = XCBuildConfiguration; buildSettings = { COMBINE_HIDPI_IMAGES = YES; + COPY_PHASE_STRIP = YES; FRAMEWORK_SEARCH_PATHS = ( "$(inherited)", "$(FRAMEWORK_SEARCH_PATHS_QUOTED_1)", @@ -9268,6 +9588,7 @@ GCC_C_LANGUAGE_STANDARD = gnu99; GCC_DYNAMIC_NO_PIC = YES; GCC_ENABLE_PASCAL_STRINGS = NO; + GCC_GENERATE_DEBUGGING_SYMBOLS = NO; GCC_MODEL_TUNING = ""; GCC_OPTIMIZATION_LEVEL = 3; GCC_WARN_64_TO_32_BIT_CONVERSION = NO; @@ -9281,12 +9602,14 @@ GCC_WARN_SHADOW = NO; GCC_WARN_UNKNOWN_PRAGMAS = NO; GCC_WARN_UNUSED_PARAMETER = YES; - INFOPLIST_FILE = "Info-FScript.plist"; + HEADER_SEARCH_PATHS = ""; + INFOPLIST_FILE = "Info-F_Script__Upgraded_.plist"; MACOSX_DEPLOYMENT_TARGET = 10.9; + OTHER_CFLAGS = ""; OTHER_LDFLAGS = "-lffi"; OTHER_REZFLAGS = ""; PRODUCT_NAME = "F-Script"; - SDKROOT = macosx10.9; + SECTORDER_FLAGS = ""; WARNING_CFLAGS = "-Wmost"; WRAPPER_EXTENSION = app; ZERO_LINK = NO; @@ -9297,18 +9620,23 @@ isa = XCBuildConfiguration; buildSettings = { COMBINE_HIDPI_IMAGES = YES; + COPY_PHASE_STRIP = "$(value) NO"; DYLIB_COMPATIBILITY_VERSION = 1; + DYLIB_CURRENT_VERSION = 2; + FRAMEWORK_SEARCH_PATHS = ""; FRAMEWORK_VERSION = A; GCC_C_LANGUAGE_STANDARD = gnu99; GCC_DYNAMIC_NO_PIC = NO; GCC_ENABLE_PASCAL_STRINGS = NO; + GCC_GENERATE_DEBUGGING_SYMBOLS = YES; GCC_MODEL_TUNING = ""; GCC_OPTIMIZATION_LEVEL = 0; GCC_WARN_FOUR_CHARACTER_CONSTANTS = NO; GCC_WARN_UNKNOWN_PRAGMAS = NO; - INFOPLIST_FILE = "Info-FScriptFramework.plist"; + INFOPLIST_FILE = "Info-FScriptFramework__Upgraded_.plist"; INSTALL_PATH = "@executable_path/../Frameworks"; MACOSX_DEPLOYMENT_TARGET = 10.8; + OTHER_CFLAGS = ""; OTHER_LDFLAGS = ( "-lffi", "-weak_framework", @@ -9317,8 +9645,8 @@ OTHER_LIBTOOL_FLAGS = "$(value) "; OTHER_REZFLAGS = ""; PRINCIPAL_CLASS = ""; - PRODUCT_NAME = FScript; - SDKROOT = macosx10.8; + PRODUCT_NAME = FScriptFramework; + SECTORDER_FLAGS = ""; SKIP_INSTALL = YES; WRAPPER_EXTENSION = framework; ZERO_LINK = NO; @@ -9329,16 +9657,21 @@ isa = XCBuildConfiguration; buildSettings = { COMBINE_HIDPI_IMAGES = YES; + COPY_PHASE_STRIP = YES; DYLIB_COMPATIBILITY_VERSION = 1; + DYLIB_CURRENT_VERSION = 2; + FRAMEWORK_SEARCH_PATHS = ""; FRAMEWORK_VERSION = A; GCC_C_LANGUAGE_STANDARD = gnu99; GCC_ENABLE_PASCAL_STRINGS = NO; + GCC_GENERATE_DEBUGGING_SYMBOLS = NO; GCC_OPTIMIZATION_LEVEL = 3; GCC_WARN_FOUR_CHARACTER_CONSTANTS = NO; GCC_WARN_UNKNOWN_PRAGMAS = NO; - INFOPLIST_FILE = "Info-FScriptFramework.plist"; + INFOPLIST_FILE = "Info-FScriptFramework__Upgraded_.plist"; INSTALL_PATH = "@executable_path/../Frameworks"; MACOSX_DEPLOYMENT_TARGET = 10.8; + OTHER_CFLAGS = ""; OTHER_LDFLAGS = ( "-lffi", "-weak_framework", @@ -9347,8 +9680,8 @@ OTHER_LIBTOOL_FLAGS = "$(value) "; OTHER_REZFLAGS = ""; PRINCIPAL_CLASS = ""; - PRODUCT_NAME = FScript; - SDKROOT = macosx10.8; + PRODUCT_NAME = FScriptFramework; + SECTORDER_FLAGS = ""; SKIP_INSTALL = YES; WRAPPER_EXTENSION = framework; ZERO_LINK = NO; @@ -9359,18 +9692,23 @@ isa = XCBuildConfiguration; buildSettings = { COMBINE_HIDPI_IMAGES = YES; + COPY_PHASE_STRIP = "$(value) NO"; DYLIB_COMPATIBILITY_VERSION = 1; + DYLIB_CURRENT_VERSION = 2; + FRAMEWORK_SEARCH_PATHS = ""; FRAMEWORK_VERSION = A; GCC_C_LANGUAGE_STANDARD = gnu99; GCC_DYNAMIC_NO_PIC = NO; GCC_ENABLE_PASCAL_STRINGS = NO; + GCC_GENERATE_DEBUGGING_SYMBOLS = YES; GCC_MODEL_TUNING = ""; GCC_OPTIMIZATION_LEVEL = 0; GCC_WARN_FOUR_CHARACTER_CONSTANTS = NO; GCC_WARN_UNKNOWN_PRAGMAS = NO; - INFOPLIST_FILE = "Info-FScriptFramework.plist"; + INFOPLIST_FILE = "Info-FScriptFramework__Upgraded_.plist"; INSTALL_PATH = "@executable_path/../Frameworks"; MACOSX_DEPLOYMENT_TARGET = 10.9; + OTHER_CFLAGS = ""; OTHER_LDFLAGS = ( "-lffi", "-weak_framework", @@ -9380,7 +9718,7 @@ OTHER_REZFLAGS = ""; PRINCIPAL_CLASS = ""; PRODUCT_NAME = FScript; - SDKROOT = macosx10.9; + SECTORDER_FLAGS = ""; SKIP_INSTALL = YES; WRAPPER_EXTENSION = framework; ZERO_LINK = NO; @@ -9391,16 +9729,21 @@ isa = XCBuildConfiguration; buildSettings = { COMBINE_HIDPI_IMAGES = YES; + COPY_PHASE_STRIP = YES; DYLIB_COMPATIBILITY_VERSION = 1; + DYLIB_CURRENT_VERSION = 2; + FRAMEWORK_SEARCH_PATHS = ""; FRAMEWORK_VERSION = A; GCC_C_LANGUAGE_STANDARD = gnu99; GCC_ENABLE_PASCAL_STRINGS = NO; + GCC_GENERATE_DEBUGGING_SYMBOLS = NO; GCC_OPTIMIZATION_LEVEL = 3; GCC_WARN_FOUR_CHARACTER_CONSTANTS = NO; GCC_WARN_UNKNOWN_PRAGMAS = NO; - INFOPLIST_FILE = "Info-FScriptFramework.plist"; + INFOPLIST_FILE = "Info-FScriptFramework__Upgraded_.plist"; INSTALL_PATH = "@executable_path/../Frameworks"; MACOSX_DEPLOYMENT_TARGET = 10.9; + OTHER_CFLAGS = ""; OTHER_LDFLAGS = ( "-lffi", "-weak_framework", @@ -9410,18 +9753,19 @@ OTHER_REZFLAGS = ""; PRINCIPAL_CLASS = ""; PRODUCT_NAME = FScript; - SDKROOT = macosx10.9; + SECTORDER_FLAGS = ""; SKIP_INSTALL = YES; WRAPPER_EXTENSION = framework; ZERO_LINK = NO; }; name = Release; }; - E29F5D8819FD93FD00AD90CF /* Debug */ = { + EDC2CACB1A1AA50D00942777 /* Debug */ = { isa = XCBuildConfiguration; buildSettings = { AUTO_SHADOW = YES; COMBINE_HIDPI_IMAGES = YES; + COPY_PHASE_STRIP = "$(value) NO"; FRAMEWORK_SEARCH_PATHS = ( "$(inherited)", "$(FRAMEWORK_SEARCH_PATHS_QUOTED_FOR_TARGET_1)", @@ -9430,24 +9774,31 @@ FRAMEWORK_SEARCH_PATHS_QUOTED_FOR_TARGET_1 = "\"$(DEVELOPER_FRAMEWORKS_DIR)\""; GCC_DYNAMIC_NO_PIC = NO; GCC_ENABLE_PASCAL_STRINGS = NO; + GCC_GENERATE_DEBUGGING_SYMBOLS = YES; GCC_MODEL_TUNING = ""; GCC_WARN_FOUR_CHARACTER_CONSTANTS = NO; GCC_WARN_UNKNOWN_PRAGMAS = NO; - INFOPLIST_FILE = "Info-FScript.plist"; + HEADER_SEARCH_PATHS = ""; + INFOPLIST_FILE = "F-Script 10.9 copy-Info.plist"; MACOSX_DEPLOYMENT_TARGET = 10.10; + OTHER_CFLAGS = ""; OTHER_LDFLAGS = "-lffi"; OTHER_REZFLAGS = ""; + PRODUCT_BUNDLE_IDENTIFIER = org.fscript.fscriptapp; PRODUCT_NAME = "F-Script"; - SDKROOT = macosx10.10; + SDKROOT = macosx; + SECTORDER_FLAGS = ""; + VALID_ARCHS = x86_64; WRAPPER_EXTENSION = app; ZERO_LINK = NO; }; name = Debug; }; - E29F5D8919FD93FD00AD90CF /* Release */ = { + EDC2CACC1A1AA50D00942777 /* Release */ = { isa = XCBuildConfiguration; buildSettings = { COMBINE_HIDPI_IMAGES = YES; + COPY_PHASE_STRIP = YES; FRAMEWORK_SEARCH_PATHS = ( "$(inherited)", "$(FRAMEWORK_SEARCH_PATHS_QUOTED_1)", @@ -9457,6 +9808,7 @@ GCC_C_LANGUAGE_STANDARD = gnu99; GCC_DYNAMIC_NO_PIC = YES; GCC_ENABLE_PASCAL_STRINGS = NO; + GCC_GENERATE_DEBUGGING_SYMBOLS = NO; GCC_MODEL_TUNING = ""; GCC_OPTIMIZATION_LEVEL = 3; GCC_WARN_64_TO_32_BIT_CONVERSION = NO; @@ -9470,34 +9822,44 @@ GCC_WARN_SHADOW = NO; GCC_WARN_UNKNOWN_PRAGMAS = NO; GCC_WARN_UNUSED_PARAMETER = YES; - INFOPLIST_FILE = "Info-FScript.plist"; + HEADER_SEARCH_PATHS = ""; + INFOPLIST_FILE = "F-Script 10.9 copy-Info.plist"; MACOSX_DEPLOYMENT_TARGET = 10.10; + OTHER_CFLAGS = ""; OTHER_LDFLAGS = "-lffi"; OTHER_REZFLAGS = ""; + PRODUCT_BUNDLE_IDENTIFIER = org.fscript.fscriptapp; PRODUCT_NAME = "F-Script"; - SDKROOT = macosx10.10; + SDKROOT = macosx; + SECTORDER_FLAGS = ""; + VALID_ARCHS = x86_64; WARNING_CFLAGS = "-Wmost"; WRAPPER_EXTENSION = app; ZERO_LINK = NO; }; name = Release; }; - E29F5EEA19FD94FC00AD90CF /* Debug */ = { + EDC2CC251A1AA52500942777 /* Debug */ = { isa = XCBuildConfiguration; buildSettings = { COMBINE_HIDPI_IMAGES = YES; + COPY_PHASE_STRIP = "$(value) NO"; DYLIB_COMPATIBILITY_VERSION = 1; + DYLIB_CURRENT_VERSION = 2; + FRAMEWORK_SEARCH_PATHS = ""; FRAMEWORK_VERSION = A; GCC_C_LANGUAGE_STANDARD = gnu99; GCC_DYNAMIC_NO_PIC = NO; GCC_ENABLE_PASCAL_STRINGS = NO; + GCC_GENERATE_DEBUGGING_SYMBOLS = YES; GCC_MODEL_TUNING = ""; GCC_OPTIMIZATION_LEVEL = 0; GCC_WARN_FOUR_CHARACTER_CONSTANTS = NO; GCC_WARN_UNKNOWN_PRAGMAS = NO; - INFOPLIST_FILE = "Info-FScriptFramework.plist"; + INFOPLIST_FILE = "FScriptFramework 10.9 copy-Info.plist"; INSTALL_PATH = "@executable_path/../Frameworks"; MACOSX_DEPLOYMENT_TARGET = 10.10; + OTHER_CFLAGS = ""; OTHER_LDFLAGS = ( "-lffi", "-weak_framework", @@ -9506,28 +9868,34 @@ OTHER_LIBTOOL_FLAGS = "$(value) "; OTHER_REZFLAGS = ""; PRINCIPAL_CLASS = ""; + PRODUCT_BUNDLE_IDENTIFIER = org.fscript.fscriptframework; PRODUCT_NAME = FScript; - SDKROOT = macosx10.10; + SECTORDER_FLAGS = ""; SKIP_INSTALL = YES; WRAPPER_EXTENSION = framework; ZERO_LINK = NO; }; name = Debug; }; - E29F5EEB19FD94FC00AD90CF /* Release */ = { + EDC2CC261A1AA52500942777 /* Release */ = { isa = XCBuildConfiguration; buildSettings = { COMBINE_HIDPI_IMAGES = YES; + COPY_PHASE_STRIP = YES; DYLIB_COMPATIBILITY_VERSION = 1; + DYLIB_CURRENT_VERSION = 2; + FRAMEWORK_SEARCH_PATHS = ""; FRAMEWORK_VERSION = A; GCC_C_LANGUAGE_STANDARD = gnu99; GCC_ENABLE_PASCAL_STRINGS = NO; + GCC_GENERATE_DEBUGGING_SYMBOLS = NO; GCC_OPTIMIZATION_LEVEL = 3; GCC_WARN_FOUR_CHARACTER_CONSTANTS = NO; GCC_WARN_UNKNOWN_PRAGMAS = NO; - INFOPLIST_FILE = "Info-FScriptFramework.plist"; + INFOPLIST_FILE = "FScriptFramework 10.9 copy-Info.plist"; INSTALL_PATH = "@executable_path/../Frameworks"; MACOSX_DEPLOYMENT_TARGET = 10.10; + OTHER_CFLAGS = ""; OTHER_LDFLAGS = ( "-lffi", "-weak_framework", @@ -9536,8 +9904,9 @@ OTHER_LIBTOOL_FLAGS = "$(value) "; OTHER_REZFLAGS = ""; PRINCIPAL_CLASS = ""; + PRODUCT_BUNDLE_IDENTIFIER = org.fscript.fscriptframework; PRODUCT_NAME = FScript; - SDKROOT = macosx10.10; + SECTORDER_FLAGS = ""; SKIP_INSTALL = YES; WRAPPER_EXTENSION = framework; ZERO_LINK = NO; @@ -9565,15 +9934,6 @@ defaultConfigurationIsVisible = 0; defaultConfigurationName = Debug; }; - 8F2881F008F9C040005B3C5A /* Build configuration list for PBXNativeTarget "FSTest2" */ = { - isa = XCConfigurationList; - buildConfigurations = ( - 8F2881F108F9C040005B3C5A /* Debug */, - 8F2881F208F9C040005B3C5A /* Release */, - ); - defaultConfigurationIsVisible = 0; - defaultConfigurationName = Debug; - }; 8F2881F408F9C040005B3C5A /* Build configuration list for PBXNativeTarget "F-Script 10.7" */ = { isa = XCConfigurationList; buildConfigurations = ( @@ -9592,15 +9952,6 @@ defaultConfigurationIsVisible = 0; defaultConfigurationName = Debug; }; - 8F6392D30BDB8522005C8D94 /* Build configuration list for PBXNativeTarget "FScriptIBPlugin" */ = { - isa = XCConfigurationList; - buildConfigurations = ( - 8F6392D40BDB8522005C8D94 /* Debug */, - 8F6392D50BDB8522005C8D94 /* Release */, - ); - defaultConfigurationIsVisible = 0; - defaultConfigurationName = Debug; - }; BA22335D189FA403002C5B6A /* Build configuration list for PBXNativeTarget "F-Script 10.8" */ = { isa = XCConfigurationList; buildConfigurations = ( @@ -9637,20 +9988,20 @@ defaultConfigurationIsVisible = 0; defaultConfigurationName = Debug; }; - E29F5D8719FD93FD00AD90CF /* Build configuration list for PBXNativeTarget "F-Script 10.10" */ = { + EDC2CACA1A1AA50D00942777 /* Build configuration list for PBXNativeTarget "F-Script 10.10" */ = { isa = XCConfigurationList; buildConfigurations = ( - E29F5D8819FD93FD00AD90CF /* Debug */, - E29F5D8919FD93FD00AD90CF /* Release */, + EDC2CACB1A1AA50D00942777 /* Debug */, + EDC2CACC1A1AA50D00942777 /* Release */, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Debug; }; - E29F5EE919FD94FC00AD90CF /* Build configuration list for PBXNativeTarget "FScriptFramework 10.10" */ = { + EDC2CC241A1AA52500942777 /* Build configuration list for PBXNativeTarget "FScriptFramework 10.10" */ = { isa = XCConfigurationList; buildConfigurations = ( - E29F5EEA19FD94FC00AD90CF /* Debug */, - E29F5EEB19FD94FC00AD90CF /* Release */, + EDC2CC251A1AA52500942777 /* Debug */, + EDC2CC261A1AA52500942777 /* Release */, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Debug; diff --git a/FScript.xcodeproj/xcshareddata/xcschemes/F-Script 10.10.xcscheme b/FScript.xcodeproj/xcshareddata/xcschemes/F-Script 10.10.xcscheme index 5d24dc5..8cd548d 100644 --- a/FScript.xcodeproj/xcshareddata/xcschemes/F-Script 10.10.xcscheme +++ b/FScript.xcodeproj/xcshareddata/xcschemes/F-Script 10.10.xcscheme @@ -1,6 +1,6 @@ @@ -28,7 +28,7 @@ buildForAnalyzing = "YES"> @@ -46,12 +46,14 @@ + + - + @@ -80,10 +84,11 @@ useCustomWorkingDirectory = "NO" buildConfiguration = "Release" debugDocumentVersioning = "YES"> - + diff --git a/FScript.xcodeproj/xcshareddata/xcschemes/F-Script 10.7.xcscheme b/FScript.xcodeproj/xcshareddata/xcschemes/F-Script 10.7.xcscheme index c04fbdb..e6a8693 100644 --- a/FScript.xcodeproj/xcshareddata/xcschemes/F-Script 10.7.xcscheme +++ b/FScript.xcodeproj/xcshareddata/xcschemes/F-Script 10.7.xcscheme @@ -1,6 +1,6 @@ + + - + - + - - - - + + - + - + @@ -80,7 +70,8 @@ useCustomWorkingDirectory = "NO" buildConfiguration = "Release" debugDocumentVersioning = "YES"> - + - + diff --git a/FScript.xcodeproj/xcshareddata/xcschemes/F-Script 10.9.xcscheme b/FScript.xcodeproj/xcshareddata/xcschemes/F-Script 10.9.xcscheme index 75e307c..56a6a01 100644 --- a/FScript.xcodeproj/xcshareddata/xcschemes/F-Script 10.9.xcscheme +++ b/FScript.xcodeproj/xcshareddata/xcschemes/F-Script 10.9.xcscheme @@ -1,6 +1,6 @@ + + - + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/FScriptIBPlugin/Info.plist b/FScriptFramework 10.9 copy-Info.plist similarity index 71% rename from FScriptIBPlugin/Info.plist rename to FScriptFramework 10.9 copy-Info.plist index de65a4a..5d0b469 100644 --- a/FScriptIBPlugin/Info.plist +++ b/FScriptFramework 10.9 copy-Info.plist @@ -5,24 +5,24 @@ CFBundleDevelopmentRegion English CFBundleExecutable - ${EXECUTABLE_NAME} + FScript + CFBundleGetInfoString + CFBundleIconFile CFBundleIdentifier - org.fscript.FScriptIBPlugin + $(PRODUCT_BUNDLE_IDENTIFIER) CFBundleInfoDictionaryVersion 6.0 CFBundleName - ${PRODUCT_NAME} + F-Script Framework CFBundlePackageType - BNDL + FMWK + CFBundleShortVersionString + Version 2.0 CFBundleSignature ???? - CFBundleShortVersionString - 1.0 CFBundleVersion - 1 - NSPrincipalClass - FScriptIBPlugin + 2.2 diff --git a/FScriptFramework/ArrayRepBoolean.m b/FScriptFramework/ArrayRepBoolean.m index 454a818..70cf0b3 100644 --- a/FScriptFramework/ArrayRepBoolean.m +++ b/FScriptFramework/ArrayRepBoolean.m @@ -46,7 +46,7 @@ - (id)operator_backslash:(FSBlock*)bl // May raise FSMsgContext *msgContext = [bl msgContext]; long acu = t[0]; - args[1] = (id)(selector ? selector : [FSCompiler selectorFromString:selectorStr]); + args[1] = (id)sel_getName(selector ? selector : [FSCompiler selectorFromString:selectorStr]); if (selector == @selector(operator_ampersand:)) { diff --git a/FScriptFramework/ArrayRepDouble.m b/FScriptFramework/ArrayRepDouble.m index 8732b5c..dab68ec 100644 --- a/FScriptFramework/ArrayRepDouble.m +++ b/FScriptFramework/ArrayRepDouble.m @@ -75,7 +75,7 @@ - (id)operator_backslash:(FSBlock*)bl FSMsgContext *msgContext = [bl msgContext]; double acu = t[0]; - args[1] = (id)(selector ? selector : [FSCompiler selectorFromString:selectorStr]); + args[1] = (id)sel_getName(selector ? selector : [FSCompiler selectorFromString:selectorStr]); if (selector == @selector(operator_plus:)) { for (i = 1 ; i < count; i++) acu += t[i] ; return [FSNumber numberWithDouble:acu]; } else if (selector == @selector(max:)) { for (i = 1 ; i < count; i++) acu = MAX(acu, t[i]); return [FSNumber numberWithDouble:acu]; } diff --git a/FScriptFramework/ArrayRepId.m b/FScriptFramework/ArrayRepId.m index 94da15c..15e16a5 100644 --- a/FScriptFramework/ArrayRepId.m +++ b/FScriptFramework/ArrayRepId.m @@ -207,7 +207,7 @@ - (id)operator_backslash:(FSBlock*)bl // may raise NSString *selectorStr = [bl selectorStr]; FSMsgContext *msgContext = [bl msgContext]; - args[1] = (id)(selector ? selector : [FSCompiler selectorFromString:selectorStr]); + args[1] = (id)sel_getName(selector ? selector : [FSCompiler selectorFromString:selectorStr]); for (i = 1; i < count; i++) { diff --git a/FScriptFramework/ArrayTableView.nib/classes.nib b/FScriptFramework/ArrayTableView.nib/classes.nib deleted file mode 100644 index 21aa952..0000000 --- a/FScriptFramework/ArrayTableView.nib/classes.nib +++ /dev/null @@ -1,32 +0,0 @@ - - - - - IBClasses - - - CLASS - ArrayTableView - LANGUAGE - ObjC - OUTLETS - - tableView - id - - SUPERCLASS - NSObject - - - CLASS - FirstResponder - LANGUAGE - ObjC - SUPERCLASS - NSObject - - - IBVersion - 1 - - diff --git a/FScriptFramework/ArrayTableView.nib/info.nib b/FScriptFramework/ArrayTableView.nib/info.nib deleted file mode 100644 index e7b675f..0000000 --- a/FScriptFramework/ArrayTableView.nib/info.nib +++ /dev/null @@ -1,16 +0,0 @@ - - - - - IBFramework Version - 672 - IBOldestOS - 5 - IBOpenObjects - - IBSystem Version - 9F33 - targetFramework - IBCocoaFramework - - diff --git a/FScriptFramework/ArrayTableView.nib/keyedobjects.nib b/FScriptFramework/ArrayTableView.nib/keyedobjects.nib deleted file mode 100644 index da23649..0000000 Binary files a/FScriptFramework/ArrayTableView.nib/keyedobjects.nib and /dev/null differ diff --git a/FScriptFramework/ArrayTableView.xib b/FScriptFramework/ArrayTableView.xib new file mode 100644 index 0000000..3c821b4 --- /dev/null +++ b/FScriptFramework/ArrayTableView.xib @@ -0,0 +1,89 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/FScriptFramework/BlockRep.m b/FScriptFramework/BlockRep.m index f52d178..ae16606 100644 --- a/FScriptFramework/BlockRep.m +++ b/FScriptFramework/BlockRep.m @@ -527,7 +527,7 @@ -(id)body_compact_valueArgs:(id*)args count:(NSUInteger)count block:(FSBlock *)b sel = [FSCompiler selectorFromString:selStr]; if (sel == (SEL)0) FSExecError(@"The # block cannot be evaluated"); } - args[1] = (id)sel; + args[1] = (id)sel_getName(sel); r = sendMsgNoPattern(args[0], sel, count, args, msgContext, nil); // May raise } @catch (FSReturnSignal *returnSignal) diff --git a/FScriptFramework/CLIView.h b/FScriptFramework/CLIView.h index dee7c90..675239a 100644 --- a/FScriptFramework/CLIView.h +++ b/FScriptFramework/CLIView.h @@ -1,7 +1,36 @@ /* CLIView.h Copyright (c) 1998-2009 Philippe Mougin. */ /* This software is open source. See the license. */ -/* CLIView is the public API for a Command Line Interface component.*/ +/// CLIView is the public API for a Command Line Interface component. +/** + +The organisation of the view hierarchy: + + ----- CLIView -------------------------------------- + | | + | ----- NSScrollView ---------------------------- | + | | | | + | | ----- ShellView ------------------------- | | + | | | prompt> | | | + | | | | | | + | | | | | | + | | | | | | + | | | | | | + | | | | | | + | | ----------------------------------------- | | + | | | | + | ----------------------------------------------- | + | | + ---------------------------------------------------- + +A CLIView has one subview: an NSScrollView. + +This NSScrollView has a ShellView as document view. + +The ShellView is the view that displays the prompt, receive the keyboard events from the user, display +the commands entered by the user and the results of those commands etc. + +*/ #import diff --git a/FScriptFramework/CLIView.m b/FScriptFramework/CLIView.m index 041d9de..d74a14a 100644 --- a/FScriptFramework/CLIView.m +++ b/FScriptFramework/CLIView.m @@ -1,35 +1,6 @@ /* CLIView.m Copyright (c) 1998-2009 Philippe Mougin. */ /* This software is open source. See the license. */ -/* - -The organisation of the view hierarchy: - - ----- CLIView -------------------------------------- - | | - | ----- NSScrollView ---------------------------- | - | | | | - | | ----- ShellView ------------------------- | | - | | | prompt> | | | - | | | | | | - | | | | | | - | | | | | | - | | | | | | - | | | | | | - | | ----------------------------------------- | | - | | | | - | ----------------------------------------------- | - | | - ---------------------------------------------------- - -A CLIView has one subview: an NSScrollView. - -This NSScrollView has a ShellView as document view. - -The ShellView is the view that displays the prompt, receive the keyboard events from the user, display -the commands entered by the user and the results of those commands etc. - -*/ #import "CLIView.h" #import "ShellView.h" diff --git a/FScriptFramework/FSAttributedStringInspector.nib/keyedobjects.nib b/FScriptFramework/FSAttributedStringInspector.nib/keyedobjects.nib deleted file mode 100644 index 8f037ac..0000000 Binary files a/FScriptFramework/FSAttributedStringInspector.nib/keyedobjects.nib and /dev/null differ diff --git a/FScriptFramework/FSAttributedStringInspector.nib/designable.nib b/FScriptFramework/FSAttributedStringInspector.xib similarity index 90% rename from FScriptFramework/FSAttributedStringInspector.nib/designable.nib rename to FScriptFramework/FSAttributedStringInspector.xib index aaecae8..2c9202a 100644 --- a/FScriptFramework/FSAttributedStringInspector.nib/designable.nib +++ b/FScriptFramework/FSAttributedStringInspector.xib @@ -2,27 +2,16 @@ 1060 - 11C74 - 1938 - 1138.23 - 567.00 + 14A379a + 941 + 1343.13 + 755.00 com.apple.InterfaceBuilder.CocoaPlugin - 1938 + 941 - + YES - NSView - NSSplitView - NSScrollView - NSWindowTemplate - NSToolbarItem - NSTextView - NSToolbar - NSButtonCell - NSButton - NSScroller - NSCustomObject YES @@ -76,22 +65,23 @@ {{0, 14}, {80, 25}} YES - -2080244224 + -2080374784 134217728 Refresh - LucidaGrande + .HelveticaNeueDeskInterface-Regular 13 - 1044 + 1040 - -2038152961 + -2038153216 163 400 75 + NO @@ -118,9 +108,10 @@ + {1.7976931348623157e+308, 1.7976931348623157e+308} {213, 107} - + 256 YES @@ -142,7 +133,7 @@ 2322 - {{0, 2}, {608, 47}} + {{0, 2}, {608, 109}} @@ -156,7 +147,7 @@ YES - 6 + 38 @@ -164,7 +155,7 @@ 1 - 67119981 + 100674413 0 @@ -200,7 +191,12 @@ - + + 6 + System + controlTextColor + + YES @@ -223,7 +219,6 @@ 6 {608, 10000000} - {114, 47} @@ -259,12 +254,16 @@ AAEAAQAAAT0AAwAAAAEAAgAAAVIAAwAAAAEAAQAAAVMAAwAAAAIAAQABAAAAAA 4 + YES -2147483392 {{-30, 1}, {15, 68}} + NO + _doScroller: + _doScroller: 1 @@ -274,6 +273,9 @@ AAEAAQAAAT0AAwAAAAEAAgAAAVIAAwAAAAEAAQAAAVMAAwAAAAIAAQABAAAAAA -2147483392 {{-100, -100}, {87, 18}} + NO + _doScroller: + 1 _doScroller: @@ -288,6 +290,9 @@ AAEAAQAAAT0AAwAAAAEAAgAAAVIAAwAAAAEAAQAAAVMAAwAAAAIAAQABAAAAAA + 0.25 + 4 + 1 @@ -302,7 +307,7 @@ AAEAAQAAAT0AAwAAAAEAAgAAAVIAAwAAAAEAAQAAAVMAAwAAAAIAAQABAAAAAA 2322 - {{0, 56}, {608, 57}} + {{0, 56}, {608, 181}} @@ -316,7 +321,7 @@ AAEAAQAAAT0AAwAAAAEAAgAAAVIAAwAAAAEAAQAAAVMAAwAAAAIAAQABAAAAAA YES - 6 + 38 @@ -324,7 +329,7 @@ AAEAAQAAAT0AAwAAAAEAAgAAAVIAAwAAAAEAAQAAAVMAAwAAAAIAAQABAAAAAA 1 - 67119981 + 100674413 0 @@ -341,7 +346,7 @@ AAEAAQAAAT0AAwAAAAEAAgAAAVIAAwAAAAEAAQAAAVMAAwAAAAIAAQABAAAAAA - + YES @@ -361,7 +366,6 @@ AAEAAQAAAT0AAwAAAAEAAgAAAVIAAwAAAAEAAQAAAVMAAwAAAAIAAQABAAAAAA 6 {608, 10000000} - {114, 57} @@ -372,12 +376,16 @@ AAEAAQAAAT0AAwAAAAEAAgAAAVIAAwAAAAEAAQAAAVMAAwAAAAIAAQABAAAAAA 4 + YES -2147483392 {{-30, 1}, {15, 68}} + NO + _doScroller: + _doScroller: 1 @@ -387,6 +395,9 @@ AAEAAQAAAT0AAwAAAAEAAgAAAVIAAwAAAAEAAQAAAVMAAwAAAAIAAQABAAAAAA -2147483392 {{-100, -100}, {87, 18}} + NO + _doScroller: + 1 _doScroller: @@ -401,6 +412,9 @@ AAEAAQAAAT0AAwAAAAEAAgAAAVIAAwAAAAEAAQAAAVMAAwAAAAIAAQABAAAAAA + 0.25 + 4 + 1 {{0, -1}, {610, 303}} @@ -408,17 +422,24 @@ AAEAAQAAAT0AAwAAAAEAAgAAAVIAAwAAAAEAAQAAAVMAAwAAAAIAAQABAAAAAA {610, 302} - {{0, 0}, {1440, 878}} {213, 161} - {10000000000000, 10000000000000} + {1.7976931348623157e+308, 1.7976931348623157e+308} YES YES + + + delegate + + + + 34 + window @@ -451,14 +472,6 @@ AAEAAQAAAT0AAwAAAAEAAgAAAVIAAwAAAAEAAQAAAVMAAwAAAAIAAQABAAAAAA 98 - - - delegate - - - - 34 - @@ -612,6 +625,8 @@ AAEAAQAAAT0AAwAAAAEAAgAAAVIAAwAAAAEAAQAAAVMAAwAAAAIAAQABAAAAAA -3.IBPluginDependency 5.IBPluginDependency 5.IBWindowTemplateEditedContentRect + 5.windowTemplate.hasMinSize + 5.windowTemplate.minSize 6.IBPluginDependency 70.IBPluginDependency 71.IBPluginDependency @@ -638,6 +653,8 @@ AAEAAQAAAT0AAwAAAAEAAgAAAVIAAwAAAAEAAQAAAVMAAwAAAAIAAQABAAAAAA com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin {{121, 125}, {610, 302}} + + {213, 107} com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin @@ -661,13 +678,17 @@ AAEAAQAAAT0AAwAAAAEAAgAAAVIAAwAAAAEAAQAAAVMAAwAAAAIAAQABAAAAAA YES - + + YES + YES - + + YES + 98 @@ -684,6 +705,7 @@ AAEAAQAAAT0AAwAAAAEAAgAAAVIAAwAAAAEAAQAAAVMAAwAAAAIAAQABAAAAAA YES + 3 diff --git a/FScriptFramework/FSAttributedStringInspector_alternate.xib b/FScriptFramework/FSAttributedStringInspector_alternate.xib new file mode 100644 index 0000000..033101e --- /dev/null +++ b/FScriptFramework/FSAttributedStringInspector_alternate.xib @@ -0,0 +1,839 @@ + + + + 1060 + 14A379a + 941 + 1343.13 + 755.00 + + com.apple.InterfaceBuilder.CocoaPlugin + 941 + + + YES + + + YES + com.apple.InterfaceBuilder.CocoaPlugin + + + PluginDependencyRecalculationVersion + + + + YES + + FSAttributedStringInspector + + + FirstResponder + + + NSApplication + + + 15 + 2 + {{202, 343}, {518, 301}} + 813170688 + + NSWindow + + View + + + {1.7976931348623157e+308, 1.7976931348623157e+308} + {313, 107} + + + 256 + + YES + + + 268 + {{14, 266}, {88, 32}} + + YES + + 67108864 + 137887744 + Refresh + + .HelveticaNeueDeskInterface-Regular + 13 + 1040 + + + -2038284288 + 1 + + Helvetica + 13 + 16 + + + + + + + + 200 + 25 + + NO + + + + 274 + {{-29, -70}, {577, 340}} + + + YES + + + + 256 + + YES + + + 274 + + YES + + + 2304 + + YES + + + 2322 + + YES + + YES + Apple HTML pasteboard type + Apple PDF pasteboard type + Apple PICT pasteboard type + CorePasteboardFlavorType 0x6D6F6F76 + NSColor pasteboard type + NSFilenamesPboardType + NSStringPboardType + NeXT Encapsulated PostScript v1.2 pasteboard type + NeXT RTFD pasteboard type + NeXT Rich Text Format v1.0 pasteboard type + NeXT TIFF v4.0 pasteboard type + + + {523, 236} + + + + + + + + + + + YES + + + 38 + + + + 523 + 1 + + + 100674541 + 0 + + + 3 + MQA + + + YES + + YES + NSBackgroundColor + NSColor + + + YES + + 6 + System + selectedTextBackgroundColor + + 3 + MC42NjY2NjY2NjY3AA + + + + 6 + System + selectedTextColor + + 3 + MAA + + + + + + 6 + System + controlTextColor + + + + YES + + YES + NSColor + NSCursor + NSUnderline + + + YES + + 1 + MCAwIDEAA + + + {8, -8} + 13 + + + + + + + 1 + + 6 + {610, 10000000} + + + + {523, 236} + + + + + + {4, -5} + 1 + + 4 + YES + + + + -2147483392 + {{-30, 1}, {15, 68}} + + NO + _doScroller: + + + _doScroller: + 1 + + + + -2147483392 + {{-100, -100}, {87, 18}} + + NO + _doScroller: + + 1 + + _doScroller: + 1 + 0.94565218687057495 + + + {{14, 58}, {523, 236}} + + + 133648 + + + + 0.25 + 4 + 1 + + + {{10, 33}, {557, 294}} + + + Preview + + 6 + System + controlColor + + + + + + + + 256 + + YES + + + 274 + + YES + + + 2304 + + YES + + + 2322 + + YES + + YES + Apple HTML pasteboard type + Apple PDF pasteboard type + Apple PICT pasteboard type + CorePasteboardFlavorType 0x6D6F6F76 + NSColor pasteboard type + NSFilenamesPboardType + NSStringPboardType + NeXT Encapsulated PostScript v1.2 pasteboard type + NeXT RTFD pasteboard type + NeXT Rich Text Format v1.0 pasteboard type + NeXT TIFF v4.0 pasteboard type + + + {517, 236} + + + + + + + + + + + YES + + + 38 + + + + 517 + 1 + + + 100674541 + 0 + + + + YES + + YES + NSBackgroundColor + NSColor + + + YES + + + + + + + YES + + YES + NSColor + NSCursor + NSUnderline + + + YES + + + + + + + + 1 + + 6 + {619, 10000000} + + + + {517, 236} + + + + + + 4 + YES + + + + -2147483392 + {{-30, 1}, {15, 68}} + + NO + _doScroller: + + + _doScroller: + 1 + + + + -2147483392 + {{-100, -100}, {87, 18}} + + NO + _doScroller: + + 1 + + _doScroller: + 1 + 0.94565218687057495 + + + {{20, 58}, {517, 236}} + + + 133648 + + + + 0.25 + 4 + 1 + + + {{10, 33}, {557, 294}} + + Description + + + + + + + 0 + YES + YES + + YES + + + + + {{1, 9}, {518, 301}} + + {{0, 0}, {1440, 878}} + {313, 129} + {1.7976931348623157e+308, 1.7976931348623157e+308} + YES + + + + + YES + + + delegate + + + + 34 + + + + window + + + + 43 + + + + updateAction: + + + + 44 + + + + attributedStringView + + + + 75 + + + + printStringView + + + + 86 + + + + + YES + + 0 + + YES + + + + + + -2 + + + File's Owner + + + -1 + + + First Responder + + + 5 + + + YES + + + + Window + + + 6 + + + YES + + + + + + + 35 + + + YES + + + + + + 79 + + + YES + + + + + + + 80 + + + YES + + + + + + 82 + + + YES + + + + + + 71 + + + YES + + + + + + + + 70 + + + + + 81 + + + YES + + + + + + 83 + + + YES + + + + + + 84 + + + YES + + + + + + + + 85 + + + + + 88 + + + + + 89 + + + + + 90 + + + + + 91 + + + + + 92 + + + + + -3 + + + Application + + + + + YES + + YES + 35.IBPluginDependency + 35.ImportedFromIB2 + 5.IBPluginDependency + 5.ImportedFromIB2 + 5.windowTemplate.hasMinSize + 5.windowTemplate.minSize + 6.IBPluginDependency + 6.ImportedFromIB2 + 70.IBPluginDependency + 70.ImportedFromIB2 + 71.IBPluginDependency + 71.ImportedFromIB2 + 79.IBPluginDependency + 79.ImportedFromIB2 + 80.IBPluginDependency + 80.ImportedFromIB2 + 81.IBPluginDependency + 81.ImportedFromIB2 + 82.IBPluginDependency + 82.ImportedFromIB2 + 83.IBPluginDependency + 83.ImportedFromIB2 + 84.IBPluginDependency + 84.ImportedFromIB2 + 85.IBPluginDependency + 85.ImportedFromIB2 + 89.IBShouldRemoveOnLegacySave + 90.IBShouldRemoveOnLegacySave + 91.IBShouldRemoveOnLegacySave + 92.IBShouldRemoveOnLegacySave + + + YES + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + + {313, 107} + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + + + + + + + + YES + + + YES + + + + + YES + + + YES + + + + 92 + + + + YES + + FSAttributedStringInspector + NSObject + + updateAction: + id + + + updateAction: + + updateAction: + id + + + + YES + + YES + attributedStringView + printStringView + window + + + YES + NSTextView + NSTextView + NSWindow + + + + YES + + YES + attributedStringView + printStringView + window + + + YES + + attributedStringView + NSTextView + + + printStringView + NSTextView + + + window + NSWindow + + + + + IBUserSource + + + + + FirstResponder + + IBUserSource + + + + + + 0 + IBCocoaFramework + + com.apple.InterfaceBuilder.CocoaPlugin.macosx + + + + com.apple.InterfaceBuilder.CocoaPlugin.InterfaceBuilder3 + + + YES + + 3 + + diff --git a/FScriptFramework/FSCollectionInspector.m b/FScriptFramework/FSCollectionInspector.m index b17cb36..65a078c 100644 --- a/FScriptFramework/FSCollectionInspector.m +++ b/FScriptFramework/FSCollectionInspector.m @@ -43,7 +43,6 @@ - (FSCollectionInspector *)initWithCollection:(id)theCollection interpreter:(FSI [self retain]; // we must stay alive while our window exist cause we are its delegate (and NSWindow doesn't retain its delegate). [NSBundle loadNibNamed:@"FSCollectionInspector.nib" owner:self]; - [collectionInspectorView setCollection:theCollection interpreter:theInterpreter blocks:blocks showExternals:showExternals]; topLeftPoint = [[collectionInspectorView window] cascadeTopLeftFromPoint:topLeftPoint]; diff --git a/FScriptFramework/FSCollectionInspector.nib/classes.nib b/FScriptFramework/FSCollectionInspector.nib/classes.nib deleted file mode 100644 index e76f40e..0000000 --- a/FScriptFramework/FSCollectionInspector.nib/classes.nib +++ /dev/null @@ -1,90 +0,0 @@ - - - - - IBClasses - - - CLASS - NSObject - LANGUAGE - ObjC - - - CLASS - FirstResponder - LANGUAGE - ObjC - SUPERCLASS - NSObject - - - ACTIONS - - add - id - browse - id - filter - id - inspect - id - modify - id - narrow - id - refresh - id - remove - id - sort - id - - CLASS - FSCollectionInspectorView - LANGUAGE - ObjC - OUTLETS - - browseButton - NSButton - contentView - NSView - inspectButton - NSButton - model - id - modifyButton - NSButton - narrowButton - NSButton - removeButton - NSButton - searchField - id - sortButton - NSButton - tableView - NSTableView - - SUPERCLASS - NSView - - - CLASS - FSCollectionInspector - LANGUAGE - ObjC - OUTLETS - - collectionInspectorView - FSCollectionInspectorView - - SUPERCLASS - NSObject - - - IBVersion - 1 - - diff --git a/FScriptFramework/FSCollectionInspector.nib/info.nib b/FScriptFramework/FSCollectionInspector.nib/info.nib deleted file mode 100644 index 8952486..0000000 --- a/FScriptFramework/FSCollectionInspector.nib/info.nib +++ /dev/null @@ -1,20 +0,0 @@ - - - - - IBFramework Version - 672 - IBLastKnownRelativeProjectPath - ../FScript.xcodeproj - IBOldestOS - 5 - IBOpenObjects - - 6 - - IBSystem Version - 9F33 - targetFramework - IBCocoaFramework - - diff --git a/FScriptFramework/FSCollectionInspector.nib/keyedobjects.nib b/FScriptFramework/FSCollectionInspector.nib/keyedobjects.nib deleted file mode 100644 index 13e76dc..0000000 Binary files a/FScriptFramework/FSCollectionInspector.nib/keyedobjects.nib and /dev/null differ diff --git a/FScriptFramework/FSCollectionInspector.xib b/FScriptFramework/FSCollectionInspector.xib new file mode 100644 index 0000000..221ee35 --- /dev/null +++ b/FScriptFramework/FSCollectionInspector.xib @@ -0,0 +1,419 @@ + + + + 1050 + 14A379a + 941 + 1343.13 + 755.00 + + com.apple.InterfaceBuilder.CocoaPlugin + 941 + + + YES + + + YES + com.apple.InterfaceBuilder.CocoaPlugin + + + PluginDependencyRecalculationVersion + + + + YES + + FSCollectionInspector + + + FirstResponder + + + NSApplication + + + 271 + 2 + {{465, 530}, {897, 309}} + 813170688 + Collection Inspector + NSWindow + View + + {1.7976931348623157e+308, 1.7976931348623157e+308} + {800, 130} + + + 256 + + YES + + + 274 + {897, 309} + + FSCollectionInspectorView + NSView + + + {897, 309} + + {{0, 0}, {1680, 1028}} + {800, 152} + {1.7976931348623157e+308, 1.7976931348623157e+308} + YES + + + + + YES + + + collectionInspectorView + + + + 49 + + + + delegate + + + + 50 + + + + + YES + + 0 + + YES + + + + + + -2 + + + File's Owner + + + -1 + + + First Responder + + + -3 + + + Application + + + 5 + + + YES + + + + Window + + + 6 + + + YES + + + + + + 48 + + + + + + + YES + + YES + -3.IBPluginDependency + -3.ImportedFromIB2 + 48.IBPluginDependency + 48.ImportedFromIB2 + 5.IBPluginDependency + 5.ImportedFromIB2 + 5.windowTemplate.hasMinSize + 5.windowTemplate.minSize + 6.IBPluginDependency + 6.ImportedFromIB2 + + + YES + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + + {800, 130} + com.apple.InterfaceBuilder.CocoaPlugin + + + + + YES + + + YES + + + + + YES + + + YES + + + + 51 + + + + YES + + FSCollectionInspector + NSObject + + collectionInspectorView + FSCollectionInspectorView + + + collectionInspectorView + + collectionInspectorView + FSCollectionInspectorView + + + + IBUserSource + + + + + FSCollectionInspectorView + NSView + + YES + + YES + add: + browse: + filter: + inspect: + modify: + narrow: + refresh: + remove: + sort: + + + YES + id + id + id + id + id + id + id + id + id + + + + YES + + YES + add: + browse: + filter: + inspect: + modify: + narrow: + refresh: + remove: + sort: + + + YES + + add: + id + + + browse: + id + + + filter: + id + + + inspect: + id + + + modify: + id + + + narrow: + id + + + refresh: + id + + + remove: + id + + + sort: + id + + + + + YES + + YES + browseButton + contentView + inspectButton + model + modifyButton + narrowButton + removeButton + searchField + sortButton + tableView + + + YES + NSButton + NSView + NSButton + id + NSButton + NSButton + NSButton + id + NSButton + NSTableView + + + + YES + + YES + browseButton + contentView + inspectButton + model + modifyButton + narrowButton + removeButton + searchField + sortButton + tableView + + + YES + + browseButton + NSButton + + + contentView + NSView + + + inspectButton + NSButton + + + model + id + + + modifyButton + NSButton + + + narrowButton + NSButton + + + removeButton + NSButton + + + searchField + id + + + sortButton + NSButton + + + tableView + NSTableView + + + + + IBUserSource + + + + + FirstResponder + + IBUserSource + + + + + NSObject + + IBUserSource + + + + + + 0 + IBCocoaFramework + + com.apple.InterfaceBuilder.CocoaPlugin.macosx + + + + com.apple.InterfaceBuilder.CocoaPlugin.InterfaceBuilder3 + + + YES + ../FScript.xcodeproj + 3 + + diff --git a/FScriptFramework/FSCollectionInspectorView.nib/classes.nib b/FScriptFramework/FSCollectionInspectorView.nib/classes.nib deleted file mode 100644 index e38155e..0000000 --- a/FScriptFramework/FSCollectionInspectorView.nib/classes.nib +++ /dev/null @@ -1,85 +0,0 @@ - - - - - IBClasses - - - CLASS - NSObject - LANGUAGE - ObjC - - - CLASS - FirstResponder - LANGUAGE - ObjC - SUPERCLASS - NSObject - - - CLASS - FSCollectionInspectorTableView - LANGUAGE - ObjC - SUPERCLASS - NSTableView - - - ACTIONS - - add - id - browse - id - filter - id - inspect - id - modify - id - narrow - id - refresh - id - remove - id - sort - id - - CLASS - FSCollectionInspectorView - LANGUAGE - ObjC - OUTLETS - - browseButton - NSButton - contentView - NSView - inspectButton - NSButton - model - id - modifyButton - NSButton - narrowButton - NSButton - removeButton - NSButton - searchField - id - sortButton - NSButton - tableView - NSTableView - - SUPERCLASS - NSView - - - IBVersion - 1 - - diff --git a/FScriptFramework/FSCollectionInspectorView.nib/info.nib b/FScriptFramework/FSCollectionInspectorView.nib/info.nib deleted file mode 100644 index b72ea1f..0000000 --- a/FScriptFramework/FSCollectionInspectorView.nib/info.nib +++ /dev/null @@ -1,20 +0,0 @@ - - - - - IBFramework Version - 677 - IBLastKnownRelativeProjectPath - ../FScript.xcodeproj - IBOldestOS - 5 - IBOpenObjects - - 48 - - IBSystem Version - 9G55 - targetFramework - IBCocoaFramework - - diff --git a/FScriptFramework/FSCollectionInspectorView.nib/keyedobjects.nib b/FScriptFramework/FSCollectionInspectorView.nib/keyedobjects.nib deleted file mode 100644 index 12bd0de..0000000 Binary files a/FScriptFramework/FSCollectionInspectorView.nib/keyedobjects.nib and /dev/null differ diff --git a/FScriptFramework/FSCollectionInspectorView.xib b/FScriptFramework/FSCollectionInspectorView.xib new file mode 100644 index 0000000..00b4bf6 --- /dev/null +++ b/FScriptFramework/FSCollectionInspectorView.xib @@ -0,0 +1,1131 @@ + + + + 1050 + 14A379a + 941 + 1343.13 + 755.00 + + com.apple.InterfaceBuilder.CocoaPlugin + 941 + + + YES + + + YES + com.apple.InterfaceBuilder.CocoaPlugin + + + PluginDependencyRecalculationVersion + + + + YES + + FSCollectionInspectorView + + + FirstResponder + + + NSApplication + + + + 274 + + YES + + + 268 + {{661, 345}, {80, 25}} + + YES + + 67108864 + 134217728 + Refresh + + .HelveticaNeueDeskInterface-Regular + 13 + 1040 + + + -2038284288 + 32 + + + + + + 200 + 25 + + NO + + + + 268 + {{194, 345}, {80, 25}} + + YES + + 603979776 + 134217728 + Remove + + + -2038284288 + 32 + + + + + + 200 + 25 + + NO + + + + 268 + {{9, 345}, {80, 25}} + + YES + + 67108864 + 134217728 + Add + + + -2038284288 + 32 + + LucidaGrande + 13 + 16 + + + + + + 200 + 25 + + NO + + + + 268 + {{102, 345}, {80, 25}} + + YES + + 603979776 + 134217728 + Modify + + + -2038284288 + 32 + + + + + + 200 + 25 + + NO + + + + 268 + {{287, 345}, {80, 25}} + + YES + + 603979776 + 134217728 + Sort + + + -2038284288 + 32 + + + + + + 200 + 25 + + NO + + + + 268 + {{381, 345}, {80, 25}} + + YES + + 603979776 + 134217728 + Inspect + + + -2038284288 + 32 + + + + + + 200 + 25 + + NO + + + + 268 + {{475, 345}, {80, 25}} + + YES + + 603979776 + 134217728 + Browse + + + -2038284288 + 32 + + + + + + 200 + 25 + + NO + + + + 266 + {{753, 347}, {129, 22}} + + YES + + 342884416 + 1024 + + + + YES + 1 + + 6 + System + textBackgroundColor + + 3 + MQA + + + + 6 + System + controlTextColor + + 3 + MAA + + + + 0 + 0 + search + + _searchFieldSearch: + + 138690560 + 0 + + 400 + 75 + + + 0 + 0 + clear + + YES + + YES + + YES + AXDescription + NSAccessibilityEncodedAttributesValueType + + + YES + cancel + + + + + _searchFieldCancel: + + 138428416 + 0 + + 400 + 75 + + 255 + BgAAAA + + NO + 1 + + + + 268 + {{568, 345}, {80, 25}} + + YES + + 603979776 + 134217728 + Narrow + + + -2038284288 + 32 + + + + + + 200 + 25 + + NO + + + + 274 + + YES + + + 2304 + + YES + + + 256 + {907, 322} + + YES + NO + YES + + + 256 + {907, 17} + + + + + + -2147483392 + {{-26, 0}, {16, 17}} + + + + YES + + 3 + 2 + + + 6 + System + gridColor + + 3 + MC41AA + + + 16 + -559906816 + + + 1 + 15 + 0 + YES + 0 + 1 + + + {{0, 17}, {907, 322}} + + + + + 6 + System + controlBackgroundColor + + 3 + MC42NjY2NjY2NjY3AA + + + 4 + YES + + + + -2147483392 + {{886, 17}, {15, 307}} + + NO + _doScroller: + + + _doScroller: + 0.99378883838653564 + + + + -2147483392 + {{1, 323}, {880, 15}} + + NO + _doScroller: + + 1 + + _doScroller: + 0.98331481218338013 + + + + 2304 + + YES + + + {907, 17} + + + + YES + + + + {907, 339} + + + 133680 + + + + + QSAAAEEgAABBkAAAQZAAAA + 0.25 + 4 + 1 + + + {907, 378} + + NSView + + NSResponder + + + + + YES + + + browseButton + + + + 60 + + + + contentView + + + + 61 + + + + inspectButton + + + + 62 + + + + modifyButton + + + + 63 + + + + narrowButton + + + + 64 + + + + removeButton + + + + 65 + + + + sortButton + + + + 66 + + + + searchField + + + + 67 + + + + tableView + + + + 68 + + + + add: + + + + 69 + + + + sort: + + + + 72 + + + + inspect: + + + + 73 + + + + browse: + + + + 74 + + + + narrow: + + + + 75 + + + + refresh: + + + + 76 + + + + filter: + + + + 77 + + + + delegate + + + + 78 + + + + dataSource + + + + 79 + + + + remove: + + + + 80 + + + + modify: + + + + 81 + + + + + YES + + 0 + + YES + + + + + + -2 + + + File's Owner + + + -1 + + + First Responder + + + -3 + + + Application + + + 48 + + + YES + + + + + + + + + + + + + View + + + 49 + + + YES + + + + + + + + + 50 + + + + + 51 + + + YES + + + + + + 52 + + + YES + + + + + + 53 + + + YES + + + + + + 54 + + + YES + + + + + + 55 + + + YES + + + + + + 56 + + + YES + + + + + + 57 + + + YES + + + + + + 58 + + + YES + + + + + + 59 + + + YES + + + + + + 83 + + + + + 84 + + + + + 85 + + + + + 86 + + + + + 87 + + + + + 88 + + + + + 89 + + + + + 90 + + + + + 91 + + + + + 92 + + + + + 93 + + + + + 94 + + + + + + + YES + + YES + -3.IBPluginDependency + -3.ImportedFromIB2 + 48.IBPluginDependency + 48.ImportedFromIB2 + 49.IBPluginDependency + 49.ImportedFromIB2 + 50.CustomClassName + 50.IBPluginDependency + 50.ImportedFromIB2 + 51.IBPluginDependency + 51.ImportedFromIB2 + 52.IBPluginDependency + 52.ImportedFromIB2 + 53.IBPluginDependency + 53.ImportedFromIB2 + 54.IBPluginDependency + 54.ImportedFromIB2 + 55.IBPluginDependency + 55.ImportedFromIB2 + 56.IBPluginDependency + 56.ImportedFromIB2 + 57.IBPluginDependency + 57.ImportedFromIB2 + 58.IBPluginDependency + 58.ImportedFromIB2 + 59.IBPluginDependency + 59.ImportedFromIB2 + 92.IBShouldRemoveOnLegacySave + 93.IBShouldRemoveOnLegacySave + 94.IBShouldRemoveOnLegacySave + + + YES + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + FSCollectionInspectorTableView + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + + + + + + + YES + + + YES + + + + + YES + + + YES + + + + 94 + + + + YES + + FSCollectionInspectorTableView + NSTableView + + IBUserSource + + + + + FSCollectionInspectorView + NSView + + YES + + YES + add: + browse: + filter: + inspect: + modify: + narrow: + refresh: + remove: + sort: + + + YES + id + id + id + id + id + id + id + id + id + + + + YES + + YES + add: + browse: + filter: + inspect: + modify: + narrow: + refresh: + remove: + sort: + + + YES + + add: + id + + + browse: + id + + + filter: + id + + + inspect: + id + + + modify: + id + + + narrow: + id + + + refresh: + id + + + remove: + id + + + sort: + id + + + + + YES + + YES + browseButton + contentView + inspectButton + model + modifyButton + narrowButton + removeButton + searchField + sortButton + tableView + + + YES + NSButton + NSView + NSButton + id + NSButton + NSButton + NSButton + id + NSButton + NSTableView + + + + YES + + YES + browseButton + contentView + inspectButton + model + modifyButton + narrowButton + removeButton + searchField + sortButton + tableView + + + YES + + browseButton + NSButton + + + contentView + NSView + + + inspectButton + NSButton + + + model + id + + + modifyButton + NSButton + + + narrowButton + NSButton + + + removeButton + NSButton + + + searchField + id + + + sortButton + NSButton + + + tableView + NSTableView + + + + + IBUserSource + + + + + FirstResponder + + IBUserSource + + + + + NSObject + + IBUserSource + + + + + + 0 + IBCocoaFramework + + com.apple.InterfaceBuilder.CocoaPlugin.macosx + + + + com.apple.InterfaceBuilder.CocoaPlugin.InterfaceBuilder3 + + + YES + ../FScript.xcodeproj + 3 + + diff --git a/FScriptFramework/FSColorWell.h b/FScriptFramework/FSColorWell.h new file mode 100644 index 0000000..24634c8 --- /dev/null +++ b/FScriptFramework/FSColorWell.h @@ -0,0 +1,12 @@ +// +// FSColorWell.h +// FScript +// +// Created by Anthony Dervish on 20/11/2014. +// +// + +#import + +@interface FSColorWell : NSColorWell +@end diff --git a/FScriptFramework/FSColorWell.m b/FScriptFramework/FSColorWell.m new file mode 100644 index 0000000..782f00f --- /dev/null +++ b/FScriptFramework/FSColorWell.m @@ -0,0 +1,24 @@ +// +// FSColorWell.m +// FScript +// +// Created by Anthony Dervish on 20/11/2014. +// +// + +#import "FSColorWell.h" + +@implementation FSColorWell + +- (void)drawRect:(NSRect)dirtyRect +{ + [super drawRect:dirtyRect]; + + // Drawing code here. +} + +- (void)mouseDown:(NSEvent*)theEvent +{ + [self sendAction:self.action to:self.target]; +} +@end diff --git a/FScriptFramework/FSCommandHistory.h b/FScriptFramework/FSCommandHistory.h index 0746de9..f9ab49a 100644 --- a/FScriptFramework/FSCommandHistory.h +++ b/FScriptFramework/FSCommandHistory.h @@ -26,7 +26,7 @@ store is removed. @interface FSCommandHistory : NSObject { NSMutableArray *array; // an array of NSString - NSInteger head, queue, cursor; + NSInteger head, queue, cursor, size; } - (id)addStr:(NSString *)str; // adds a string @@ -44,5 +44,7 @@ store is removed. // set to the value of the argument. The receiver is filled // with empty strings. - (NSInteger)size; +-(void)save; ++(FSCommandHistory*)latestHistoryWithSize:(NSUInteger)size; @end diff --git a/FScriptFramework/FSCommandHistory.m b/FScriptFramework/FSCommandHistory.m index 10935a8..48e547f 100644 --- a/FScriptFramework/FSCommandHistory.m +++ b/FScriptFramework/FSCommandHistory.m @@ -5,30 +5,48 @@ @implementation FSCommandHistory -- (id)addStr:(NSString *)str -{ - if ([array count] != 0) + +- (id)init {return [self initWithUIntSize:0];} + +- (id)initWithUIntSize:(NSUInteger)maxSize +{ + if ((self = [super init])) { - head = (head+1) % [array count]; - if (head == queue) queue = (queue+1) % [array count]; - [array replaceObjectAtIndex:head withObject:str]; - [self goToLast]; - } - return self; -} - + size = maxSize; + array = [[NSMutableArray alloc] initWithCapacity:maxSize]; + [array addObject:@""]; + head = 0; queue =0; + return self; + } + return nil; +} - (void)dealloc { [array release]; [super dealloc]; -} +} + +-(void)resizeToSize:(NSUInteger)newSize +{ + // TODO +} - (void)encodeWithCoder:(NSCoder *)coder { - [coder encodeObject:array forKey:@"array"]; - [coder encodeInteger:head forKey:@"head"]; - [coder encodeInteger:queue forKey:@"queue"]; - [coder encodeInteger:cursor forKey:@"cursor"]; + if ([coder allowsKeyedCoding]) + { + [coder encodeObject:array forKey:@"array"]; + [coder encodeInteger:head forKey:@"head"]; + [coder encodeInteger:queue forKey:@"queue"]; + [coder encodeInteger:cursor forKey:@"cursor"]; + } + else { + [coder encodeObject:array] ; + [coder encodeValueOfObjCType:@encode(NSInteger) at:&head]; + [coder encodeValueOfObjCType:@encode(NSInteger) at:&queue]; + [coder decodeValueOfObjCType:@encode(NSInteger) at:&cursor]; + + } } - (id)initWithCoder:(NSCoder *)coder @@ -36,22 +54,18 @@ - (id)initWithCoder:(NSCoder *)coder self = [super init]; if ([coder allowsKeyedCoding]) { - array = [[coder decodeObjectForKey:@"array"] retain]; + array = [[coder decodeObjectForKey:@"array"] mutableCopy]; head = [coder decodeIntegerForKey:@"head"]; queue = [coder decodeIntegerForKey:@"queue"]; cursor= [coder decodeIntegerForKey:@"cursor"]; } else { - int intHead, intQueue, intCursor; array = [[coder decodeObject] retain]; - [coder decodeValueOfObjCType:@encode(int) at:&intHead]; - head = intHead; - [coder decodeValueOfObjCType:@encode(int) at:&intQueue]; - queue = intQueue; - [coder decodeValueOfObjCType:@encode(int) at:&intCursor]; - cursor = intCursor; - } + [coder decodeValueOfObjCType:@encode(NSInteger) at:&head]; + [coder decodeValueOfObjCType:@encode(NSInteger) at:&queue]; + [coder decodeValueOfObjCType:@encode(NSInteger) at:&cursor]; + } return self; } @@ -69,10 +83,10 @@ - (id)goToLast - (id)goToNext { - if ([array count] != 0) + if (size != 0) { if (cursor == head) cursor = queue; - else cursor = (cursor+1) % [array count]; + else cursor = (cursor+1) % array.count; } return self; } @@ -82,37 +96,91 @@ - (id)goToPrevious if([array count] != 0) { if (cursor == queue) cursor = head; - else cursor = (cursor-1+[array count]) % [array count]; + else cursor = (cursor - 1 + array.count) % array.count; } return self; } - (NSString *)getMostRecentlyInsertedStr { - if ([array count] != 0) return [array objectAtIndex:head]; - else return(@""); + return (size != 0) ? [array objectAtIndex:head] : @""; } - (NSString *)getStr { - if ([array count] != 0) return [array objectAtIndex:cursor]; - else return(@""); -} + return (size != 0) ? [array objectAtIndex:cursor] : @""; +} + +- (id)addStr:(NSString *)str +{ + if (size != 0) + { + if (head == array.count-1 && array.count < size) { [array addObject:@""]; } + head = (head+1) % size; + if (head == queue) queue = (queue+1) % size; + [array replaceObjectAtIndex:head withObject:str]; + [self goToLast]; + } + [self save]; + return self; +} -- (id)init {return [self initWithUIntSize:0];} -- (id)initWithUIntSize:(NSUInteger)size ++(NSString*)_historyPath:(NSError**)errorOut { - if ((self = [super init])) - { - array = [[NSMutableArray alloc] initWithCapacity:size]; - head = 0; queue =0; - for (; size > 0; size--) [array addObject:@""]; - return self; + static NSString *sHistoryPath = nil; + if (sHistoryPath == nil) { + NSArray* paths = NSSearchPathForDirectoriesInDomains( NSApplicationSupportDirectory, NSUserDomainMask, YES ) ; + if ( paths.count ) { + NSBundle *appBundle = [NSBundle mainBundle]; + NSString *appName = [ appBundle.infoDictionary objectForKey:@"CFBundleExecutable" ]; + NSString *applicationSupportDir = [paths[0] stringByAppendingPathComponent:appName]; + NSFileManager *fileManager = [NSFileManager new]; + if (![fileManager fileExistsAtPath:applicationSupportDir]) { + NSError *error = nil ; + BOOL success = [ fileManager + createDirectoryAtPath:applicationSupportDir + withIntermediateDirectories:YES + attributes:nil + error:&error ] ; + if ( !success ) { + if ( errorOut ) { + *errorOut = error ; + } + [fileManager release]; + return nil ; + } + } + sHistoryPath = [applicationSupportDir stringByAppendingPathComponent:@"FScriptHistory.dat"]; + [sHistoryPath retain]; + } } - return nil; -} - -- (NSInteger)size {return [array count];} + return sHistoryPath; +} +-(void)save +{ + NSString *historyPath = [FSCommandHistory _historyPath:nil]; + if (historyPath) { + NSData *archiveData = [NSKeyedArchiver archivedDataWithRootObject:self]; + if (archiveData.length) { + [archiveData writeToFile:historyPath atomically:YES]; + } + } +} + ++(FSCommandHistory*)latestHistoryWithSize:(NSUInteger)maxSize +{ + NSString *historyPath = [FSCommandHistory _historyPath:nil]; + FSCommandHistory *history = nil; + NSFileManager *fileManager = [NSFileManager new]; + if (historyPath && [fileManager fileExistsAtPath:historyPath]) { + history = [[NSKeyedUnarchiver unarchiveObjectWithFile:historyPath] retain]; + history->size = maxSize; + } + [fileManager release]; + return history ?: [[FSCommandHistory alloc] initWithUIntSize:maxSize]; + + +} @end diff --git a/FScriptFramework/FSConsole.xib b/FScriptFramework/FSConsole.xib new file mode 100644 index 0000000..811a1e1 --- /dev/null +++ b/FScriptFramework/FSConsole.xib @@ -0,0 +1,38 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/FScriptFramework/FSConstantsInitialization.m b/FScriptFramework/FSConstantsInitialization.m index 68fa276..89b2645 100644 --- a/FScriptFramework/FSConstantsInitialization.m +++ b/FScriptFramework/FSConstantsInitialization.m @@ -34,7 +34,7 @@ void FSConstantsInitialization(NSMutableDictionary *d) [d setObject:[NSNumber numberWithLong:NSIntegerMax] forKey:@"NSIntegerMax"]; [d setObject:[NSNumber numberWithLong:NSIntegerMin] forKey:@"NSIntegerMin"]; [d setObject:[NSNumber numberWithUnsignedLong:NSUIntegerMax] forKey:@"NSUIntegerMax"]; - [d setObject:[NSNumber numberWithLong:NSUndefinedDateComponent] forKey:@"NSUndefinedDateComponent"]; + [d setObject:[NSNumber numberWithLong:NSDateComponentUndefined] forKey:@"NSDateComponentUndefined"]; #ifdef __LP64__ // 64-bit code diff --git a/FScriptFramework/FSDetailedObjectInspector.h b/FScriptFramework/FSDetailedObjectInspector.h new file mode 100644 index 0000000..49e3e70 --- /dev/null +++ b/FScriptFramework/FSDetailedObjectInspector.h @@ -0,0 +1,21 @@ +// FSGenericObjectInspector.h Copyright (c) 2001-2009 Philippe Mougin. +// This software is open source. See the license. + +#import + +@class FSObjectInspectorViewModelItem; +@class FSInterpreter; + +@interface FSDetailedObjectInspector : NSObject +@property (strong,nonatomic) id inspectedObject; +@property (readonly,nonatomic) NSWindow *window; +@property (strong,nonatomic) FSInterpreter* interpreter; + ++ (FSDetailedObjectInspector*)detailedObjectInspectorWithObject:(id)object interpreter:(FSInterpreter*)interpreter; +- (FSDetailedObjectInspector *)initWithObject:(id)object interpreter:(FSInterpreter*)interpreter; + +- (void)windowWillClose:(NSNotification *)aNotification; +-(IBAction)refreshModel:(id)sender; +- (IBAction)browseAction:(id)sender; + +@end diff --git a/FScriptFramework/FSDetailedObjectInspector.m b/FScriptFramework/FSDetailedObjectInspector.m new file mode 100644 index 0000000..eb251df --- /dev/null +++ b/FScriptFramework/FSDetailedObjectInspector.m @@ -0,0 +1,178 @@ +// FSDetailedObjectInspector.m Copyright (c) 2001-2009 Philippe Mougin. +// This software is open source. See the license. + +#import "FSDetailedObjectInspector.h" +#import "FSMiscTools.h" +#import "FSInterpreter.h" +#import "FSObjectInspectorViewModelItem.h" +#import "FSObjectInspectorViewController.h" +#import "FSObjectBrowserViewObjectInfo.h" +#import "FSUtils.h" + +static NSPoint sTopLeftPoint = { 0, 0 }; // Used for cascading windows. +static BOOL sIsFirstWindow = YES; +static void *TREE_OBSERVATION_CONTEXT = &TREE_OBSERVATION_CONTEXT; + +@interface NSTreeNode (FSTraversal) +-(void)fs_visitNodesWithBlock:(void(^)(NSTreeNode*node))block; +@end +@implementation NSTreeNode (FSTraversal) +-(void)fs_visitNodesWithBlock:(void(^)(NSTreeNode*node))block +{ + assert(block && "block cannot be nil"); + block(self); + for (NSTreeNode *child in self.childNodes) { + [child fs_visitNodesWithBlock:block]; + } +} +@end + + + +@interface FSDetailedObjectInspector () +@property (strong,readwrite,nonatomic) NSWindow *window; +@property (strong,nonatomic) FSObjectInspectorViewController *viewController; +@property (strong,nonatomic) FSObjectInspectorViewModelItem *rootViewModelItem; +@end + +@implementation FSDetailedObjectInspector { +} + ++ (FSDetailedObjectInspector*)detailedObjectInspectorWithObject:(id)object interpreter:(FSInterpreter*)interpreter +{ + return [[self alloc] initWithObject:object interpreter:(FSInterpreter*)interpreter]; +} + +- (FSDetailedObjectInspector *)initWithObject:(id)object interpreter:(FSInterpreter*)interpreter +{ + if ((self = [super init])) { + NSPanel* panel = [[NSPanel alloc] initWithContentRect:NSMakeRect(100.0, 100.0, 500.0, 300.0) + styleMask:(NSClosableWindowMask | NSTitledWindowMask | NSResizableWindowMask) + backing:NSBackingStoreBuffered + defer:NO]; + panel.delegate = self; +#if MAC_OS_X_VERSION_MIN_REQUIRED >= MAC_OS_X_VERSION_10_10 + panel.appearance = [NSAppearance appearanceNamed:NSAppearanceNameVibrantDark]; +#endif + self.interpreter = interpreter; + self.window = panel; + + _inspectedObject = object; + FSObjectInspectorViewController *objectInspectorViewController = [[FSObjectInspectorViewController alloc] initWithNibName:@"FSObjectInspectorViewController" bundle:[NSBundle bundleForClass:self.class]]; + self.viewController = objectInspectorViewController; + objectInspectorViewController.inspector = self; + objectInspectorViewController.interpreter = self.interpreter; + [self refreshModel:self]; + panel.contentView = objectInspectorViewController.view; + NSSize desiredSize = self.viewController.desiredSize; + [panel setFrame:[panel frameRectForContentRect:rectWithSize(desiredSize)] display:YES]; + sTopLeftPoint = [self.window cascadeTopLeftFromPoint:sTopLeftPoint]; + if (sIsFirstWindow) { + sIsFirstWindow = NO; + sTopLeftPoint = [self.window cascadeTopLeftFromPoint:sTopLeftPoint]; + } + [self.window makeKeyAndOrderFront:nil]; + return self; + } + return nil; +} + + +-(void)dealloc +{ + //NSLog(@"Dealloc %@",self); + [self _unwatchItems]; +} + + +-(IBAction)refreshModel:(id)sender +{ + [self.window setTitle:[NSString stringWithFormat:@"Inspecting %@ at address %p", descriptionForFSMessage(self.inspectedObject), self.inspectedObject]]; + FSObjectBrowserViewObjectHelper *objectInfoHelper = [FSObjectBrowserViewObjectHelper new]; + [objectInfoHelper introspectPropertiesOfObject:self.inspectedObject]; + [objectInfoHelper populateModelWithObject:self.inspectedObject]; + self.rootViewModelItem = objectInfoHelper.rootViewModelItem; + self.viewController.rootViewModelItem = self.rootViewModelItem; +} +- (IBAction)browseAction:(id)sender +{ + [self.interpreter browse:self.inspectedObject]; +} + +/////////////////// Window delegate callbacks + +- (void)windowWillClose:(NSNotification*)aNotification +{ +} + +/* + * + * + *================================================================================================*/ +#pragma mark - Properties +/*================================================================================================== + */ + + +-(void)setRootViewModelItem:(FSObjectInspectorViewModelItem *)rootViewModelItem +{ + [self _unwatchItems]; + _rootViewModelItem = rootViewModelItem; + [self _watchItems]; +} + +-(void)observeValueForKeyPath:(NSString *)keyPath ofObject:(id)object change:(NSDictionary *)change context:(void *)context +{ + if (context == TREE_OBSERVATION_CONTEXT) { + NSLog(@"Value changed for %@. Change = %@", object, change); + id target = self.inspectedObject; + FSObjectInspectorViewModelItem *item = object; + @try { + if (item.setter) { + if (item.valueType == FS_ITEM_OBJECT + || item.valueType == FS_ITEM_RECT + || item.valueType == FS_ITEM_SIZE + || item.valueType == FS_ITEM_RANGE + || item.valueType == FS_ITEM_POINT + ) { + item.setter(target, item.value, item); + NSLog(@"[%@ setValue:%@ forKey:%@",target,item.value,item.getter); + } + else { + item.setter(target, @(item.numValue), item); + NSLog(@"[%@ setValue:%@ forKey:%@",target,@(item.numValue),item.getter); + } + } + } + @catch(NSException *e) { + NSLog(@"Exception when setting value for key %@ on %@: %@", keyPath, target, e); + } + } +} +/* + * + * + *================================================================================================*/ +#pragma mark - Utilities +/*================================================================================================== + */ + + +-(void)_watchItems +{ + [self.rootViewModelItem fs_visitNodesWithBlock:^(NSTreeNode *node) { + [node addObserver:self + forKeyPath:@"value" + options:0 + context:TREE_OBSERVATION_CONTEXT]; + }]; +} +-(void)_unwatchItems +{ + [self.rootViewModelItem fs_visitNodesWithBlock:^(NSTreeNode *node) { + [node removeObserver:self + forKeyPath:@"value" ]; + }]; +} + +@end diff --git a/FScriptFramework/FSExecEngine.m b/FScriptFramework/FSExecEngine.m index 3372631..6241452 100644 --- a/FScriptFramework/FSExecEngine.m +++ b/FScriptFramework/FSExecEngine.m @@ -144,6 +144,7 @@ id FSMapToObject(void *valuePtr, NSUInteger index, char fsEncodedType, const cha case fscode_CGSize: return [NSValue valueWithSize:((NSSize *)valuePtr)[index]]; case fscode_NSRect: case fscode_CGRect: return [NSValue valueWithRect:((NSRect *)valuePtr)[index]]; + case fscode_NSEdgeInsets: return [NSValue valueWithEdgeInsets:((NSEdgeInsets *)valuePtr)[index]]; case fscode_CGAffineTransform: return FSNSAffineTransformFromCGAffineTransform(((CGAffineTransform *)valuePtr)[index]); case '*': case '^': @@ -303,6 +304,13 @@ void FSMapFromObject(void *valuePtr, NSUInteger index, char fsEncodedType, id ob else if (strcmp([object objCType], @encode(NSRect)) != 0) FSExecError([NSString stringWithFormat:@"%@ must be an NSValue containing a NSRect", description(mapType, argumentNumber, selector, ivarName)]); else ((NSRect *)valuePtr)[index] = [object rectValue]; break; + } + case fscode_NSEdgeInsets: + { + if (![object isKindOfClass:[NSValue class]]) FSExecError([NSString stringWithFormat:@"%@ is %@. An instance of NSValue containing a NSEdgeInsets was expected", description(mapType, argumentNumber, selector, ivarName), descriptionForFSMessage(object)]); + else if (strcmp([object objCType], @encode(NSEdgeInsets)) != 0) FSExecError([NSString stringWithFormat:@"%@ must be an NSValue containing a NSEdgeInsets", description(mapType, argumentNumber, selector, ivarName)]); + else ((NSEdgeInsets *)valuePtr)[index] = [object edgeInsetsValue]; + break; } case fscode_CGAffineTransform: { @@ -859,7 +867,7 @@ id sendMsgPattern(id receiver, SEL selector, NSUInteger argumentCount, id *args, r_size_tab[currentDeep] = size; } - subArgs[1] = (id)selector; + subArgs[1] = (id)sel_getName(selector); if ([pattern isSimpleLoopOnReceiver]) { @@ -872,10 +880,10 @@ id sendMsgPattern(id receiver, SEL selector, NSUInteger argumentCount, id *args, id r; args[0] = [receiver arrayRep]; - args[1] = (id)wiredSelector; + args[1] = (id)sel_getName(wiredSelector); r = sendMsgNoPattern(args[0], wiredSelector, argumentCount, args, msgContext, nil); args[0] = receiver; - args[1] = (id)selector; + args[1] = (id)sel_getName(selector); return r; } } @@ -944,11 +952,11 @@ id sendMsgPattern(id receiver, SEL selector, NSUInteger argumentCount, id *args, args[0] = [receiver arrayRep]; //((SEL)args[1]) = wiredSelector; - args[1] = (id)wiredSelector; + args[1] = (id)sel_getName(wiredSelector); r = sendMsgNoPattern(args[0], wiredSelector, argumentCount, args, msgContext, nil); args[0] = receiver; - args[1] = (id)selector; + args[1] = (id)sel_getName(selector); return r; } } @@ -1298,7 +1306,7 @@ id execute_rec(FSCNBase *codeNode, FSSymbolTable *localSymbolTable, NSInteger *e @try { arguments[0] = execute_rec(node->receiver, localSymbolTable, errorFirstCharIndexPtr, errorLastCharIndexPtr); - arguments[1] = (id)(node->selector ); + arguments[1] = (id)sel_getName(node->selector); if (codeNode->nodeType == BINARY_MESSAGE) arguments[2] = execute_rec( ((FSCNBinaryMessage *)node)->argument, localSymbolTable, errorFirstCharIndexPtr, errorLastCharIndexPtr); else if (codeNode->nodeType == KEYWORD_MESSAGE) @@ -1386,7 +1394,7 @@ id execute_rec(FSCNBase *codeNode, FSSymbolTable *localSymbolTable, NSInteger *e @try { arguments[0] = receiver; - arguments[1] = (id)(messageNode->selector); + arguments[1] = (id)sel_getName(messageNode->selector); if (messageNode->nodeType == BINARY_MESSAGE) arguments[2] = execute_rec( ((FSCNBinaryMessage *)messageNode)->argument, localSymbolTable, errorFirstCharIndexPtr, errorLastCharIndexPtr); else if (messageNode->nodeType == KEYWORD_MESSAGE) diff --git a/FScriptFramework/FSGenericPointer.m b/FScriptFramework/FSGenericPointer.m index ffd6c3e..ea9c6fe 100644 --- a/FScriptFramework/FSGenericPointer.m +++ b/FScriptFramework/FSGenericPointer.m @@ -187,6 +187,7 @@ - (NSArray *)memoryContent case fscode_CGSize: itemSize = sizeof(NSSize); break; case fscode_NSRect: case fscode_CGRect: itemSize = sizeof(NSRect); break; + case fscode_NSEdgeInsets: itemSize = sizeof(NSEdgeInsets); break; case fscode_CGAffineTransform: itemSize = sizeof(CGAffineTransform); break; default: itemSize = 0; } diff --git a/FScriptFramework/FSImageInspector.nib/classes.nib b/FScriptFramework/FSImageInspector.nib/classes.nib deleted file mode 100644 index f7b5321..0000000 --- a/FScriptFramework/FSImageInspector.nib/classes.nib +++ /dev/null @@ -1,24 +0,0 @@ -{ - IBClasses = ( - { - CLASS = FSGenericObjectInspector; - LANGUAGE = ObjC; - OUTLETS = { - imageView = NSImageView; - inspectedObject = id; - printStringView = NSTextView; - window = NSWindow; - }; - SUPERCLASS = NSObject; - }, - { - CLASS = FSImageInspector; - LANGUAGE = ObjC; - OUTLETS = {imageView = NSImageView; window = NSWindow; }; - SUPERCLASS = NSObject; - }, - {CLASS = FirstResponder; LANGUAGE = ObjC; SUPERCLASS = NSObject; }, - {CLASS = ImageViewTest; LANGUAGE = ObjC; SUPERCLASS = NSImageView; } - ); - IBVersion = 1; -} \ No newline at end of file diff --git a/FScriptFramework/FSImageInspector.nib/info.nib b/FScriptFramework/FSImageInspector.nib/info.nib deleted file mode 100644 index 0d36d77..0000000 --- a/FScriptFramework/FSImageInspector.nib/info.nib +++ /dev/null @@ -1,16 +0,0 @@ - - - - - IBDocumentLocation - 149 39 356 240 0 0 1440 878 - IBFramework Version - 428.0 - IBOpenObjects - - 5 - - IBSystem Version - 8A369 - - diff --git a/FScriptFramework/FSImageInspector.nib/objects.nib b/FScriptFramework/FSImageInspector.nib/objects.nib deleted file mode 100644 index a664116..0000000 Binary files a/FScriptFramework/FSImageInspector.nib/objects.nib and /dev/null differ diff --git a/FScriptFramework/FSImageInspector.xib b/FScriptFramework/FSImageInspector.xib new file mode 100644 index 0000000..ad64d93 --- /dev/null +++ b/FScriptFramework/FSImageInspector.xib @@ -0,0 +1,360 @@ + + + + 1060 + 14A379a + 941 + 1343.13 + 755.00 + + com.apple.InterfaceBuilder.CocoaPlugin + 941 + + + YES + + + YES + com.apple.InterfaceBuilder.CocoaPlugin + + + PluginDependencyRecalculationVersion + + + + YES + + FSImageInspector + + + FirstResponder + + + NSApplication + + + 15 + 2 + {{525, 117}, {498, 392}} + 813170688 + Image Inspector + NSWindow + + View + + + {1.7976931348623157e+308, 1.7976931348623157e+308} + {120.1300048828125, 5} + + + 256 + + YES + + + 274 + + YES + + + 2304 + + YES + + + 301 + + YES + + {480, 281} + + NSImageView + NSControl + + + {483, 377} + + + + + 6 + System + controlColor + + 3 + MC42NjY2NjY2NjY3AA + + + 4 + YES + + + + 256 + {{483, 0}, {15, 377}} + + NO + _doScroller: + + + _doScroller: + 0.96441280841827393 + + + + 256 + {{0, 377}, {483, 15}} + + NO + _doScroller: + + 1 + + _doScroller: + 0.25 + 0.99166667461395264 + + + {498, 392} + + + 1050672 + + + + 0.25 + 4 + 1 + {0, 0, 0, 0} + + + {{1, 9}, {498, 392}} + + {{0, 0}, {1440, 878}} + {120.1300048828125, 27} + {1.7976931348623157e+308, 1.7976931348623157e+308} + YES + + + + + YES + + + window + + + + 11 + + + + imageView + + + + 20 + + + + delegate + + + + 21 + + + + + YES + + 0 + + YES + + + + + + -2 + + + File's Owner + + + -1 + + + First Responder + + + 5 + + + YES + + + + Window + + + 6 + + + YES + + + + + + 19 + + + YES + + + + + + + + 18 + + + + + 24 + + + + + 25 + + + + + -3 + + + Application + + + + + YES + + YES + 18.IBPluginDependency + 18.ImportedFromIB2 + 19.IBPluginDependency + 19.ImportedFromIB2 + 24.IBShouldRemoveOnLegacySave + 25.IBShouldRemoveOnLegacySave + 5.IBPluginDependency + 5.ImportedFromIB2 + 5.windowTemplate.hasMinSize + 5.windowTemplate.minSize + 6.IBPluginDependency + 6.ImportedFromIB2 + + + YES + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + + + com.apple.InterfaceBuilder.CocoaPlugin + + + {120.1300048828125, 5} + com.apple.InterfaceBuilder.CocoaPlugin + + + + + YES + + + YES + + + + + YES + + + YES + + + + 25 + + + + YES + + FSImageInspector + NSObject + + YES + + YES + imageView + window + + + YES + NSImageView + NSWindow + + + + YES + + YES + imageView + window + + + YES + + imageView + NSImageView + + + window + NSWindow + + + + + IBUserSource + + + + + FirstResponder + + IBUserSource + + + + + + 0 + IBCocoaFramework + + com.apple.InterfaceBuilder.CocoaPlugin.macosx + + + + com.apple.InterfaceBuilder.CocoaPlugin.InterfaceBuilder3 + + + YES + + 3 + + diff --git a/FScriptFramework/FSManagedObjectContextInspector.nib/designable.nib b/FScriptFramework/FSManagedObjectContextInspector.nib/designable.nib deleted file mode 100644 index d361e87..0000000 --- a/FScriptFramework/FSManagedObjectContextInspector.nib/designable.nib +++ /dev/null @@ -1,1031 +0,0 @@ - - - - 1060 - 11C74 - 1938 - 1138.23 - 567.00 - - com.apple.InterfaceBuilder.CocoaPlugin - 1938 - - - NSObjectController - NSPopUpButtonCell - NSScroller - NSPopUpButton - NSButton - NSMenu - NSScrollView - NSButtonCell - NSMenuItem - NSBox - NSTabView - NSCustomView - NSTabViewItem - NSView - NSWindowTemplate - NSTextView - NSCustomObject - - - com.apple.InterfaceBuilder.CocoaPlugin - - - PluginDependencyRecalculationVersion - - - - - FSManagedObjectContextInspector - - - FirstResponder - - - NSApplication - - - 271 - 2 - {{191, 138}, {896, 395}} - 813170688 - Managed Object Context Inspector - - NSWindow - - - View - - - {854, 282} - - - 256 - - - - 274 - {{0, 100}, {896, 294}} - - - - - collection - - - 256 - - - - 274 - {896, 294} - - FSCollectionInspectorView - NSView - - - {896, 294} - - - collection - - 6 - System - controlColor - - 3 - MC42NjY2NjY2NjY3AA - - - - - - message - - - 256 - - - - 274 - - - - 2304 - - - - 2322 - {{0, 62}, {898, 132}} - - - - - - - CgkJCQkJCQkJCQkJCQoJCQkKCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCk5vIG9iamVjdCBmZXRjaGVk -IHlldA - - - - - Helvetica - 12 - 16 - - - 4 - - - - - - Helvetica - 14 - 16 - - - 2 - - - 28 - - - 56 - - - 84 - - - 112 - - - 140 - - - 168 - - - 196 - - - 224 - - - 252 - - - 280 - - - 308 - - - 336 - - - - - - - KwAVAQ - - - - - - - 6 - - - - 898 - 1 - - - 67119973 - 0 - - - 3 - MQA - - - - 6 - System - selectedTextBackgroundColor - - - - 6 - System - selectedTextColor - - 3 - MAA - - - - - - - 1 - MCAwIDEAA - - - - - - 1 - - 6 - {898, 10000000} - {799, 132} - - - - {896, 294} - - - - - - {4, 5} - - 12582912 - - - - - - TU0AKgAAAHCAFUqgBVKsAAAAwdVQUqwaEQeIRGJRGFlYqwWLQ+JxuOQpVRmEx2RROKwOQyOUQSPyaUym -SxqWyKXyeYxyZzWbSuJTScRCbz2Nz+gRKhUOfTqeUai0OSxiWTiBQSHSGFquGwekxyAgAAAOAQAAAwAA -AAEAEAAAAQEAAwAAAAEAEAAAAQIAAwAAAAIACAAIAQMAAwAAAAEABQAAAQYAAwAAAAEAAQAAAREABAAA -AAEAAAAIARIAAwAAAAEAAQAAARUAAwAAAAEAAgAAARYAAwAAAAEAEAAAARcABAAAAAEAAABnARwAAwAA -AAEAAQAAAT0AAwAAAAEAAgAAAVIAAwAAAAEAAQAAAVMAAwAAAAIAAQABAAAAAA - - - - - - 3 - MCAwAA - - - - 4 - - - - -2147483392 - {{-30, 1}, {15, 292}} - - - - _doScroller: - 1 - - - - -2147483392 - {{-100, -100}, {87, 18}} - - - YES - 1 - - _doScroller: - 1 - 0.94565218687057495 - - - {896, 294} - - - 133776 - - - - - - {896, 294} - - - - message - - - - - - - LucidaGrande - 13 - 1044 - - 6 - YES - - - - - - - 258 - {{0, 97}, {896, 5}} - - - {0, 0} - - 67239424 - 0 - Box - - - 6 - System - textBackgroundColor - - - - 3 - MCAwLjgwMDAwMDAxAA - - - 3 - 2 - 0 - NO - - - - 294 - - - - 274 - - - - 289 - {{563, 35}, {145, 18}} - - - YES - - 67239424 - 0 - Fetch automatically - - - 1211912703 - 2 - - NSImage - NSSwitch - - - NSSwitch - - - - 200 - 25 - - - - - 289 - {{708, 26}, {130, 32}} - - - YES - - 67239424 - 134217728 - New Inspector - - - -2038284033 - 1 - - - - - - 200 - 25 - - - - - 289 - {{481, 26}, {82, 32}} - - - YES - - 67239424 - 134217728 - Fetch - - - -2038284033 - 1 - - - - - - 200 - 25 - - - - - 289 - {{484, 70}, {225, 26}} - - - YES - - -2076049856 - 1024 - - - 109199615 - 1 - - LucidaGrande - 13 - 16 - - - - - - 400 - 75 - - - Item3 - - 1048576 - 2147483647 - 1 - - NSImage - NSMenuCheckmark - - - NSImage - NSMenuMixedState - - _popUpItemAction: - - - YES - - - OtherViews - - - - - - 3 - YES - YES - 1 - - - - - 258 - - - - 2048 - - - - 274 - {457, 69} - - - FSPredicateTextView - NSTextView - - - {{1, 1}, {456, 69}} - - - - - 4 - - - - -2147483392 - {{-30, 1}, {15, 69}} - - - - _doScroller: - 0.73913043737411499 - - - - -2147483392 - {{-100, -100}, {343, 15}} - - - YES - 1 - - _doScroller: - 0.42565599083900452 - - - {{18, 23}, {458, 71}} - - - 133778 - - - - - - {{1, 1}, {896, 104}} - - - - - {{0, -6}, {898, 106}} - - - {0, 0} - - 67239424 - 0 - Box - - LucidaGrande - 11 - 3100 - - - - 3 - MCAwLjgwMDAwMDAxAA - - - - 1 - 4 - 0 - NO - - 2 - MC45MDk4MDM5OSAwLjkwOTgwMzk5IDAuOTA5ODAzOTkAA - - - - {896, 395} - - - - {{0, 0}, {1440, 878}} - {854, 304} - {10000000000000, 10000000000000} - YES - - - - stalenessInterval - - NSManagedObjectContext - YES - - - - - 256 - {125, 1} - - - - - - - collectionInspectorView - - - - 10 - - - - entityList - - - - 20 - - - - executeRequest: - - - - 22 - - - - tabView - - - - 35 - - - - messageTextView - - - - 36 - - - - changeEntity: - - - - 39 - - - - newInspector: - - - - 44 - - - - predicateTextView - - - - 49 - - - - controller - - - - 58 - - - - fetchAutomaticallyButton - - - - 70 - - - - changeFetchAutomatically: - - - - 72 - - - - delegate - - - - 63 - - - - initialFirstResponder - - - - 73 - - - - delegate - - - - 50 - - - - - - 0 - - - - - - -2 - - - File's Owner - - - -1 - - - First Responder - - - -3 - - - Application - - - 5 - - - - - - Window - - - 6 - - - - - - - - - - 23 - - - - - - - - - 24 - - - - - - - - 26 - - - - - - - - 7 - - - - - 25 - - - - - - - - 27 - - - - - - - - 32 - - - - - - - - - - 33 - - - - - 40 - - - - - - 87 - - - - - - - - - - - - 57 - - - Controller - - - 95 - - - - - 96 - - - - - 37 - - - - - - - - 93 - - - - - 43 - - - - - - - - 94 - - - - - 21 - - - - - - - - 92 - - - - - 15 - - - - - - - - 91 - - - - - - - - 16 - - - - - - - - 17 - - - - - 47 - - - - - - - - - - 98 - - - - - 97 - - - - - 46 - - - - - 41 - - - - - - - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - - - - - - 98 - - - 0 - IBCocoaFramework - - com.apple.InterfaceBuilder.CocoaPlugin.macosx - - - YES - 3 - - {9, 8} - {7, 2} - {15, 15} - - - diff --git a/FScriptFramework/FSManagedObjectContextInspector.nib/keyedobjects.nib b/FScriptFramework/FSManagedObjectContextInspector.nib/keyedobjects.nib deleted file mode 100644 index a818686..0000000 Binary files a/FScriptFramework/FSManagedObjectContextInspector.nib/keyedobjects.nib and /dev/null differ diff --git a/FScriptFramework/FSManagedObjectContextInspector.xib b/FScriptFramework/FSManagedObjectContextInspector.xib new file mode 100644 index 0000000..f245ef5 --- /dev/null +++ b/FScriptFramework/FSManagedObjectContextInspector.xib @@ -0,0 +1,215 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +CgkJCQkJCQkJCQkJCQoJCQkKCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCg + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + stalenessInterval + + + + + + + + diff --git a/FScriptFramework/FSMiscTools.h b/FScriptFramework/FSMiscTools.h index a06ce80..89b112c 100644 --- a/FScriptFramework/FSMiscTools.h +++ b/FScriptFramework/FSMiscTools.h @@ -22,7 +22,7 @@ ffi_type *ffiTypeFromFSEncodedType(char fsEncodedType); enum e_FSObjCTypeCode {fscode_CGAffineTransform = '9', fscode_NSRect = 'w', fscode_NSSize = 'x', fscode_NSPoint = 'y', fscode_NSRange = 'z', - fscode_CGRect = 'W', fscode_CGSize = 'X', fscode_CGPoint = 'Y'}; + fscode_CGRect = 'W', fscode_CGSize = 'X', fscode_CGPoint = 'Y', fscode_NSEdgeInsets = 'Z'}; char FSEncode(const char *foundationEncodeStyleStr); diff --git a/FScriptFramework/FSMiscTools.m b/FScriptFramework/FSMiscTools.m index 567c65f..9254bad 100644 --- a/FScriptFramework/FSMiscTools.m +++ b/FScriptFramework/FSMiscTools.m @@ -14,6 +14,8 @@ #import #import #import "FSCollectionInspector.h" +#import "FSDetailedObjectInspector.h" +#import "FSObjectBrowserViewObjectInfo.h" #import "FSGenericObjectInspector.h" #import "FSInterpreter.h" //#import "FScript.h" @@ -28,7 +30,7 @@ @class _NSZombie, NSFault, NSRTFD; -static ffi_type ffi_type_NSRange, ffi_type_NSPoint, ffi_type_NSRect, ffi_type_NSSize, ffi_type_CGAffineTransform; +static ffi_type ffi_type_NSRange, ffi_type_NSPoint, ffi_type_NSRect, ffi_type_NSSize, ffi_type_CGAffineTransform, ffi_type_NSEdgeInsets; void __attribute__ ((constructor)) initializeFFITypes(void) { @@ -85,6 +87,18 @@ void __attribute__ ((constructor)) initializeFFITypes(void) ffi_type_NSRect.elements[1] = &ffi_type_NSSize; ffi_type_NSRect.elements[2] = NULL; + + //////////////////////////// Define ffi_type_NSEdgeInsets + ffi_type_NSEdgeInsets.size = 0; + ffi_type_NSEdgeInsets.alignment = 0; + ffi_type_NSEdgeInsets.type = FFI_TYPE_STRUCT; + ffi_type_NSEdgeInsets.elements = malloc(5 * sizeof(ffi_type*)); + ffi_type_NSEdgeInsets.elements[0] = &ffi_type_double; + ffi_type_NSEdgeInsets.elements[1] = &ffi_type_double; + ffi_type_NSEdgeInsets.elements[2] = &ffi_type_double; + ffi_type_NSEdgeInsets.elements[3] = &ffi_type_double; + ffi_type_NSEdgeInsets.elements[4] = NULL; + //////////////////////////// Define ffi_type_CGAffineTransform ffi_type_CGAffineTransform.size = 0; ffi_type_CGAffineTransform.alignment = 0; @@ -218,7 +232,8 @@ BOOL containsString(NSString *s, NSString *t, NSUInteger mask) case fscode_NSRect : case fscode_CGRect : return &ffi_type_NSRect; case fscode_NSSize : - case fscode_CGSize : return &ffi_type_NSSize; + case fscode_CGSize : return &ffi_type_NSSize; + case fscode_NSEdgeInsets : return &ffi_type_NSEdgeInsets; case fscode_CGAffineTransform : return &ffi_type_CGAffineTransform; case 'B' : // No ffi_type defined yet for _Bool (Mac OS X 10.5.4), so we handle it ourselves if (sizeof(_Bool) == 4) return &ffi_type_uint32; @@ -230,15 +245,21 @@ BOOL containsString(NSString *s, NSString *t, NSUInteger mask) return NULL; } +// Return the main type in a type encoding. This is the type code from the Objective-C Runtime Programming guide, +// but with FScript-specific types for structures that have special FScript type representations. +// i.e., NSRange, NSPoint, NSSize, NSRect, CGPoint, CGSize, CGRect and CGAffineTransform char FSEncode(const char *foundationEncodeStyleStr) { // NSLog(@"FSEncode called with \"%s\"", foundationEncodeStyleStr); const char *ptr = foundationEncodeStyleStr; + // Skip protocol type qualifiers (const', 'in', 'inout', etc.) while (*ptr == 'r' || *ptr == 'n' || *ptr == 'N' || *ptr == 'o' || *ptr == 'O' || *ptr == 'R' || *ptr == 'V') ptr++; + // Found a struct type '{=...}'. If ' matches a struct with a type FScript has a special representation + // for, return a type-code specific to FScript. if (*ptr == '{') { // NSLog([NSString stringWithFormat:@"ptr = %s",ptr]); @@ -250,6 +271,7 @@ char FSEncode(const char *foundationEncodeStyleStr) else if (strcmp(ptr,@encode(NSPoint)) == 0 || strncmp(ptr,"{_NSPoint=" , 10) == 0) return fscode_NSPoint; else if (strcmp(ptr,@encode(NSSize)) == 0 || strncmp(ptr,"{_NSSize=" , 9) == 0) return fscode_NSSize; else if (strcmp(ptr,@encode(NSRect)) == 0 || strncmp(ptr,"{_NSRect=" , 9) == 0) return fscode_NSRect; + else if (strcmp(ptr,@encode(NSEdgeInsets)) == 0 || strncmp(ptr,"{_NSEdgeInsets=" , 15) == 0) return fscode_NSEdgeInsets; else if (strcmp(ptr,@encode(CGPoint)) == 0 || strncmp(ptr,"{CGPoint=" , 9) == 0) return fscode_CGPoint; else if (strcmp(ptr,@encode(CGSize)) == 0 || strncmp(ptr,"{CGSize=" , 8) == 0) return fscode_CGSize; else if (strcmp(ptr,@encode(CGRect)) == 0 || strncmp(ptr,"{CGRect=" , 8) == 0) return fscode_CGRect; @@ -286,6 +308,31 @@ BOOL FSIsIgnoredSelector(SEL selector) return (selector == @selector(retain) && selector == @selector(release)); } +@interface FSInspectorRepository : NSObject ++(void)addInspector:(id)inspector; ++(void)removeInspector:(id) inspector; +@end +@implementation FSInspectorRepository +static NSMutableSet *sInspectors = nil; ++(void)initialize +{ + if (self == FSInspectorRepository.class) { + sInspectors = [NSMutableSet new]; + } +} + ++(void)addInspector:(id)inspector +{ + [sInspectors addObject:inspector]; +} ++(void)removeInspector:(NSNotification*)notification +{ + id inspector = [notification.object delegate]; + [sInspectors removeObject:inspector]; +} +@end + + void inspect(id object, FSInterpreter *interpreter, id argument) { BOOL error = NO; @@ -296,23 +343,43 @@ void inspect(id object, FSInterpreter *interpreter, id argument) { @try // An exception may occur if the object is invalid (e.g. an invalid proxy) { - [object respondsToSelector:@selector(inspect)]; + [object respondsToSelector:@selector(inspect)]; } @catch (id exception) { error= YES; [FSGenericObjectInspector genericObjectInspectorWithObject:object]; } - + if (!error) - { + { if ([object respondsToSelector:@selector(inspectWithSystem:)]) [object inspectWithSystem:[interpreter objectForIdentifier:@"sys" found:NULL]]; else if ([object respondsToSelector:@selector(inspect)]) [object inspect]; - else [FSGenericObjectInspector genericObjectInspectorWithObject:object]; - } - } + else { + BOOL knownBaseClass = NO; + for (Class cls in [FSObjectBrowserViewObjectHelper baseClasses]){ + if ([object isKindOfClass:cls]) { + knownBaseClass = YES; + break; + } + } + if (knownBaseClass) { + FSDetailedObjectInspector *inspector = [FSDetailedObjectInspector detailedObjectInspectorWithObject:object + interpreter:interpreter]; + [NSNotificationCenter.defaultCenter addObserver:FSInspectorRepository.class + selector:@selector(removeInspector:) + name:NSWindowWillCloseNotification + object:inspector.window ]; + [FSInspectorRepository addInspector:inspector]; + } + else { + [FSGenericObjectInspector genericObjectInspectorWithObject:object]; + } + } + } + } } void inspectCollection(id collection, FSSystem *system, NSArray *blocks) // Factorize some code that would be duplicated in each collection class otherwise diff --git a/FScriptFramework/FSMsgContext.m b/FScriptFramework/FSMsgContext.m index 815896b..447a576 100644 --- a/FScriptFramework/FSMsgContext.m +++ b/FScriptFramework/FSMsgContext.m @@ -119,7 +119,7 @@ - (void) prepareForMessageWithReceiver:(id)receiver selector:(SEL)selector // Ma && returnType != 'c' && returnType != '*' && returnType != 's' && returnType != 'l' && returnType != 'q' && returnType != 'C' && returnType != 'I' && returnType != 'S' && returnType != 'Q' && returnType != 'f' && returnType != ':' && returnType != 'w' - && returnType != 'x' && returnType != 'y' && returnType != 'z' && returnType != 'W' + && returnType != 'x' && returnType != 'y' && returnType != 'z' && returnType != 'Z' && returnType != 'W' && returnType != 'X' && returnType != 'Y' && returnType != '^' && returnType != 'B' && returnType != '9'; @@ -162,7 +162,7 @@ -(NSInteger)unsuportedArgumentIndex && argumentTypes[i] != 'q' && argumentTypes[i] != 'C' && argumentTypes[i] != 'I' && argumentTypes[i] != 'S' && argumentTypes[i] != 'Q' && argumentTypes[i] != 'f' && argumentTypes[i] != ':' && argumentTypes[i] != 'w' && argumentTypes[i] != 'W' && argumentTypes[i] != 'x' && argumentTypes[i] != 'X' && argumentTypes[i] != 'y' - && argumentTypes[i] != 'Y' && argumentTypes[i] != 'z' && argumentTypes[i] != '^' && argumentTypes[i] != '9') + && argumentTypes[i] != 'Y' && argumentTypes[i] != 'z' && argumentTypes[i] != 'Z' && argumentTypes[i] != '^' && argumentTypes[i] != '9') { return i; } diff --git a/FScriptFramework/FSNSArray.m b/FScriptFramework/FSNSArray.m index fa1e6eb..8638663 100644 --- a/FScriptFramework/FSNSArray.m +++ b/FScriptFramework/FSNSArray.m @@ -573,7 +573,8 @@ - (FSArray *)sort if (count == 0) return [FSArray array]; // mergesort() crashes if passed an empty array - if (count >= 2 && ([self objectAtIndex:0] && ![[self objectAtIndex:0] respondsToSelector:@selector(operator_less:)] || [self objectAtIndex:count/2] && ![[self objectAtIndex:count/2] respondsToSelector:@selector(operator_less:)])) + if (count >= 2 && (([self objectAtIndex:0] && ![[self objectAtIndex:0] respondsToSelector:@selector(operator_less:)]) || ([self objectAtIndex:count/2] && ![[self objectAtIndex:count/2] respondsToSelector:@selector(operator_less:)]))) + FSExecError(@"elements must responds to \"<\""); FSExecError(@"elements must responds to \"<\""); @try diff --git a/FScriptFramework/FSNSDistantObject.m b/FScriptFramework/FSNSDistantObject.m index 8d034e7..1b36b15 100644 --- a/FScriptFramework/FSNSDistantObject.m +++ b/FScriptFramework/FSNSDistantObject.m @@ -85,7 +85,7 @@ - (FSArray *)enlist:(NSNumber *)operand if ([operand doubleValue] > NSUIntegerMax) FSExecError([NSString stringWithFormat:@"argument of method \"enlist:\" must be less or equal to %lu",(unsigned long)NSUIntegerMax]); - if (r = [[[FSArray alloc] initFilledWith:self count:[operand doubleValue]] autorelease]) + if ((r = [[[FSArray alloc] initFilledWith:self count:[operand doubleValue]] autorelease])) return r; else FSExecError(@"not enough memory"); diff --git a/FScriptFramework/FSNSNumber.m b/FScriptFramework/FSNSNumber.m index 5dd9307..dd01a76 100644 --- a/FScriptFramework/FSNSNumber.m +++ b/FScriptFramework/FSNSNumber.m @@ -190,7 +190,7 @@ - (FSArray *)iota; // APL iota. Index Origin = 0 if (value < 1) return [FSArray array]; - else if (r = [[[FSArray alloc] initFrom:0 to:value-1 step:1] autorelease]) + else if ((r = [[[FSArray alloc] initFrom:0 to:value-1 step:1] autorelease])) return r; else FSExecError(@"not enough memory"); diff --git a/FScriptFramework/FSNSObject.m b/FScriptFramework/FSNSObject.m index 9da0685..5bba36b 100644 --- a/FScriptFramework/FSNSObject.m +++ b/FScriptFramework/FSNSObject.m @@ -155,8 +155,8 @@ - (void)save //dir = NXHomeDirectory(); //[panel setRequiredFileType:@"fsobject"]; - if ([panel runModal] == NSOKButton) - [self save:[panel filename]]; + if ([panel runModal] == NSModalResponseOK) + [self save:[panel URL].absoluteString]; } - (void)throw diff --git a/FScriptFramework/FSNSValue.h b/FScriptFramework/FSNSValue.h index b2f1af4..eb08eb3 100644 --- a/FScriptFramework/FSNSValue.h +++ b/FScriptFramework/FSNSValue.h @@ -41,5 +41,10 @@ - (CGFloat)height; - (CGFloat)width; ++ (NSEdgeInsets)edgeInsetsWithTop:(CGFloat)top left:(CGFloat)left bottom:(CGFloat)bottom right:(CGFloat)right; +-(CGFloat)top; +-(CGFloat)left; +-(CGFloat)bottom; +-(CGFloat)right; @end diff --git a/FScriptFramework/FSNSValue.m b/FScriptFramework/FSNSValue.m index c6fba58..5d5b2e2 100644 --- a/FScriptFramework/FSNSValue.m +++ b/FScriptFramework/FSNSValue.m @@ -15,6 +15,10 @@ + (NSRange)rangeWithLocation:(NSUInteger)location length:(NSUInteger)length { return NSMakeRange(location,length); } ++ (NSEdgeInsets)edgeInsetsWithTop:(CGFloat)top left:(CGFloat)left bottom:(CGFloat)bottom right:(CGFloat)right +{ + return NSEdgeInsetsMake(top, left, bottom, right); +} + (NSSize)sizeWithWidth:(CGFloat)width height:(CGFloat)height { @@ -234,4 +238,50 @@ - (CGFloat)y else return [self pointValue].y; } + +- (CGFloat)top +{ + if (strcmp([self objCType],@encode(NSEdgeInsets)) != 0) + { + if ([self isKindOfClass:[NSNumber class]]) + FSExecError(@"message \"top\" sent to a number"); + else + FSExecError(@"message \"top\" sent to an NSValue that does not contain an NSEdgeInsets"); + } + else return [self edgeInsetsValue].top; +} + +- (CGFloat)left +{ + if (strcmp([self objCType],@encode(NSEdgeInsets)) != 0) + { + if ([self isKindOfClass:[NSNumber class]]) + FSExecError(@"message \"left\" sent to a number"); + else + FSExecError(@"message \"left\" sent to an NSValue that does not contain an NSEdgeInsets"); + } + else return [self edgeInsetsValue].left; +} +- (CGFloat)bottom +{ + if (strcmp([self objCType],@encode(NSEdgeInsets)) != 0) + { + if ([self isKindOfClass:[NSNumber class]]) + FSExecError(@"message \"bottom\" sent to a number"); + else + FSExecError(@"message \"bottom\" sent to an NSValue that does not contain an NSEdgeInsets"); + } + else return [self edgeInsetsValue].bottom; +} +- (CGFloat)right +{ + if (strcmp([self objCType],@encode(NSEdgeInsets)) != 0) + { + if ([self isKindOfClass:[NSNumber class]]) + FSExecError(@"message \"right\" sent to a number"); + else + FSExecError(@"message \"right\" sent to an NSValue that does not contain an NSEdgeInsets"); + } + else return [self edgeInsetsValue].right; +} @end diff --git a/FScriptFramework/FSObjectBrowser.h b/FScriptFramework/FSObjectBrowser.h index 67d2771..0243a14 100644 --- a/FScriptFramework/FSObjectBrowser.h +++ b/FScriptFramework/FSObjectBrowser.h @@ -4,15 +4,17 @@ #import @class FSInterpreter; +@class FSObjectBrowserView; -@interface FSObjectBrowser : NSWindow -{ -} +@interface FSObjectBrowser : NSWindowController + (FSObjectBrowser *)objectBrowserWithRootObject:(id)object interpreter:(FSInterpreter *)interpreter; - (void) browseWorkspace; - (void)dealloc; - (FSObjectBrowser *)initWithRootObject:(id)object interpreter:(FSInterpreter *)interpreter; -- (BOOL)worksWhenModal; +@property (strong,nonatomic) IBOutlet id rootObject; +@property (strong,nonatomic) IBOutlet FSInterpreter* interpreter; +@property (weak,nonatomic) IBOutlet FSObjectBrowserView *objectBrowserView; +-(IBAction)floatWindow:(id)sender; @end diff --git a/FScriptFramework/FSObjectBrowser.m b/FScriptFramework/FSObjectBrowser.m index 27e21e9..7ab8564 100644 --- a/FScriptFramework/FSObjectBrowser.m +++ b/FScriptFramework/FSObjectBrowser.m @@ -5,30 +5,42 @@ #import "FSObjectBrowser.h" #import "FSObjectBrowserView.h" #import "FSObjectBrowserToolbar.h" +#import "FSObjectBrowserWindow.h" #import "FSObjectBrowserButtonsInspector.h" #import "FSMiscTools.h" static FSObjectBrowserButtonsInspector *buttonsInspector; static NSPoint topLeftPoint = {0,0}; // Used for cascading windows. +static NSMutableArray *sObjectBrowsers; + +@interface FSObjectBrowser () +@property (nonatomic) BOOL hasAwoken; +@end @implementation FSObjectBrowser ++(NSMutableArray*)objectBrowsers +{ + if (!sObjectBrowsers) { + sObjectBrowsers = [NSMutableArray new]; + } + return sObjectBrowsers; +} +(FSObjectBrowser *)objectBrowserWithRootObject:(id)object interpreter:(FSInterpreter *)interpreter { - return [[self alloc] initWithRootObject:object interpreter:interpreter]; // NO autorelease. The window will be released when closed. + FSObjectBrowser *newBrowser = [[self alloc] initWithRootObject:object interpreter:interpreter]; // NO autorelease. The window will be released when closed. + [[self objectBrowsers] addObject:newBrowser]; + return newBrowser; } -- (void) browseWorkspace { [[self contentView] browseWorkspace]; } +- (void) browseWorkspace { + [self.objectBrowserView browseWorkspace]; +} --(void) dealloc -{ - //NSLog(@"\n FSObjectBrowser dealloc\n"); - [super dealloc]; -} - (NSSearchField *)visibleSearchField { - NSArray *visibleItems = [[self toolbar] visibleItems]; + NSArray *visibleItems = [[self.window toolbar] visibleItems]; for (NSUInteger i = 0, count = [visibleItems count]; i < count; i++) { if ([[[visibleItems objectAtIndex:i] itemIdentifier] isEqualToString:@"Filter"]) @@ -41,68 +53,70 @@ - (NSSearchField *)visibleSearchField -(FSObjectBrowser *)initWithRootObject:(id)object interpreter:(FSInterpreter *)interpreter { - FSObjectBrowserView *bbv; - - [super initWithContentRect:NSMakeRect(100,100,830,400) styleMask:NSTitledWindowMask | NSClosableWindowMask | NSMiniaturizableWindowMask | NSResizableWindowMask /*| NSTexturedBackgroundWindowMask*/ backing:NSBackingStoreBuffered defer:NO]; + self = [super init]; + if (self) { + self.rootObject = object; + self.interpreter = interpreter; + } - [self setMinSize:NSMakeSize(130,130)]; // FSObjectBrowserView has weird behavior if the window becomes too tiny + return self; +} + +-(void)awakeFromNib +{ + if (!self.hasAwoken) { + self.hasAwoken = YES; + // jg added from here + if ([self.objectBrowserView respondsToSelector:@selector(setupToolbarWithWindow:)]) { + if ([self.objectBrowserView doSetupToolbar]) + [self.objectBrowserView setupToolbarWithWindow:self.window]; // defined in FSObjectBrowserToolBar.m + } + // jg added to here + NSSearchField *searchField = [self visibleSearchField]; + if (searchField) [self.window setInitialFirstResponder:searchField]; - bbv = [[FSObjectBrowserView alloc] initWithFrame:[[self contentView] bounds]]; - [bbv setRootObject:object]; - [bbv setInterpreter:interpreter]; - [bbv setAutoresizingMask:NSViewWidthSizable | NSViewHeightSizable]; - [self setContentView:bbv]; - // jg added from here - if ([bbv respondsToSelector:@selector(setupToolbarWithWindow:)]) { - if ([bbv doSetupToolbar]) - [bbv setupToolbarWithWindow:self]; // defined in FSObjectBrowserToolBar.m + [self.window setAcceptsMouseMovedEvents:YES]; + [(FSObjectBrowserWindow*)self.window setVisibleSearchField:searchField]; + self.objectBrowserView.rootObject = self.rootObject; + self.objectBrowserView.interpreter = self.interpreter; + topLeftPoint = [self.window cascadeTopLeftFromPoint:topLeftPoint]; } - // jg added to here - [bbv release]; - - NSSearchField *searchField = [self visibleSearchField]; - if (searchField) [self setInitialFirstResponder:searchField]; - //[self makeFirstResponder:bbv]; // If I don't do that, the mouse moved events are not sent to the bbv. - - [self setContentBorderThickness:FSObjectBrowserBottomBarHeight+1 forEdge:NSMinYEdge]; // Adding 1 here to FSObjectBrowserBottomBarHeight produces a prettier visual effect +} - [self setAcceptsMouseMovedEvents:YES]; - [self setTitle:@"F-Script Object Browser"]; - topLeftPoint = [self cascadeTopLeftFromPoint:topLeftPoint]; - //[self makeKeyAndOrderFront:nil]; - return self; +-(void)windowWillClose:(NSNotification *)notification +{ + self.window.delegate = nil; + [[FSObjectBrowser objectBrowsers] removeObject:self]; } -- (void)sendEvent:(NSEvent *)theEvent +-(void)makeKeyAndOrderFront:(id)sender { - // Goal: route most key events directly to the searchfield - - if ([theEvent type] == NSKeyDown) - { - unichar character = [[theEvent characters] characterAtIndex:0]; - if (character != NSLeftArrowFunctionKey && character != NSRightArrowFunctionKey && character != NSUpArrowFunctionKey && character != NSDownArrowFunctionKey) - { - NSSearchField *searchField = [self visibleSearchField]; - if (searchField && [searchField currentEditor] == nil) // If the searchfield is not already active then we make it become the first responder - [self makeFirstResponder:searchField]; - } - } - [super sendEvent:theEvent]; + [self.window makeKeyAndOrderFront:sender]; +} + +-(NSString *)windowNibName +{ + return @"FSObjectBrowser"; } -- (void)runToolbarCustomizationPalette:(id)sender +-(NSString *)windowNibPath { - if (!buttonsInspector) buttonsInspector = [[FSObjectBrowserButtonsInspector alloc] init]; - [super runToolbarCustomizationPalette:sender]; - [buttonsInspector activate]; + return [[[NSBundle bundleForClass:FSObjectBrowser.class] URLForResource:@"FSObjectBrowser" withExtension:@"nib"] path ]; } -- (BOOL)worksWhenModal +-(void)floatWindow:(id)sender { - // Since F-Script is often used as a debugging tool, we want it to - // continue working even when some other window is being run modally - return YES; + if (self.window.level == NSNormalWindowLevel) { + self.window.level = NSFloatingWindowLevel; + } + else { + self.window.level = NSNormalWindowLevel; + } +} + +-(void)dealloc { + } @end diff --git a/FScriptFramework/FSObjectBrowser.xib b/FScriptFramework/FSObjectBrowser.xib new file mode 100644 index 0000000..08417f5 --- /dev/null +++ b/FScriptFramework/FSObjectBrowser.xib @@ -0,0 +1,49 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/FScriptFramework/FSObjectBrowserButtonsInspector.xib b/FScriptFramework/FSObjectBrowserButtonsInspector.xib new file mode 100644 index 0000000..a51c725 --- /dev/null +++ b/FScriptFramework/FSObjectBrowserButtonsInspector.xib @@ -0,0 +1,253 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/FScriptFramework/FSObjectBrowserMatrix.h b/FScriptFramework/FSObjectBrowserMatrix.h index 86b980c..b73fc8e 100644 --- a/FScriptFramework/FSObjectBrowserMatrix.h +++ b/FScriptFramework/FSObjectBrowserMatrix.h @@ -3,10 +3,8 @@ #import +@class FSObjectInspectorViewModelItem; @interface FSObjectBrowserMatrix : NSMatrix -{ - -} - +@property (strong,nonatomic) FSObjectInspectorViewModelItem *rootViewModelItem; @end diff --git a/FScriptFramework/FSObjectBrowserMatrix.m b/FScriptFramework/FSObjectBrowserMatrix.m index e09e94c..c048294 100644 --- a/FScriptFramework/FSObjectBrowserMatrix.m +++ b/FScriptFramework/FSObjectBrowserMatrix.m @@ -7,109 +7,9 @@ @implementation FSObjectBrowserMatrix -/*- (id)initWithFrame:(NSRect)frameRect mode:(int)aMode cellClass:(Class)classId numberOfRows:(int)numRows numberOfColumns:(int)numColumns +-(void)encodeWithCoder:(NSCoder *)aCoder { - NSLog(@"initWithFrameblabla:"); - [super initWithFrame:frameRect mode:NSRadioModeMatrix cellClass:classId numberOfRows:numRows numberOfColumns:numColumns]; - [self setMode:NSRadioModeMatrix]; - return self; - -} - -- (id)initWithFrame:(NSRect)frameRect -{ - NSLog(@"initWithFrame:"); - [super initWithFrame:frameRect]; - [self setMode:NSRadioModeMatrix]; - return self; -} */ - -/*- (id)initWithFrame:(NSRect)frameRect mode:(int)aMode prototype:(NSCell *)aCell numberOfRows:(int)numRows numberOfColumns:(int)numColumns -{ - NSLog(@"initWithFrameblabla2:"); - [super initWithFrame:frameRect mode:NSListModeMatrix prototype:aCell numberOfRows:numRows numberOfColumns:numColumns]; - [self setMode:NSListModeMatrix]; - return self; - -} - -- (void)mouseMoved:(NSEvent *)theEvent -{ - NSLog(@"moved"); -} - -- (void)mouseDragged:(NSEvent *)theEvent -{ - NSSize dragOffset = NSMakeSize(0.0, 0.0); - NSPasteboard *pboard; - - NSLog(@"dragged"); - - pboard = [NSPasteboard pasteboardWithName:NSDragPboard]; - [pboard declareTypes:[NSArray arrayWithObject:NSTIFFPboardType] owner:self]; - [pboard setData:[[[NSBundle mainBundle] loadImageNamed:@"build.tiff"] TIFFRepresentation] forType:NSTIFFPboardType]; - - [self dragImage:[[NSBundle mainBundle] loadImageNamed:@"build.tiff"] at:[NSEvent mouseLocation] offset:dragOffset event:theEvent pasteboard:pboard source:self slideBack:YES]; - - [super mouseDragged:(NSEvent *)theEvent]; -} - -- (void)setMode:(NSMatrixMode)aMode -{ - [super setMode:NSListModeMatrix]; -} - -- (NSMatrixMode)mode -{ - return NSListModeMatrix; -} - -- (void)mouseDown:(NSEvent *)theEvent -{ - //NSSize dragOffset = NSMakeSize(0.0, 0.0); - //NSPasteboard *pboard; - - NSLog(@"mouseDown:"); - NSLog(@"mode=%d", [self mode]); - - //pboard = [NSPasteboard pasteboardWithName:NSDragPboard]; - //[pboard declareTypes:[NSArray arrayWithObject:NSTIFFPboardType] owner:self]; - //[pboard setData:[[[NSBundle mainBundle] loadImageNamed:@"build.tiff"] TIFFRepresentation] forType:NSTIFFPboardType]; - - //[self dragImage:[[NSBundle mainBundle] loadImageNamed:@"build.tiff"] at:[NSEvent mouseLocation] offset:dragOffset event:theEvent pasteboard:pboard source:self slideBack:YES]; - - [super mouseDown:(NSEvent *)theEvent]; -} - -- (NSDragOperation)draggingSourceOperationMaskForLocal:(BOOL)isLocal -{ - if (isLocal) return NSDragOperationEvery; - else return NSDragOperationCopy; -}*/ - -+ (id)allocWithZone:(NSZone *)zone -{ - id r = [super allocWithZone:zone]; - //NSLog([NSString stringWithFormat:@"FSObjectBrowserMatrix %p allocWithZone:", r]); - return r; -} - -- (id)retain -{ - //NSLog([NSString stringWithFormat:@"FSObjectBrowserMatrix %p retain", self]); - return [super retain]; -} - -- (oneway void)release -{ - //NSLog([NSString stringWithFormat:@"FSObjectBrowserMatrix %p release", self]); - [super release]; -} - -- (void) dealloc -{ - //NSLog([NSString stringWithFormat:@"FSObjectBrowserMatrix %p dealloc", self]); - [super dealloc]; + [super encodeWithCoder:aCoder]; } @end diff --git a/FScriptFramework/FSObjectBrowserSearchField.m b/FScriptFramework/FSObjectBrowserSearchField.m index 710d5b7..88a41fc 100644 --- a/FScriptFramework/FSObjectBrowserSearchField.m +++ b/FScriptFramework/FSObjectBrowserSearchField.m @@ -79,4 +79,5 @@ - (void)changeUnderscoreFilterPreference:(id)sender // action [[NSApplication sharedApplication] sendAction:[self action] to:[self target] from:self]; } + @end diff --git a/FScriptFramework/FSObjectBrowserView.h b/FScriptFramework/FSObjectBrowserView.h index 8771893..ae0a8a4 100644 --- a/FScriptFramework/FSObjectBrowserView.h +++ b/FScriptFramework/FSObjectBrowserView.h @@ -6,50 +6,54 @@ @class FSInterpreter; @class FSObjectBrowserBottomBarTextDisplay; +@class FSObjectInspectorViewModelItem; -NSInteger FSCompareClassNamesForAlphabeticalOrder(NSString *className1, NSString *className2, void *context); +NSInteger FSCompareClassNamesForAlphabeticalOrder(NSString* className1, NSString* className2, void* context); const int FSObjectBrowserBottomBarHeight; -@interface FSObjectBrowserView : NSView -{ - id rootObject; - FSInterpreter *interpreter; - NSBrowser *browser; - FSObjectBrowserBottomBarTextDisplay *bottomBarTextDisplay; - id selectedView; - NSString *filterString; - NSMutableSet *matrixes; - enum {FSBrowsingWorkspace, FSBrowsingClasses, FSBrowsingObject, FSBrowsingNothing} browsingMode; +@interface FSObjectBrowserView : NSView { + id rootObject; + FSInterpreter* interpreter; + NSBrowser* browser; + FSObjectBrowserBottomBarTextDisplay* bottomBarTextDisplay; + id selectedView; + NSString* filterString; + NSMutableSet* matrixes; + enum { FSBrowsingWorkspace, + FSBrowsingClasses, + FSBrowsingObject, + FSBrowsingNothing } browsingMode; } -+ (NSArray *)customButtons; ++ (NSArray*)customButtons; + (void)saveCustomButtonsSettings; -- (void)addDictionary:(NSDictionary *)d withLabel:(NSString *)label toMatrix:(NSMatrix *)matrix classLabel:(NSString *)classLabel selectedClassLabel:(NSString *)selectedClassLabel selectedLabel:(NSString *)selectedLabel selectedObject:(id)selectedObject; -- (void)addBindingForObject:(id)object withName:(NSString *)name toMatrix:(NSMatrix *)matrix classLabel:(NSString *)classLabel selectedClassLabel:(NSString *)selectedClassLabel selectedLabel:(NSString *)selectedLabel selectedObject:(id)selectedObject; -- (void)addBlankRowToMatrix:(NSMatrix *)matrix; -- (void)addClassLabel:(NSString *)label toMatrix:(NSMatrix *)matrix; -- (void)addClassLabel:(NSString *)label toMatrix:(NSMatrix *)matrix color:(NSColor *)color; -- (void)addClassesWithNames:(NSArray *)classNames withLabel:(NSString *)label toMatrix:(NSMatrix *)matrix classLabel:(NSString *)classLabel selectedClassLabel:(NSString *)selectedClassLabel selectedLabel:(NSString *)selectedLabel selectedObject:(id)selectedObject; -- (void)addLabel:(NSString *)label toMatrix:(NSMatrix *)matrix; -- (void)addLabel:(NSString *)label toMatrix:(NSMatrix *)matrix indentationLevel:(NSUInteger)indentationLevel; -- (void)addLabelAlone:(NSString *)label toMatrix:(NSMatrix *)matrix; -- (void)addObject:(id)object toMatrix:(NSMatrix *)matrix label:(NSString *)label classLabel:(NSString *)classLabel; -- (void)addObject:(id)object toMatrix:(NSMatrix *)matrix label:(NSString *)label classLabel:(NSString *)classLabel indentationLevel:(NSUInteger)indentationLevel; -- (void)addObject:(id)object toMatrix:(NSMatrix *)matrix label:(NSString *)label classLabel:(NSString *)classLabel indentationLevel:(NSUInteger)indentationLevel leaf:(BOOL)leaf; -- (void)addObject:(id)object withLabel:(NSString *)label toMatrix:(NSMatrix *)matrix classLabel:(NSString *)classLabel selectedClassLabel:(NSString *)selectedClassLabel selectedLabel:(NSString *)selectedLabel selectedObject:(id)selectedObject; -- (void)addObject:(id)object withLabel:(NSString *)label toMatrix:(NSMatrix *)matrix leaf:(BOOL)leaf classLabel:(NSString *)classLabel selectedClassLabel:(NSString *)selectedClassLabel selectedLabel:(NSString *)selectedLabel selectedObject:(id)selectedObject indentationLevel:(NSUInteger)indentationLevel; -- (void)addObjects:(NSArray *)objects withLabel:(NSString *)label toMatrix:(NSMatrix *)matrix classLabel:(NSString *)classLabel selectedClassLabel:(NSString *)selectedClassLabel selectedLabel:(NSString *)selectedLabel selectedObject:(id)selectedObject; -- (void)addPropertyLabel:(NSString *)label toMatrix:(NSMatrix *)matrix; +- (void)addDictionary:(NSDictionary*)d withLabel:(NSString*)label toMatrix:(NSMatrix*)matrix classLabel:(NSString*)classLabel selectedClassLabel:(NSString*)selectedClassLabel selectedLabel:(NSString*)selectedLabel selectedObject:(id)selectedObject; +- (void)addBindingForObject:(id)object withName:(NSString*)name toMatrix:(NSMatrix*)matrix classLabel:(NSString*)classLabel selectedClassLabel:(NSString*)selectedClassLabel selectedLabel:(NSString*)selectedLabel selectedObject:(id)selectedObject; +- (void)addBlankRowToMatrix:(NSMatrix*)matrix; +- (void)addClassLabel:(NSString*)label toMatrix:(NSMatrix*)matrix; +- (void)addClassLabel:(NSString*)label toMatrix:(NSMatrix*)matrix color:(NSColor*)color; +- (void)addClassesWithNames:(NSArray*)classNames withLabel:(NSString*)label toMatrix:(NSMatrix*)matrix classLabel:(NSString*)classLabel selectedClassLabel:(NSString*)selectedClassLabel selectedLabel:(NSString*)selectedLabel selectedObject:(id)selectedObject; +- (void)addLabel:(NSString*)label toMatrix:(NSMatrix*)matrix; +- (void)addLabel:(NSString*)label toMatrix:(NSMatrix*)matrix indentationLevel:(NSUInteger)indentationLevel; +- (void)addLabelAlone:(NSString*)label toMatrix:(NSMatrix*)matrix; +- (void)addObject:(id)object toMatrix:(NSMatrix*)matrix label:(NSString*)label classLabel:(NSString*)classLabel; +- (void)addObject:(id)object toMatrix:(NSMatrix*)matrix label:(NSString*)label classLabel:(NSString*)classLabel indentationLevel:(NSUInteger)indentationLevel; +- (void)addObject:(id)object toMatrix:(NSMatrix*)matrix label:(NSString*)label classLabel:(NSString*)classLabel indentationLevel:(NSUInteger)indentationLevel leaf:(BOOL)leaf; +- (void)addObject:(id)object withLabel:(NSString*)label toMatrix:(NSMatrix*)matrix classLabel:(NSString*)classLabel selectedClassLabel:(NSString*)selectedClassLabel selectedLabel:(NSString*)selectedLabel selectedObject:(id)selectedObject; +- (void)addObject:(id)object withLabel:(NSString*)label toMatrix:(NSMatrix*)matrix leaf:(BOOL)leaf classLabel:(NSString*)classLabel selectedClassLabel:(NSString*)selectedClassLabel selectedLabel:(NSString*)selectedLabel selectedObject:(id)selectedObject indentationLevel:(NSUInteger)indentationLevel; +- (void)addObjects:(NSArray*)objects withLabel:(NSString*)label toMatrix:(NSMatrix*)matrix classLabel:(NSString*)classLabel selectedClassLabel:(NSString*)selectedClassLabel selectedLabel:(NSString*)selectedLabel selectedObject:(id)selectedObject; +- (void)addPropertyLabel:(NSString*)label toMatrix:(NSMatrix*)matrix; - (IBAction)browseAction:(id)sender; -- (void) browseNothing; -- (void) browseWorkspace; -- (void) fillMatrix:(NSMatrix *)matrix withMethodsForObject:(id)object; -- (void) filterAction:(id)sender; -- (BOOL) hasEmptyFilterString; -- (id) initWithFrame:(NSRect)frameRect; -- (id) selectedObject; -- (void) setInterpreter:(FSInterpreter *)theInterpreter; -- (void) setRootObject:(id)theRootObject; +- (void)browseNothing; +- (void)browseWorkspace; +- (void)fillMatrix:(NSMatrix*)matrix withMethodsForObject:(id)object; +- (void)filterAction:(id)sender; +- (BOOL)hasEmptyFilterString; +- (id)initWithFrame:(NSRect)frameRect; +- (id)selectedObject; +@property (retain,nonatomic) IBOutlet FSInterpreter *interpreter; +@property (retain,nonatomic) IBOutlet id rootObject; + @end diff --git a/FScriptFramework/FSObjectBrowserView.m b/FScriptFramework/FSObjectBrowserView.m index 81c77bd..a428ed9 100644 --- a/FScriptFramework/FSObjectBrowserView.m +++ b/FScriptFramework/FSObjectBrowserView.m @@ -11,7 +11,7 @@ #import "FSNSObject.h" #import "FSArray.h" #import "FSObjectBrowserCell.h" -#import "FSMiscTools.h" +#import "FSMiscTools.h" #import "BlockStackElem.h" #import "BlockPrivate.h" #import "BlockInspector.h" @@ -43,2028 +43,1749 @@ @interface ArgumentsWindow : NSWindow @end @implementation ArgumentsWindow -- (BOOL)canBecomeKeyWindow { - return YES; -} +- (BOOL)canBecomeKeyWindow { return YES; } @end const int FSObjectBrowserBottomBarHeight = 22; static Class NSManagedObjectClass; -/* -static int compareClassesForAlphabeticalOrder(id class1, id class2, void *context) -{ - NSString *class1String = printString(class1); - NSString *class2String = printString(class2); - - if ([class1String hasPrefix:@"%"] && ![class2String hasPrefix:@"%"]) - return NSOrderedDescending; - else if ([class2String hasPrefix:@"%"] && ![class1String hasPrefix:@"%"]) - return NSOrderedAscending; - else - return [class1String compare:class2String]; -} -*/ - -static FSObjectBrowserCell *addRowToMatrix(NSMatrix *matrix) -{ - // Since we reuse cells when filtering (because we use renewRows:columns:), we must - // ensure that they are correctly set-up when reused. This is the job of this function. - - FSObjectBrowserCell *cell; - - // For an unknown reason, the following does not correctly maintain the selection: - // *********** - // int numberOfRows = [matrix numberOfRows]; - // [matrix renewRows:numberOfRows+1 columns:1]; - // cell = [matrix cellAtRow:numberOfRows column:0]; - // *********** - // We do the folowing instead: - // *********** - [matrix addRow]; - cell = [matrix cellAtRow:[matrix numberOfRows]-1 column:0]; - // *********** - - [cell setLeaf:NO]; - [cell setEnabled:YES]; - [cell setObjectValue:nil]; - [cell setObjectBrowserCellType:FSOBUNKNOWN]; - [cell setClassLabel:nil]; - [cell setLabel:nil]; - [cell setRepresentedObject:nil]; - return cell; -} - - -NSInteger FSCompareClassNamesForAlphabeticalOrder(NSString *className1, NSString *className2, void *context) -{ - if ([className1 hasPrefix:@"%"] && ![className2 hasPrefix:@"%"]) - return NSOrderedDescending; - else if ([className2 hasPrefix:@"%"] && ![className1 hasPrefix:@"%"]) - return NSOrderedAscending; - else - return [className1 caseInsensitiveCompare:className2]; -} - - -static NSInteger FSCompareMethodsNamesForAlphabeticalOrder(NSString *m1, NSString *m2, void *context) -{ - if ([m1 hasPrefix:@"_"] && ![m2 hasPrefix:@"_"]) - return NSOrderedDescending; - else if ([m2 hasPrefix:@"_"] && ![m1 hasPrefix:@"_"]) - return NSOrderedAscending; - else - return [m1 caseInsensitiveCompare:m2]; -} - -static NSString *printStringForObjectBrowser(id object) -{ - NSString *entityName; - NSString *result = nil; - - @try - { - if (NSManagedObjectClass && [object isKindOfClass:NSManagedObjectClass] && (entityName = [[object entity] name]) != nil) - { - result = [@"Managed object: " stringByAppendingString:entityName]; - } - } - @catch (id exception) - { - result = [NSString stringWithFormat:@"*** Non printable object. The following exception was raised when " - @"trying to get a textual representation of the object: %@" - ,FSErrorMessageFromException(exception)]; - } - - if (!result) - { - result = printStringLimited(object, 1000); - if ([result length] > 510) - result = [[result substringWithRange:NSMakeRange(0,500)] stringByAppendingString:@" ..."]; - } - - return result; -} - - -static NSString *humanReadableFScriptTypeDescriptionFromEncodedObjCType(const char *ptr) -{ - while (*ptr == 'r' || *ptr == 'n' || *ptr == 'N' || *ptr == 'o' || *ptr == 'O' || *ptr == 'R' || *ptr == 'V') - ptr++; - - if (strcmp(ptr,@encode(id)) == 0) return @""; - else if (strcmp(ptr,@encode(char)) == 0) return @""; - else if (strcmp(ptr,@encode(int)) == 0) return @"int"; - else if (strcmp(ptr,@encode(short)) == 0) return @"short"; - else if (strcmp(ptr,@encode(long)) == 0) return @"long"; - else if (strcmp(ptr,@encode(long long)) == 0) return @"long long"; - else if (strcmp(ptr,@encode(unsigned char)) == 0) return @"unsigned char"; - else if (strcmp(ptr,@encode(unsigned short)) == 0) return @"unsigned short"; - else if (strcmp(ptr,@encode(unsigned int)) == 0) return @"unsigned int"; - else if (strcmp(ptr,@encode(unsigned long)) == 0) return @"unsigned long"; - else if (strcmp(ptr,@encode(unsigned long long)) == 0) return @"unsigned long long"; - else if (strcmp(ptr,@encode(float)) == 0) return @"float"; - else if (strcmp(ptr,@encode(double)) == 0) return @"double"; - else if (strcmp(ptr,@encode(char *)) == 0) return @"pointer"; - else if (strcmp(ptr,@encode(SEL)) == 0) return @"SEL"; - else if (strcmp(ptr,@encode(Class)) == 0) return @"Class"; - else if (strcmp(ptr,@encode(NSRange)) == 0) return @"NSRange"; - else if (strcmp(ptr,@encode(NSPoint)) == 0) return @"NSPoint"; - else if (strcmp(ptr,@encode(NSSize)) == 0) return @"NSSize"; - else if (strcmp(ptr,@encode(NSRect)) == 0) return @"NSRect"; - else if (strcmp(ptr,@encode(CGPoint)) == 0) return @"CGPoint"; - else if (strcmp(ptr,@encode(CGSize)) == 0) return @"CGSize"; - else if (strcmp(ptr,@encode(CGRect)) == 0) return @"CGRect"; - else if (strcmp(ptr,@encode(CGAffineTransform)) == 0) return @"CGAffineTransform"; - else if (strcmp(ptr,@encode(_Bool)) == 0) return @"boolean"; - else if (*ptr == '{') - { - NSMutableString *structName = [NSMutableString string]; - ptr++; - while (isalnum(*ptr) || *ptr == '_') - { - [structName appendString:[[[NSString alloc] initWithBytes:ptr length:1 encoding:NSASCIIStringEncoding] autorelease]]; - ptr++; - } - if (*ptr == '=' && ![structName isEqualToString:@""]) - return [@"struct " stringByAppendingString:structName]; - else - return @""; - } - else if (*ptr == '^') - { - NSString *pointed = humanReadableFScriptTypeDescriptionFromEncodedObjCType(++ptr); - if ([pointed isEqualToString:@""]) - return @"pointer"; - else - return [@"pointer to " stringByAppendingString:pointed]; - } - else return @""; -} - -static NSString *FScriptObjectTemplateForEncodedObjCType(const char *ptr) -{ - while (*ptr == 'r' || *ptr == 'n' || *ptr == 'N' || *ptr == 'o' || *ptr == 'O' || *ptr == 'R' || *ptr == 'V') - ptr++; - -/* if (strcmp(ptr,@encode(id)) == 0) return @""; - else if (strcmp(ptr,@encode(char)) == 0) return @""; - else if (strcmp(ptr,@encode(int)) == 0) return @""; - else if (strcmp(ptr,@encode(short)) == 0) return @""; - else if (strcmp(ptr,@encode(long)) == 0) return @""; - else if (strcmp(ptr,@encode(long long)) == 0) return @""; - else if (strcmp(ptr,@encode(unsigned char)) == 0) return @""; - else if (strcmp(ptr,@encode(unsigned short)) == 0) return @""; - else if (strcmp(ptr,@encode(unsigned int)) == 0) return @""; - else if (strcmp(ptr,@encode(unsigned long)) == 0) return @""; - else if (strcmp(ptr,@encode(unsigned long long)) == 0) return @""; - else if (strcmp(ptr,@encode(float)) == 0) return @""; - else if (strcmp(ptr,@encode(double)) == 0) return @""; - else if (strcmp(ptr,@encode(char *)) == 0) return @""; -#warning 64BIT: Inspect use of @encode - else*/ if (strcmp(ptr,@encode(SEL)) == 0) return @"#selector"; - //else if (strcmp(ptr,@encode(Class)) == 0) return @""; - //else if (*ptr == '^') return @""; - else if (strcmp(ptr,@encode(NSRange)) == 0) return @"NSValue rangeWithLocation:0 length:0"; - else if (strcmp(ptr,@encode(NSPoint)) == 0) return @"0<>0"; - else if (strcmp(ptr,@encode(NSSize)) == 0) return @"NSValue sizeWithWidth:0 height:0"; - else if (strcmp(ptr,@encode(NSRect)) == 0) return @"0<>0 extent:0<>0"; - else if (strcmp(ptr,@encode(CGPoint)) == 0) return @"0<>0"; - else if (strcmp(ptr,@encode(CGSize)) == 0) return @"NSValue sizeWithWidth:0 height:0"; - else if (strcmp(ptr,@encode(CGRect)) == 0) return @"0<>0 extent:0<>0"; - //else if (strcmp(ptr,@encode(_Bool)) == 0) return @""; - else return @""; -} - -static NSMutableArray *customButtons = nil; - -@interface FSObjectBrowserView() // Methods declaration to let the compiler know - -- (void) fillMatrixForClassesBrowsing:(NSMatrix*)matrix; -- (void) fillMatrixForWorkspaceBrowsing:(NSMatrix*)matrix; -// - (void) fillMatrix:(NSMatrix *)matrix withMethodsAndPropertiesForObject:(id)object; -- (void) fillMatrix:(NSMatrix *)matrix withMethodsForObject:(id)object; -//- (void) fillMatrix:(NSMatrix *)matrix withPropertiesForObject:(id)object; -- (void) filter; -- (void) inspectAction:(id)sender; -- (id) selectedObject; -- (void) selectMethodNamed:(NSString *)methodName; -- (void) selfAction:(id)sender; -- (void) sendMessage:(SEL)selector withArguments:(FSArray *)arguments; -- (BOOL) sendMessageTo:(id)receiver selectorString:(NSString *)selectorStr arguments:(FSArray *)arguments putResultInMatrix:(NSMatrix *)matrix; -- (void) setFilterString:(NSString *)theFilterString; -- (void) setTitleOfLastColumn:(NSString *)title; -- (id) validSelectedObject; +static FSObjectBrowserCell* addRowToMatrix(NSMatrix* matrix); +NSInteger FSCompareClassNamesForAlphabeticalOrder(NSString* className1, NSString* className2, void* context); +static NSInteger FSCompareMethodsNamesForAlphabeticalOrder(NSString* m1, NSString* m2, void* context); +static NSString* printStringForObjectBrowser(id object); +static NSString* humanReadableFScriptTypeDescriptionFromEncodedObjCType(const char* ptr); +static NSString* FScriptObjectTemplateForEncodedObjCType(const char* ptr); -@end + +static NSMutableArray* customButtons = nil; + +/* + * + * + *================================================================================================*/ +#pragma mark - FSObjectBrowserView Implementation +/*================================================================================================== + */ @implementation FSObjectBrowserView +@synthesize interpreter; +@synthesize rootObject; + ++ (NSArray*)customButtons +{ + return customButtons; +} -+ (NSArray *)customButtons ++ (void)initialize { - return customButtons; + static BOOL tooLate = NO; + if (!tooLate) { + int i; + NSUserDefaults* defaults = [NSUserDefaults standardUserDefaults]; + NSMutableDictionary* registrationDict = [NSMutableDictionary dictionary]; + + [registrationDict setObject:[NSNumber numberWithDouble:[[NSFont userFixedPitchFontOfSize:-1] pointSize]] forKey:@"FScriptFontSize"]; + [defaults registerDefaults:registrationDict]; + + NSManagedObjectClass = NSClassFromString(@"NSManagedObject"); + + customButtons = [[NSMutableArray alloc] initWithCapacity:10]; + + for (i = 1; i < 11; i++) { + FSObjectBrowserToolbarButton* button = [[FSObjectBrowserToolbarButton alloc] initWithFrame:NSMakeRect(0, 0, 80, 20)]; + NSString* buttonName = [defaults stringForKey:[NSString stringWithFormat:@"BigBrowserToolbarButtonCustom%dName", i]]; + NSData* blockData = [defaults objectForKey:[NSString stringWithFormat:@"BigBrowserToolbarButtonCustom%dBlock", i]]; + FSBlock* block = nil; + + if (blockData) { + @try { + block = [[NSKeyedUnarchiver unarchiveObjectWithData:blockData] retain]; + } + @catch (id exception) + { + NSLog(@"Problem while loading a block for an F-Script object browser custom button: %@", FSErrorMessageFromException(exception)); + block = nil; // We will fall back to the default block template + } + } + + if (!buttonName) + buttonName = [NSString stringWithFormat:@"Custom%d", i]; + + if (!block) { + NSString* blockSource; + + if (i == 1) { + buttonName = @"Example1"; + blockSource = @"[:selectedObject|\n\n\"This block is an example illustrating the use of custom buttons in the object browser. This block prompts the user to save the selected object, and then returns a custom string.\"\n\nselectedObject save.\n'hello, I''m the result of the Example1 block !'\n]"; + } + else if (i == 2) { + buttonName = @"Example2"; + blockSource = @"#isEqual:"; + } + else if (i == 3) { + buttonName = @"Example3"; + blockSource = @"[\n\"This block is an example illustrating the use of custom buttons in the object browser. This block will simply open a standard about box.\"\n\nNSApplication sharedApplication orderFrontStandardAboutPanel:nil\n]"; + } + else + blockSource = @"[:selectedObject| selectedObject \"Define your custom block here.\"]"; + + block = [blockSource asBlock]; + } + + [button setIdentifier:[NSString stringWithFormat:@"Custom%d", i]]; + [button setName:buttonName]; + [button setBlock:block]; + [button setAction:@selector(applyBlockAction:)]; + [customButtons addObject:button]; + } + + [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(saveCustomButtonsSettings:) name:NSApplicationWillTerminateNotification object:nil]; + } } -+ (void) initialize ++ (void)saveCustomButtonsSettings { - static BOOL tooLate = NO; - if ( !tooLate ) - { - int i; - NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults]; - NSMutableDictionary *registrationDict = [NSMutableDictionary dictionary]; + int i; + NSUserDefaults* defaults = [NSUserDefaults standardUserDefaults]; + + for (i = 0; i < 10; i++) { + [defaults setObject:[[customButtons objectAtIndex:i] name] forKey:[NSString stringWithFormat:@"BigBrowserToolbarButtonCustom%dName", i + 1]]; + [defaults setObject:[NSKeyedArchiver archivedDataWithRootObject:[[customButtons objectAtIndex:i] block]] forKey:[NSString stringWithFormat:@"BigBrowserToolbarButtonCustom%dBlock", i + 1]]; + } + [defaults synchronize]; +} + ++ (void)saveCustomButtonsSettings:(NSNotification*)aNotification +{ + [self saveCustomButtonsSettings]; +} + +-(void)_setup +{ + CGFloat baseWidth = NSWidth([self bounds]); + CGFloat baseHeight = NSHeight([self bounds]); + CGFloat fontSize; - [registrationDict setObject:[NSNumber numberWithDouble:[[NSFont userFixedPitchFontOfSize:-1] pointSize]] forKey:@"FScriptFontSize"]; - [defaults registerDefaults:registrationDict]; + fontSize = systemFontSize(); - NSManagedObjectClass = NSClassFromString(@"NSManagedObject"); + browser = [[NSBrowser alloc] initWithFrame:NSMakeRect(0, FSObjectBrowserBottomBarHeight, baseWidth, baseHeight - FSObjectBrowserBottomBarHeight)]; + [browser setMatrixClass:FSObjectBrowserMatrix.class]; - customButtons = [[NSMutableArray alloc] initWithCapacity:10]; - - for (i = 1; i < 11; i++) - { - FSObjectBrowserToolbarButton *button = [[FSObjectBrowserToolbarButton alloc] initWithFrame:NSMakeRect(0,0,80,20)]; - NSString *buttonName = [defaults stringForKey:[NSString stringWithFormat:@"BigBrowserToolbarButtonCustom%dName",i]]; - NSData *blockData = [defaults objectForKey:[NSString stringWithFormat:@"BigBrowserToolbarButtonCustom%dBlock",i]]; - FSBlock *block = nil; - - if (blockData) - { - @try - { - block = [[NSKeyedUnarchiver unarchiveObjectWithData:blockData] retain]; + [browser setCellClass:[FSObjectBrowserCell class]]; + [browser setAutoresizingMask:NSViewWidthSizable | NSViewHeightSizable]; + [browser setHasHorizontalScroller:YES]; + [browser setMinColumnWidth:145 + (fontSize * 6)]; + [browser setTakesTitleFromPreviousColumn:NO]; + [browser setTitled:NO]; + [browser setTarget:self]; + [browser setDoubleAction:@selector(doubleClickAction:)]; + [[browser cellPrototype] setFont:[NSFont systemFontOfSize:fontSize]]; + [browser setDelegate:self]; + [browser setFocusRingType:NSFocusRingTypeNone]; + [browser setAutohidesScroller:YES]; + [browser setAllowsTypeSelect:NO]; + + if ([browser respondsToSelector:@selector(setColumnResizingType:)]) + [browser setColumnResizingType:2]; + + if ([browser respondsToSelector:@selector(setColumnsAutosaveName:)]) + [browser setColumnsAutosaveName:@"Object browser columns autosave configuration"]; + + bottomBarTextDisplay = [[FSObjectBrowserBottomBarTextDisplay alloc] initWithFrame:NSMakeRect(0, 0, baseWidth, FSObjectBrowserBottomBarHeight)]; + + [self addSubview:browser]; + [self addSubview:bottomBarTextDisplay]; + + browsingMode = FSBrowsingWorkspace; + + filterString = @""; + + matrixes = [[NSMutableSet alloc] init]; +} + +- (id)initWithFrame:(NSRect)frameRect +{ + self = [super initWithFrame:frameRect]; + if (self) { + [self _setup]; } - @catch (id exception) - { - NSLog(@"Problem while loading a block for an F-Script object browser custom button: %@", FSErrorMessageFromException(exception)); - block = nil; // We will fall back to the default block template + return self; +} + +- (instancetype)initWithCoder:(NSCoder *)coder +{ + self = [super initWithCoder:coder]; + if (self) { + [self _setup]; } - } - - if (!buttonName) buttonName = [NSString stringWithFormat:@"Custom%d", i]; - - if (!block) - { - NSString *blockSource; - - if (i == 1) - { - buttonName = @"Example1"; - blockSource = @"[:selectedObject|\n\n\"This block is an example illustrating the use of custom buttons in the object browser. This block prompts the user to save the selected object, and then returns a custom string.\"\n\nselectedObject save.\n'hello, I''m the result of the Example1 block !'\n]"; + return self; +} + + + +- (void)addBindingForObject:(id)object withName:(NSString*)name toMatrix:(NSMatrix*)matrix classLabel:(NSString*)classLabel selectedClassLabel:(NSString*)selectedClassLabel selectedLabel:(NSString*)selectedLabel selectedObject:(id)selectedObject +{ + NSDictionary* infoForBinding = [object infoForBinding:name]; + if (infoForBinding) { + NSString* objectBoundLabel = @"Object bound"; + NSString* keyPathBoundLabel = @"Key path bound"; + NSString* valueClassLabel = @"Value class"; + NSString* valueLabel = @"Value"; + NSString* optionsLabel = @"Options"; + + id objectBound = [infoForBinding objectForKey:NSObservedObjectKey]; + NSString* keyPathBound = [infoForBinding objectForKey:NSObservedKeyPathKey]; + Class valueClass = [object respondsToSelector:@selector(valueClassForBinding:)] ? [object valueClassForBinding:name] : nil; + id value = [objectBound valueForKeyPath:keyPathBound]; + NSDictionary* options = [infoForBinding objectForKey:NSOptionsKey]; + + NSString* objectBoundString = printString(objectBound); + NSString* keyPathBoundString = keyPathBound; + NSString* valueClassString = printString(valueClass); + NSString* valueString = printString(value); + NSString* optionsString = printString(options); + + BOOL shouldDisplayBinding = [filterString isEqualToString:@""] + || containsString(name, filterString, NSCaseInsensitiveSearch) + || containsString(objectBoundLabel, filterString, NSCaseInsensitiveSearch) + || containsString(objectBoundString, filterString, NSCaseInsensitiveSearch) + || containsString(keyPathBoundLabel, filterString, NSCaseInsensitiveSearch) + || containsString(keyPathBoundString, filterString, NSCaseInsensitiveSearch) + || containsString(valueLabel, filterString, NSCaseInsensitiveSearch) + || containsString(valueString, filterString, NSCaseInsensitiveSearch) + || (valueClass != nil && containsString(valueClassLabel, filterString, NSCaseInsensitiveSearch)) + || (valueClass != nil && containsString(valueClassString, filterString, NSCaseInsensitiveSearch)) + || containsString(optionsLabel, filterString, NSCaseInsensitiveSearch) + || containsString(optionsString, filterString, NSCaseInsensitiveSearch) + || (selectedClassLabel == classLabel && ((selectedObject == objectBound && selectedLabel == objectBoundLabel) + || (selectedObject == keyPathBound && selectedLabel == keyPathBoundLabel) + || (selectedObject == value && selectedLabel == valueLabel) + || (valueClass != nil && selectedObject == valueClass && selectedLabel == valueClassLabel) + || (selectedObject == options && selectedLabel == optionsLabel))); + + if (shouldDisplayBinding) { + [self addLabel:[NSString stringWithFormat:@"Binding: %@", name] toMatrix:matrix]; + [self addObject:objectBound withLabel:objectBoundLabel toMatrix:matrix leaf:NO classLabel:classLabel selectedClassLabel:selectedClassLabel selectedLabel:selectedLabel selectedObject:selectedObject indentationLevel:1]; + [self addObject:keyPathBound withLabel:keyPathBoundLabel toMatrix:matrix leaf:NO classLabel:classLabel selectedClassLabel:selectedClassLabel selectedLabel:selectedLabel selectedObject:selectedObject indentationLevel:1]; + if (valueClass != nil) + [self addObject:valueClass withLabel:valueClassLabel toMatrix:matrix leaf:NO classLabel:classLabel selectedClassLabel:selectedClassLabel selectedLabel:selectedLabel selectedObject:selectedObject indentationLevel:1]; + [self addObject:value withLabel:valueLabel toMatrix:matrix leaf:NO classLabel:classLabel selectedClassLabel:selectedClassLabel selectedLabel:selectedLabel selectedObject:selectedObject indentationLevel:1]; + [self addObject:options withLabel:optionsLabel toMatrix:matrix leaf:NO classLabel:classLabel selectedClassLabel:selectedClassLabel selectedLabel:selectedLabel selectedObject:selectedObject indentationLevel:1]; + [self addBlankRowToMatrix:matrix]; + } } - else if (i == 2) - { - buttonName = @"Example2"; - blockSource = @"#isEqual:"; +} + +- (void)addDictionary:(NSDictionary*)d withLabel:(NSString*)label toMatrix:(NSMatrix*)matrix classLabel:(NSString*)classLabel selectedClassLabel:(NSString*)selectedClassLabel selectedLabel:(NSString*)selectedLabel selectedObject:(id)selectedObject +{ + if (d) { + NSEnumerator* enumerator = [d keyEnumerator]; + id key, value; + NSString* objectString; + NSUInteger count = [d count]; + FSObjectBrowserCell* cell; + + if (count != 0) { + if ([self hasEmptyFilterString] || containsString(label, filterString, NSCaseInsensitiveSearch)) { + [self addLabel:label toMatrix:matrix]; + + while ((key = [enumerator nextObject])) { + cell = addRowToMatrix(matrix); + + value = [d objectForKey:key]; + [cell setRepresentedObject:[FSAssociation associationWithKey:key value:value]]; + objectString = [NSString stringWithFormat:@" %@ -> %@", printStringLimited(key, 50), printStringLimited(value, 1000)]; + if ([objectString length] > 510) + objectString = [[objectString substringWithRange:NSMakeRange(0, 500)] stringByAppendingString:@" ..."]; + [cell setStringValue:objectString]; + [cell setObjectBrowserCellType:FSOBOBJECT]; + [cell setLabel:printString(key)]; + [cell setClassLabel:@""]; + if (value == selectedObject && [printString(key) isEqualToString:selectedLabel]) + [matrix selectCellAtRow:[matrix numberOfRows] - 1 column:0]; + } + } + else { + while ((key = [enumerator nextObject]) && !containsString(printString(key), filterString, NSCaseInsensitiveSearch) && !containsString(printString([d objectForKey:key]), filterString, NSCaseInsensitiveSearch) && !([d objectForKey:key] == selectedObject && [printString(key) isEqualToString:selectedLabel])) + ; + + if (key) { + [self addLabel:label toMatrix:matrix]; + while (key) { + value = [d objectForKey:key]; + BOOL addingSelectedObject = (value == selectedObject && [printString(key) isEqualToString:selectedLabel]); + if (containsString(printString(value), filterString, NSCaseInsensitiveSearch) || containsString(printString(key), filterString, NSCaseInsensitiveSearch) || addingSelectedObject) { + cell = addRowToMatrix(matrix); + + [cell setRepresentedObject:[FSAssociation associationWithKey:key value:value]]; + objectString = [NSString stringWithFormat:@" %@ -> %@", printStringLimited(key, 50), printStringLimited(value, 1000)]; + if ([objectString length] > 510) + objectString = [[objectString substringWithRange:NSMakeRange(0, 500)] stringByAppendingString:@" ..."]; + [cell setStringValue:objectString]; + [cell setObjectBrowserCellType:FSOBOBJECT]; + [cell setLabel:printString(key)]; + [cell setClassLabel:@""]; + if (addingSelectedObject) + [matrix selectCellAtRow:[matrix numberOfRows] - 1 column:0]; + } + key = [enumerator nextObject]; + } + } + } + } } - else if (i == 3) - { - buttonName = @"Example3"; - blockSource = @"[\n\"This block is an example illustrating the use of custom buttons in the object browser. This block will simply open a standard about box.\"\n\nNSApplication sharedApplication orderFrontStandardAboutPanel:nil\n]"; +} + +- (void)applyBlockAction:(id)sender +{ + FSBlock* block = [sender block]; + + @try { + [block compilIfNeeded]; } - else blockSource = @"[:selectedObject| selectedObject \"Define your custom block here.\"]"; - - block = [blockSource asBlock]; - } - - [button setIdentifier:[NSString stringWithFormat:@"Custom%d", i]]; - [button setName:buttonName]; - [button setBlock:block]; - [button setAction:@selector(applyBlockAction:)]; - [customButtons addObject:button]; - } - - [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(saveCustomButtonsSettings:) name:NSApplicationWillTerminateNotification object:nil]; - } -} - -+ (void)saveCustomButtonsSettings -{ - int i; - NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults]; - - for (i = 0; i < 10; i++) - { - [defaults setObject:[[customButtons objectAtIndex:i] name] forKey:[NSString stringWithFormat:@"BigBrowserToolbarButtonCustom%dName",i+1]]; - [defaults setObject:[NSKeyedArchiver archivedDataWithRootObject:[[customButtons objectAtIndex:i] block]] forKey:[NSString stringWithFormat:@"BigBrowserToolbarButtonCustom%dBlock",i+1]]; - } - [defaults synchronize]; -} - -+ (void)saveCustomButtonsSettings:(NSNotification *)aNotification -{ - [self saveCustomButtonsSettings]; -} - -- (void)addBindingForObject:(id)object withName:(NSString *)name toMatrix:(NSMatrix *)matrix classLabel:(NSString *)classLabel selectedClassLabel:(NSString *)selectedClassLabel selectedLabel:(NSString *)selectedLabel selectedObject:(id)selectedObject -{ - NSDictionary *infoForBinding = [object infoForBinding:name]; - if (infoForBinding) - { - NSString *objectBoundLabel = @"Object bound"; - NSString *keyPathBoundLabel = @"Key path bound"; - NSString *valueClassLabel = @"Value class"; - NSString *valueLabel = @"Value"; - NSString *optionsLabel = @"Options"; - - id objectBound = [infoForBinding objectForKey:NSObservedObjectKey]; - NSString *keyPathBound = [infoForBinding objectForKey:NSObservedKeyPathKey]; - Class valueClass = [object respondsToSelector:@selector(valueClassForBinding:)] ? [object valueClassForBinding:name] : nil; - id value = [objectBound valueForKeyPath:keyPathBound]; - NSDictionary *options = [infoForBinding objectForKey:NSOptionsKey]; - - NSString *objectBoundString = printString(objectBound); - NSString *keyPathBoundString = keyPathBound; - NSString *valueClassString = printString(valueClass); - NSString *valueString = printString(value); - NSString *optionsString = printString(options); - - BOOL shouldDisplayBinding = [filterString isEqualToString:@""] - || containsString(name , filterString, NSCaseInsensitiveSearch) - || containsString(objectBoundLabel , filterString, NSCaseInsensitiveSearch) - || containsString(objectBoundString , filterString, NSCaseInsensitiveSearch) - || containsString(keyPathBoundLabel , filterString, NSCaseInsensitiveSearch) - || containsString(keyPathBoundString, filterString, NSCaseInsensitiveSearch) - || containsString(valueLabel , filterString, NSCaseInsensitiveSearch) - || containsString(valueString , filterString, NSCaseInsensitiveSearch) - || (valueClass != nil && containsString(valueClassLabel , filterString, NSCaseInsensitiveSearch)) - || (valueClass != nil && containsString(valueClassString , filterString, NSCaseInsensitiveSearch)) - || containsString(optionsLabel , filterString, NSCaseInsensitiveSearch) - || containsString(optionsString , filterString, NSCaseInsensitiveSearch) - || (selectedClassLabel == classLabel && ( (selectedObject == objectBound && selectedLabel == objectBoundLabel) - || (selectedObject == keyPathBound && selectedLabel == keyPathBoundLabel) - || (selectedObject == value && selectedLabel == valueLabel) - || (valueClass != nil && selectedObject == valueClass && selectedLabel == valueClassLabel) - || (selectedObject == options && selectedLabel == optionsLabel))); - - if (shouldDisplayBinding) - { - [self addLabel:[NSString stringWithFormat:@"Binding: %@",name] toMatrix:matrix]; - [self addObject:objectBound withLabel:objectBoundLabel toMatrix:matrix leaf:NO classLabel:classLabel selectedClassLabel:selectedClassLabel selectedLabel:selectedLabel selectedObject:selectedObject indentationLevel:1]; - [self addObject:keyPathBound withLabel:keyPathBoundLabel toMatrix:matrix leaf:NO classLabel:classLabel selectedClassLabel:selectedClassLabel selectedLabel:selectedLabel selectedObject:selectedObject indentationLevel:1]; - if (valueClass != nil) [self addObject:valueClass withLabel:valueClassLabel toMatrix:matrix leaf:NO classLabel:classLabel selectedClassLabel:selectedClassLabel selectedLabel:selectedLabel selectedObject:selectedObject indentationLevel:1]; - [self addObject:value withLabel:valueLabel toMatrix:matrix leaf:NO classLabel:classLabel selectedClassLabel:selectedClassLabel selectedLabel:selectedLabel selectedObject:selectedObject indentationLevel:1]; - [self addObject:options withLabel:optionsLabel toMatrix:matrix leaf:NO classLabel:classLabel selectedClassLabel:selectedClassLabel selectedLabel:selectedLabel selectedObject:selectedObject indentationLevel:1]; - [self addBlankRowToMatrix:matrix]; - } - } -} - -- (void)addDictionary:(NSDictionary *)d withLabel:(NSString *)label toMatrix:(NSMatrix *)matrix classLabel:(NSString *)classLabel selectedClassLabel:(NSString *)selectedClassLabel selectedLabel:(NSString *)selectedLabel selectedObject:(id)selectedObject -{ - if (d) - { - NSEnumerator *enumerator = [d keyEnumerator]; - id key,value; - NSString *objectString; - NSUInteger count = [d count]; - FSObjectBrowserCell *cell; - - if (count != 0) - { - if ([self hasEmptyFilterString] || containsString(label, filterString, NSCaseInsensitiveSearch)) - { - [self addLabel:label toMatrix:matrix]; - - while ((key = [enumerator nextObject])) + @catch (id exception) { - //[matrix addRow]; - //cell = [matrix cellAtRow:[matrix numberOfRows]-1 column:0]; - cell = addRowToMatrix(matrix); - - value = [d objectForKey:key]; - [cell setRepresentedObject:[FSAssociation associationWithKey:key value:value]]; - objectString = [NSString stringWithFormat:@" %@ -> %@",printStringLimited(key,50),printStringLimited(value,1000)]; - if ([objectString length] > 510) - objectString = [[objectString substringWithRange:NSMakeRange(0,500)] stringByAppendingString:@" ..."]; - [cell setStringValue:objectString]; - [cell setObjectBrowserCellType:FSOBOBJECT]; - [cell setLabel:printString(key)]; - [cell setClassLabel:@""]; - if (value == selectedObject && [printString(key) isEqualToString:selectedLabel]) - [matrix selectCellAtRow:[matrix numberOfRows]-1 column:0]; + NSRunAlertPanel(@"Syntax Error", FSErrorMessageFromException(exception), @"OK", nil, nil, nil); + FSInspectBlocksInCallStackForException(exception); + return; } - } - else - { - while ((key = [enumerator nextObject]) && !containsString(printString(key), filterString, NSCaseInsensitiveSearch) && !containsString(printString([d objectForKey:key]), filterString, NSCaseInsensitiveSearch) && !([d objectForKey:key] == selectedObject && [printString(key) isEqualToString:selectedLabel])); - if (key) - { - [self addLabel:label toMatrix:matrix]; - while (key) - { - value = [d objectForKey:key]; - BOOL addingSelectedObject = (value == selectedObject && [printString(key) isEqualToString:selectedLabel]); - if (containsString(printString(value), filterString, NSCaseInsensitiveSearch) || containsString(printString(key), filterString, NSCaseInsensitiveSearch) || addingSelectedObject) - { - //[matrix addRow]; - //cell = [matrix cellAtRow:[matrix numberOfRows]-1 column:0]; - cell = addRowToMatrix(matrix); - - [cell setRepresentedObject:[FSAssociation associationWithKey:key value:value]]; - objectString = [NSString stringWithFormat:@" %@ -> %@",printStringLimited(key,50),printStringLimited(value,1000)]; - if ([objectString length] > 510) - objectString = [[objectString substringWithRange:NSMakeRange(0,500)] stringByAppendingString:@" ..."]; - [cell setStringValue:objectString]; - [cell setObjectBrowserCellType:FSOBOBJECT]; - [cell setLabel:printString(key)]; - [cell setClassLabel:@""]; - if (addingSelectedObject) - [matrix selectCellAtRow:[matrix numberOfRows]-1 column:0]; - } - key = [enumerator nextObject]; - } + if ([block isCompact]) { + [self sendMessage:[block selector] withArguments:nil]; } - } - } - } -} - -- (void) applyBlockAction:(id)sender -{ - FSBlock *block = [sender block]; - - @try - { - [block compilIfNeeded]; - } - @catch (id exception) - { - NSRunAlertPanel(@"Syntax Error", FSErrorMessageFromException(exception), @"OK", nil, nil,nil); - FSInspectBlocksInCallStackForException(exception); - return; - } - - if ([block isCompact]) - { - [self sendMessage:[block selector] withArguments:nil]; - } - else - { - FSObjectBrowserButtonCtxBlock *contextualizedBlock; - SEL messageToArgumentSelector; - - contextualizedBlock = [interpreter objectBrowserButtonCtxBlockFromString:[block printString]]; - [contextualizedBlock setMaster:block]; - - if ([contextualizedBlock argumentCount] == 0) - { - FSInterpreterResult *interpreterResult = [contextualizedBlock executeWithArguments:[NSArray array]]; - - if (![interpreterResult isOK]) - { - NSRunAlertPanel(@"Error", [interpreterResult errorMessage], @"OK", nil, nil,nil); - [interpreterResult inspectBlocksInCallStack]; - return; - } - } - else if ((messageToArgumentSelector = [contextualizedBlock messageToArgumentSelector]) != (SEL)0 && messageToArgumentSelector != @selector(alloc) && messageToArgumentSelector != @selector(allocWithZone:)) - { - NSString *methodName = [FSCompiler stringFromSelector:messageToArgumentSelector]; - id selectedObject; - FSInterpreterResult *interpreterResult; - - if ((selectedObject = [self validSelectedObject]) == nil) - { - NSBeep(); - return; - } - - [browser setDelegate:nil]; - [self selectMethodNamed:methodName]; - [browser setDelegate:self]; - - interpreterResult = [contextualizedBlock executeWithArguments:[NSArray arrayWithObject:selectedObject]]; - - if ([interpreterResult isOK]) - [self fillMatrix:[browser matrixInColumn:[browser lastColumn]] withObject:[interpreterResult result]]; - else - { - NSRunAlertPanel(@"Error", [interpreterResult errorMessage], @"OK", nil, nil,nil); - [interpreterResult inspectBlocksInCallStack]; - return; - } - } - else - [self sendMessage:@selector(applyBlock:) withArguments:[FSArray arrayWithObject:contextualizedBlock]]; - } - [browser scrollColumnToVisible:[browser lastColumn]]; - [browser scrollColumnsLeftBy:1]; // Workaround for the call above to scrollColumnToVisible: not working as expected. -} - -- (void)addBlankRowToMatrix:(NSMatrix *)matrix -{ - NSBrowserCell *cell; - //[matrix addRow]; - //cell = [matrix cellAtRow:[matrix numberOfRows]-1 column:0]; - cell = addRowToMatrix(matrix); - - [cell setLeaf:YES]; - [cell setEnabled:NO]; -} - -- (void)addClassWithName:(NSString *)className toMatrix:(NSMatrix *)matrix label:(NSString *)label classLabel:(NSString *)classLabel indentationLevel:(NSUInteger)indentationLevel -{ - FSObjectBrowserCell *cell = addRowToMatrix(matrix); - NSMutableString *cellString = [NSMutableString string]; - - [cell setLabel:label]; - [cell setClassLabel:classLabel]; - - for (NSUInteger i = 0; i < indentationLevel; i++) [cellString appendString:@" "]; - - [cellString appendString:className]; - [cell setStringValue:cellString]; - [cell setObjectBrowserCellType:FSOBCLASS]; -} - -// Not tested -/* -- (void)addClassWithName:(NSString *)className withLabel:(NSString *)label toMatrix:(NSMatrix *)matrix classLabel:(NSString *)classLabel selectedClassLabel:(NSString *)selectedClassLabel selectedLabel:(NSString *)selectedLabel selectedObject:(id)selectedObject -{ - BOOL hasEmptyFilterString = [filterString isEqualToString:@""]; - BOOL addingSelectedObject = (selectedObject != nil && [selectedObject class] == selectedObject && [NSStringFromClass(selectedObject) isEqualToString:className] && [label isEqualToString:selectedLabel] && [classLabel isEqualToString:selectedClassLabel]); - - if (hasEmptyFilterString || containsString(label, filterString, NSCaseInsensitiveSearch) || containsString(printString(object), filterString, NSCaseInsensitiveSearch) || addingSelectedObject) - { - [self addLabel:label toMatrix:matrix]; - [self addClassWithName:className toMatrix:matrix label:label classLabel:classLabel indentationLevel:1]; - if (addingSelectedObject) - [matrix selectCellAtRow:[matrix numberOfRows]-1 column:0]; - } -} -*/ - -- (void)addClassesWithNames:(NSArray *)classNames withLabel:(NSString *)label toMatrix:(NSMatrix *)matrix classLabel:(NSString *)classLabel selectedClassLabel:(NSString *)selectedClassLabel selectedLabel:(NSString *)selectedLabel selectedObject:(id)selectedObject -{ - if (classNames) - { - NSUInteger i; - NSUInteger count = [classNames count]; - - if (count != 0) - { - if ([self hasEmptyFilterString] || containsString(label, filterString, NSCaseInsensitiveSearch)) - { - [self addLabel:label toMatrix:matrix]; - for (i = 0; i < count; i++) - { - NSString *className = [classNames objectAtIndex:i]; - [self addClassWithName:className toMatrix:matrix label:label classLabel:classLabel indentationLevel:1]; - - if (selectedObject != nil && [selectedObject class] == selectedObject && [NSStringFromClass(selectedObject) isEqualToString:className] && [label isEqualToString:selectedLabel] && [classLabel isEqualToString:selectedClassLabel]) - [matrix selectCellAtRow:[matrix numberOfRows]-1 column:0]; + else { + FSObjectBrowserButtonCtxBlock* contextualizedBlock; + SEL messageToArgumentSelector; + + contextualizedBlock = [interpreter objectBrowserButtonCtxBlockFromString:[block printString]]; + [contextualizedBlock setMaster:block]; + + if ([contextualizedBlock argumentCount] == 0) { + FSInterpreterResult* interpreterResult = [contextualizedBlock executeWithArguments:[NSArray array]]; + + if (![interpreterResult isOK]) { + NSRunAlertPanel(@"Error", [interpreterResult errorMessage], @"OK", nil, nil, nil); + [interpreterResult inspectBlocksInCallStack]; + return; + } + } + else if ((messageToArgumentSelector = [contextualizedBlock messageToArgumentSelector]) != (SEL)0 && messageToArgumentSelector != @selector(alloc) && messageToArgumentSelector != @selector(allocWithZone:)) { + NSString* methodName = [FSCompiler stringFromSelector:messageToArgumentSelector]; + id selectedObject; + FSInterpreterResult* interpreterResult; + + if ((selectedObject = [self validSelectedObject]) == nil) { + NSBeep(); + return; + } + + [browser setDelegate:nil]; + [self selectMethodNamed:methodName]; + [browser setDelegate:self]; + + interpreterResult = [contextualizedBlock executeWithArguments:[NSArray arrayWithObject:selectedObject]]; + + if ([interpreterResult isOK]) + [self fillMatrix:[browser matrixInColumn:[browser lastColumn]] column:browser.lastColumn withObject:[interpreterResult result]]; + else { + NSRunAlertPanel(@"Error", [interpreterResult errorMessage], @"OK", nil, nil, nil); + [interpreterResult inspectBlocksInCallStack]; + return; + } + } + else + [self sendMessage:@selector(applyBlock:) withArguments:[FSArray arrayWithObject:contextualizedBlock]]; } - } - else - { - i = 0; - while (i < count && !containsString([classNames objectAtIndex:i], filterString, NSCaseInsensitiveSearch) && !(selectedObject != nil && [selectedObject class] == selectedObject && [NSStringFromClass(selectedObject) isEqualToString:[classNames objectAtIndex:i]] && [label isEqualToString:selectedLabel] && [classLabel isEqualToString:selectedClassLabel])) - i++; - if (i < count) - { - [self addLabel:label toMatrix:matrix]; - for (; i < count; i++) - { - BOOL addingSelectedObject = (selectedObject != nil && [selectedObject class] == selectedObject && [NSStringFromClass(selectedObject) isEqualToString:[classNames objectAtIndex:i]] && [label isEqualToString:selectedLabel] && [classLabel isEqualToString:selectedClassLabel]); - if (containsString([classNames objectAtIndex:i], filterString, NSCaseInsensitiveSearch) || addingSelectedObject) - { - [self addClassWithName:[classNames objectAtIndex:i] toMatrix:matrix label:label classLabel:classLabel indentationLevel:1]; - if (addingSelectedObject) - [matrix selectCellAtRow:[matrix numberOfRows]-1 column:0]; - } - } + [browser scrollColumnToVisible:[browser lastColumn]]; + [browser scrollColumnsLeftBy:1]; // Workaround for the call above to scrollColumnToVisible: not working as expected. +} + +- (void)addBlankRowToMatrix:(NSMatrix*)matrix +{ + NSBrowserCell* cell; + //[matrix addRow]; + //cell = [matrix cellAtRow:[matrix numberOfRows]-1 column:0]; + cell = addRowToMatrix(matrix); + + [cell setLeaf:YES]; + [cell setEnabled:NO]; +} + +- (void)addClassWithName:(NSString*)className toMatrix:(NSMatrix*)matrix label:(NSString*)label classLabel:(NSString*)classLabel indentationLevel:(NSUInteger)indentationLevel +{ + FSObjectBrowserCell* cell = addRowToMatrix(matrix); + NSMutableString* cellString = [NSMutableString string]; + + [cell setLabel:label]; + [cell setClassLabel:classLabel]; + + for (NSUInteger i = 0; i < indentationLevel; i++) + [cellString appendString:@" "]; + + [cellString appendString:className]; + [cell setStringValue:cellString]; + [cell setObjectBrowserCellType:FSOBCLASS]; +} + + +- (void)addClassesWithNames:(NSArray*)classNames withLabel:(NSString*)label toMatrix:(NSMatrix*)matrix classLabel:(NSString*)classLabel selectedClassLabel:(NSString*)selectedClassLabel selectedLabel:(NSString*)selectedLabel selectedObject:(id)selectedObject +{ + if (classNames) { + NSUInteger i; + NSUInteger count = [classNames count]; + + if (count != 0) { + if ([self hasEmptyFilterString] || containsString(label, filterString, NSCaseInsensitiveSearch)) { + [self addLabel:label toMatrix:matrix]; + for (i = 0; i < count; i++) { + NSString* className = [classNames objectAtIndex:i]; + [self addClassWithName:className toMatrix:matrix label:label classLabel:classLabel indentationLevel:1]; + + if (selectedObject != nil && [selectedObject class] == selectedObject && [NSStringFromClass(selectedObject) isEqualToString:className] && [label isEqualToString:selectedLabel] && [classLabel isEqualToString:selectedClassLabel]) + [matrix selectCellAtRow:[matrix numberOfRows] - 1 column:0]; + } + } + else { + i = 0; + while (i < count && !containsString([classNames objectAtIndex:i], filterString, NSCaseInsensitiveSearch) && !(selectedObject != nil && [selectedObject class] == selectedObject && [NSStringFromClass(selectedObject) isEqualToString:[classNames objectAtIndex:i]] && [label isEqualToString:selectedLabel] && [classLabel isEqualToString:selectedClassLabel])) + i++; + if (i < count) { + [self addLabel:label toMatrix:matrix]; + for (; i < count; i++) { + BOOL addingSelectedObject = (selectedObject != nil && [selectedObject class] == selectedObject && [NSStringFromClass(selectedObject) isEqualToString:[classNames objectAtIndex:i]] && [label isEqualToString:selectedLabel] && [classLabel isEqualToString:selectedClassLabel]); + if (containsString([classNames objectAtIndex:i], filterString, NSCaseInsensitiveSearch) || addingSelectedObject) { + [self addClassWithName:[classNames objectAtIndex:i] toMatrix:matrix label:label classLabel:classLabel indentationLevel:1]; + if (addingSelectedObject) + [matrix selectCellAtRow:[matrix numberOfRows] - 1 column:0]; + } + } + } + } + } } - } - } - } } -- (void)addClassLabel:(NSString *)label toMatrix:(NSMatrix *)matrix color:(NSColor *)color +- (void)addClassLabel:(NSString*)label toMatrix:(NSMatrix*)matrix color:(NSColor*)color { - NSBrowserCell *cell; - NSDictionary *txtDict = [NSDictionary dictionaryWithObjectsAndKeys:[NSColor whiteColor], NSForegroundColorAttributeName, color, NSBackgroundColorAttributeName, nil]; - NSMutableAttributedString *attrStr = [[[NSMutableAttributedString alloc] initWithString:[NSString stringWithFormat:@" %@ ", label] attributes:txtDict] autorelease]; + NSBrowserCell* cell; + NSDictionary* txtDict = [NSDictionary dictionaryWithObjectsAndKeys:[NSColor whiteColor], NSForegroundColorAttributeName, color, NSBackgroundColorAttributeName, nil]; + NSMutableAttributedString* attrStr = [[[NSMutableAttributedString alloc] initWithString:[NSString stringWithFormat:@" %@ ", label] attributes:txtDict] autorelease]; - [self addBlankRowToMatrix:matrix]; + [self addBlankRowToMatrix:matrix]; + cell = addRowToMatrix(matrix); - //[matrix addRow]; - //cell = [matrix cellAtRow:[matrix numberOfRows]-1 column:0]; - cell = addRowToMatrix(matrix); - - [cell setLeaf:YES]; - [cell setEnabled:NO]; - [attrStr setAlignment:NSCenterTextAlignment range:NSMakeRange(0,[attrStr length])]; - [cell setAttributedStringValue:attrStr]; + [cell setLeaf:YES]; + [cell setEnabled:NO]; + [attrStr setAlignment:NSCenterTextAlignment range:NSMakeRange(0, [attrStr length])]; + [cell setAttributedStringValue:attrStr]; } -- (void)addClassLabel:(NSString *)label toMatrix:(NSMatrix *)matrix +- (void)addClassLabel:(NSString*)label toMatrix:(NSMatrix*)matrix { - [self addClassLabel:label toMatrix:matrix color:[NSColor colorWithCalibratedRed:0.1 green:0.65 blue:0.12 alpha:1]]; + [self addClassLabel:label toMatrix:matrix color:[NSColor colorWithCalibratedRed:0.1 green:0.65 blue:0.12 alpha:1]]; } -- (void)addLabel:(NSString *)label toMatrix:(NSMatrix *)matrix indentationLevel:(NSUInteger)indentationLevel +- (void)addLabel:(NSString*)label toMatrix:(NSMatrix*)matrix indentationLevel:(NSUInteger)indentationLevel { - NSBrowserCell *cell; - NSMutableString *cellString = [NSMutableString string]; + NSBrowserCell* cell; + NSMutableString* cellString = [NSMutableString string]; + + cell = addRowToMatrix(matrix); + [cell setLeaf:YES]; + [cell setEnabled:NO]; + for (NSUInteger i = 0; i < indentationLevel; i++) + [cellString appendString:@" "]; + [cellString appendString:label]; + [cell setStringValue:cellString]; +} - //[matrix addRow]; - //cell = [matrix cellAtRow:[matrix numberOfRows]-1 column:0]; - cell = addRowToMatrix(matrix); - - [cell setLeaf:YES]; - [cell setEnabled:NO]; - for (NSUInteger i = 0; i < indentationLevel; i++) [cellString appendString:@" "]; - [cellString appendString:label]; - [cell setStringValue:cellString]; +- (void)addLabel:(NSString*)label toMatrix:(NSMatrix*)matrix +{ + [self addLabel:label toMatrix:matrix indentationLevel:0]; } -- (void)addLabel:(NSString *)label toMatrix:(NSMatrix *)matrix +- (void)addLabelAlone:(NSString*)label toMatrix:(NSMatrix*)matrix { - [self addLabel:label toMatrix:matrix indentationLevel:0]; + if ([self hasEmptyFilterString] || containsString(label, filterString, NSCaseInsensitiveSearch)) { + [self addLabel:label toMatrix:matrix]; + } } -- (void)addLabelAlone:(NSString *)label toMatrix:(NSMatrix *)matrix + +- (void)addObject:(id)object + toMatrix:(NSMatrix*)matrix + label:(NSString*)label + classLabel:(NSString*)classLabel + indentationLevel:(NSUInteger)indentationLevel + leaf:(BOOL)leaf { - if ( [self hasEmptyFilterString] || containsString(label, filterString, NSCaseInsensitiveSearch) ) - { - [self addLabel:label toMatrix:matrix]; - } + FSObjectBrowserCell* cell; + NSString* objectString = printStringForObjectBrowser(object); + + cell = addRowToMatrix(matrix); + + if ([object isKindOfClass:[FSObjectBrowserNamedObjectWrapper class]]) + [cell setRepresentedObject:[object object]]; + else + [cell setRepresentedObject:object]; + + [cell setLabel:label]; + [cell setClassLabel:classLabel]; + if (object == nil || leaf) { + [cell setLeaf:YES]; + } + + NSMutableString* cellString = [NSMutableString string]; + for (NSUInteger i = 0; i < indentationLevel; i++) + [cellString appendString:@" "]; + [cellString appendString:objectString]; + + if ([object isKindOfClass:[FSNewlyAllocatedObjectHolder class]]) { + NSColor* txtColor = [NSColor purpleColor]; + NSDictionary* txtDict = [NSDictionary dictionaryWithObjectsAndKeys:txtColor, NSForegroundColorAttributeName, nil]; + NSAttributedString* attrStr = [[[NSMutableAttributedString alloc] initWithString:cellString attributes:txtDict] autorelease]; + [cell setAttributedStringValue:attrStr]; + } + else { + [cell setStringValue:cellString]; + } + [cell setObjectBrowserCellType:FSOBOBJECT]; } -- (void)addObject:(id)object toMatrix:(NSMatrix *)matrix label:(NSString *)label classLabel:(NSString *)classLabel indentationLevel:(NSUInteger)indentationLevel leaf:(BOOL)leaf + +- (void)addObject:(id)object + toMatrix:(NSMatrix*)matrix + label:(NSString*)label + classLabel:(NSString*)classLabel + indentationLevel:(NSUInteger)indentationLevel { - FSObjectBrowserCell *cell; - NSString *objectString = printStringForObjectBrowser(object); + [self addObject:object toMatrix:matrix label:label classLabel:classLabel indentationLevel:indentationLevel leaf:NO]; +} - //[matrix addRow]; - //cell = [matrix cellAtRow:[matrix numberOfRows]-1 column:0]; - cell = addRowToMatrix(matrix); - - if ([object isKindOfClass:[FSObjectBrowserNamedObjectWrapper class]]) [cell setRepresentedObject:[object object]]; - else [cell setRepresentedObject:object]; - - [cell setLabel:label]; - [cell setClassLabel:classLabel]; - if (object == nil || leaf) - { - [cell setLeaf:YES]; - } - - NSMutableString *cellString = [NSMutableString string]; - for (NSUInteger i = 0; i < indentationLevel; i++) [cellString appendString:@" "]; - [cellString appendString:objectString]; - if ([object isKindOfClass:[FSNewlyAllocatedObjectHolder class]]) - { - NSColor *txtColor = [NSColor purpleColor]; - NSDictionary *txtDict = [NSDictionary dictionaryWithObjectsAndKeys:txtColor, NSForegroundColorAttributeName, nil]; - NSAttributedString *attrStr = [[[NSMutableAttributedString alloc] initWithString:cellString attributes:txtDict] autorelease]; - [cell setAttributedStringValue:attrStr]; - } - else - { - [cell setStringValue:cellString]; - } - [cell setObjectBrowserCellType:FSOBOBJECT]; +- (void)addObject:(id)object + toMatrix:(NSMatrix*)matrix + label:(NSString*)label + classLabel:(NSString*)classLabel +{ + [self addObject:object toMatrix:matrix label:label classLabel:classLabel indentationLevel:1]; } -- (void)addObject:(id)object toMatrix:(NSMatrix *)matrix label:(NSString *)label classLabel:(NSString *)classLabel indentationLevel:(NSUInteger)indentationLevel + +- (void)addObject:(id)object + withLabel:(NSString*)label + toMatrix:(NSMatrix*)matrix + leaf:(BOOL)leaf + classLabel:(NSString*)classLabel + selectedClassLabel:(NSString*)selectedClassLabel + selectedLabel:(NSString*)selectedLabel + selectedObject:(id)selectedObject + indentationLevel:(NSUInteger)indentationLevel { - [self addObject:object toMatrix:matrix label:label classLabel:classLabel indentationLevel:indentationLevel leaf:NO]; + BOOL addingSelectedObject = (object == selectedObject && [label isEqualToString:selectedLabel] && [classLabel isEqualToString:selectedClassLabel]); + + // Note the use of printStringLimited below. We limit our matching test to the first 10000 elements for performance reasons. + if ([self hasEmptyFilterString] || containsString(label, filterString, NSCaseInsensitiveSearch) || containsString(printString(object), filterString, NSCaseInsensitiveSearch) || addingSelectedObject) { + [self addLabel:label toMatrix:matrix indentationLevel:indentationLevel]; + [self addObject:object toMatrix:matrix label:label classLabel:classLabel indentationLevel:indentationLevel + 1 leaf:leaf]; + if (addingSelectedObject) + [matrix selectCellAtRow:[matrix numberOfRows] - 1 column:0]; + } } -- (void)addObject:(id)object toMatrix:(NSMatrix *)matrix label:(NSString *)label classLabel:(NSString *)classLabel + +- (void)addObject:(id)object + withLabel:(NSString*)label + toMatrix:(NSMatrix*)matrix + classLabel:(NSString*)classLabel + selectedClassLabel:(NSString*)selectedClassLabel + selectedLabel:(NSString*)selectedLabel + selectedObject:(id)selectedObject { - [self addObject:object toMatrix:matrix label:label classLabel:classLabel indentationLevel:1]; + [self addObject:object withLabel:label toMatrix:matrix leaf:NO classLabel:(NSString*)classLabel selectedClassLabel:selectedClassLabel selectedLabel:selectedLabel selectedObject:selectedObject indentationLevel:0]; } -- (void)addObject:(id)object withLabel:(NSString *)label toMatrix:(NSMatrix *)matrix leaf:(BOOL)leaf classLabel:(NSString *)classLabel selectedClassLabel:(NSString *)selectedClassLabel selectedLabel:(NSString *)selectedLabel selectedObject:(id)selectedObject indentationLevel:(NSUInteger)indentationLevel -{ - BOOL addingSelectedObject = (object == selectedObject && [label isEqualToString:selectedLabel] && [classLabel isEqualToString:selectedClassLabel]); - // Note the use of printStringLimited below. We limit our matching test to the first 10000 elements for performance reasons. - // if ([self hasEmptyFilterString] || containsString(label, filterString, NSCaseInsensitiveSearch) || containsString(printStringLimited(object, 10000), filterString, NSCaseInsensitiveSearch) || addingSelectedObject) - - if ([self hasEmptyFilterString] || containsString(label, filterString, NSCaseInsensitiveSearch) || containsString(printString(object), filterString, NSCaseInsensitiveSearch) || addingSelectedObject) - { - [self addLabel:label toMatrix:matrix indentationLevel:indentationLevel]; - [self addObject:object toMatrix:matrix label:label classLabel:classLabel indentationLevel:indentationLevel+1 leaf:leaf]; - if (addingSelectedObject) - [matrix selectCellAtRow:[matrix numberOfRows]-1 column:0]; - } +- (void)addObjects:(NSArray*)objects + withLabel:(NSString*)label + toMatrix:(NSMatrix*)matrix + classLabel:(NSString*)classLabel + selectedClassLabel:(NSString*)selectedClassLabel + selectedLabel:(NSString*)selectedLabel + selectedObject:(id)selectedObject +{ + if (objects) { + NSUInteger i; + NSUInteger count = [objects count]; + + if (count != 0) { + if ([self hasEmptyFilterString] || containsString(label, filterString, NSCaseInsensitiveSearch)) { + [self addLabel:label toMatrix:matrix]; + for (i = 0; i < count; i++) { + id object = [objects objectAtIndex:i]; + [self addObject:object toMatrix:matrix label:label classLabel:classLabel]; + if (object == selectedObject && [label isEqualToString:selectedLabel] && [classLabel isEqualToString:selectedClassLabel]) + [matrix selectCellAtRow:[matrix numberOfRows] - 1 column:0]; + } + } + else { + i = 0; + while (i < count && !containsString(printString([objects objectAtIndex:i]), filterString, NSCaseInsensitiveSearch) && !([objects objectAtIndex:i] == selectedObject && [label isEqualToString:selectedLabel] && [classLabel isEqualToString:selectedClassLabel])) + i++; + if (i < count) { + [self addLabel:label toMatrix:matrix]; + for (; i < count; i++) { + BOOL addingSelectedObject = ([objects objectAtIndex:i] == selectedObject && [label isEqualToString:selectedLabel] && [classLabel isEqualToString:selectedClassLabel]); + if (containsString(printString([objects objectAtIndex:i]), filterString, NSCaseInsensitiveSearch) || addingSelectedObject) { + [self addObject:[objects objectAtIndex:i] toMatrix:matrix label:label classLabel:classLabel]; + if (addingSelectedObject) + [matrix selectCellAtRow:[matrix numberOfRows] - 1 column:0]; + } + } + } + } + } + } } -- (void)addObject:(id)object withLabel:(NSString *)label toMatrix:(NSMatrix *)matrix classLabel:(NSString *)classLabel selectedClassLabel:(NSString *)selectedClassLabel selectedLabel:(NSString *)selectedLabel selectedObject:(id)selectedObject +- (void)addPropertyLabel:(NSString*)label toMatrix:(NSMatrix*)matrix { - [self addObject:object withLabel:label toMatrix:matrix leaf:NO classLabel:(NSString *)classLabel selectedClassLabel:selectedClassLabel selectedLabel:selectedLabel selectedObject:selectedObject indentationLevel:0]; + NSBrowserCell* cell; + NSDictionary* txtDict = [NSDictionary dictionaryWithObjectsAndKeys:[NSColor whiteColor], NSForegroundColorAttributeName, [NSColor redColor], NSBackgroundColorAttributeName, nil]; + NSMutableAttributedString* attrStr = [[[NSMutableAttributedString alloc] initWithString:[NSString stringWithFormat:@" %@ ", label] attributes:txtDict] autorelease]; + + [self addBlankRowToMatrix:matrix]; + cell = addRowToMatrix(matrix); + + [cell setLeaf:YES]; + [cell setEnabled:NO]; + [attrStr setAlignment:NSCenterTextAlignment range:NSMakeRange(0, [attrStr length])]; + [cell setAttributedStringValue:attrStr]; +} + +- (IBAction)browseAction:(id)sender +{ + [interpreter browse:[self selectedObject]]; } -- (void)addObjects:(NSArray *)objects withLabel:(NSString *)label toMatrix:(NSMatrix *)matrix classLabel:(NSString *)classLabel selectedClassLabel:(NSString *)selectedClassLabel selectedLabel:(NSString *)selectedLabel selectedObject:(id)selectedObject +- (void)browser:(NSBrowser*)sender createRowsForColumn:(NSInteger)column inMatrix:(NSMatrix*)matrix // We are our own delegate { - if (objects) - { - NSUInteger i; - NSUInteger count = [objects count]; - - if (count != 0) - { - if ([self hasEmptyFilterString] || containsString(label, filterString, NSCaseInsensitiveSearch)) - { - [self addLabel:label toMatrix:matrix]; - for (i = 0; i < count; i++) - { - id object = [objects objectAtIndex:i]; - [self addObject:object toMatrix:matrix label:label classLabel:classLabel]; - if (object == selectedObject && [label isEqualToString:selectedLabel] && [classLabel isEqualToString:selectedClassLabel]) - [matrix selectCellAtRow:[matrix numberOfRows]-1 column:0]; + [matrixes addObject:matrix]; + + if (column == 0) { + switch (browsingMode) { + case FSBrowsingWorkspace: + [self fillMatrixForWorkspaceBrowsing:matrix]; + break; + case FSBrowsingClasses: + [self fillMatrixForClassesBrowsing:matrix]; + break; + case FSBrowsingObject: + [self fillMatrix:matrix column:column withObject:rootObject]; + break; + case FSBrowsingNothing: + break; + } } - } - else - { - i = 0; - while (i < count && !containsString(printString([objects objectAtIndex:i]), filterString, NSCaseInsensitiveSearch) && !([objects objectAtIndex:i] == selectedObject && [label isEqualToString:selectedLabel] && [classLabel isEqualToString:selectedClassLabel])) - i++; - if (i < count) - { - [self addLabel:label toMatrix:matrix]; - for (; i < count; i++) - { - BOOL addingSelectedObject = ([objects objectAtIndex:i] == selectedObject && [label isEqualToString:selectedLabel] && [classLabel isEqualToString:selectedClassLabel]); - if (containsString(printString([objects objectAtIndex:i]), filterString, NSCaseInsensitiveSearch) || addingSelectedObject) - { - [self addObject:[objects objectAtIndex:i] toMatrix:matrix label:label classLabel:classLabel]; - if (addingSelectedObject) - [matrix selectCellAtRow:[matrix numberOfRows]-1 column:0]; - } - } + else if ([[browser selectedCell] objectBrowserCellType] == FSOBOBJECT || [[browser selectedCell] objectBrowserCellType] == FSOBCLASS) { + [self fillMatrix:matrix column:column withObject:[[browser selectedCell] representedObject]]; } - } - } - } -} - -- (void)addPropertyLabel:(NSString *)label toMatrix:(NSMatrix *)matrix -{ - NSBrowserCell *cell; - NSDictionary *txtDict = [NSDictionary dictionaryWithObjectsAndKeys:[NSColor whiteColor], NSForegroundColorAttributeName, [NSColor redColor], NSBackgroundColorAttributeName, nil]; - NSMutableAttributedString *attrStr = [[[NSMutableAttributedString alloc] initWithString:[NSString stringWithFormat:@" %@ ", label] attributes:txtDict] autorelease]; - - [self addBlankRowToMatrix:matrix]; - //[matrix addRow]; - //cell = [matrix cellAtRow:[matrix numberOfRows]-1 column:0]; - cell = addRowToMatrix(matrix); - - [cell setLeaf:YES]; - [cell setEnabled:NO]; - [attrStr setAlignment:NSCenterTextAlignment range:NSMakeRange(0,[attrStr length])]; - [cell setAttributedStringValue:attrStr]; -} - -- (IBAction)browseAction:(id)sender -{ - [interpreter browse:[self selectedObject]]; -} - -- (void)browser:(NSBrowser *)sender createRowsForColumn:(NSInteger)column inMatrix:(NSMatrix *)matrix // We are our own delegate -{ - [matrixes addObject:matrix]; - - if (column == 0) - { - switch (browsingMode) - { - case FSBrowsingWorkspace: [self fillMatrixForWorkspaceBrowsing:matrix]; break; - case FSBrowsingClasses: [self fillMatrixForClassesBrowsing:matrix]; break; - case FSBrowsingObject: [self fillMatrix:matrix withObject:rootObject]; break; - case FSBrowsingNothing: break; - } - } - else if ( [[browser selectedCell] objectBrowserCellType] == FSOBOBJECT || [[browser selectedCell] objectBrowserCellType] == FSOBCLASS) - { - [self fillMatrix:matrix withObject:[[browser selectedCell] representedObject]]; - // if ([browser selectedRowInColumn:[browser selectedColumn]] != 0 && (column != 1 || browsingMode == FSBrowsingObject)) [self performSelector:@selector(selfAction:) withObject:nil afterDelay:0]; - } - /*else if ([[browser selectedCell] objectBrowserCellType] == PROPERTY) - { - id selectedObject = [self selectedObject]; - [self sendMessageTo:selectedObject selectorString:@"valueForKey:" arguments:[NSArray arrayWithObject:[[browser selectedCell] stringValue]] putResultInMatrix:matrix]; - }*/ - else - { - NSString *selectedString = [[browser selectedCell] stringValue]; - - SEL selector = [FSCompiler selectorFromString:selectedString]; - NSArray *selectorComponents = [NSStringFromSelector(selector) componentsSeparatedByString:@":"]; - NSInteger nbarg = [selectorComponents count]-1; - id selectedObject = [self selectedObject]; - FSMsgContext *msgContext = [[[FSMsgContext alloc] init] autorelease]; - NSInteger unsupportedArgumentIndex; - - if ([selectedObject isKindOfClass:[FSNewlyAllocatedObjectHolder class]]) selectedObject = [selectedObject object]; - - [msgContext prepareForMessageWithReceiver:selectedObject selector:[FSCompiler selectorFromString:selectedString]]; - unsupportedArgumentIndex = [msgContext unsuportedArgumentIndex]; - - if (unsupportedArgumentIndex != -1) - { - NSString *errorString = [NSString stringWithFormat:@"Can't invoke method: the type expected for argument %ld is not supported by F-Script.", (long)unsupportedArgumentIndex+1]; - NSRunAlertPanel(@"Sorry", errorString, @"OK", nil, nil,nil); - return; - } - else if ([msgContext unsuportedReturnType]) - { - NSString *errorString = [NSString stringWithFormat:@"Can't invoke method: return type not supported by F-Script."]; - NSRunAlertPanel(@"Sorry", errorString, @"OK", nil, nil,nil); - return; - } - else if (nbarg == 0) - { - // NSBrowserCell *cell; - [self sendMessageTo:selectedObject selectorString:selectedString arguments:[NSArray array] putResultInMatrix:matrix]; - - /*if (cell = [matrix cellAtRow:0 column:0]) - { - [self performSelector:@selector(setTitleOfLastColumn:) withObject:printString([[cell representedObject] classOrMetaclass]) afterDelay:0]; - // We do this because at the time tis method is called, the new column is not yet created. - // Hence the need to delay the setTitle. - } */ - } - else - { - NSInteger i; - NSInteger baseWidth = 530; - NSInteger baseHeight = nbarg*(userFixedPitchFontSize()+17)+75; - NSButton *sendButton; - NSButton *cancelButton; - NSForm *f; - NSWindow *argumentsWindow; - NSMethodSignature *signature = [selectedObject methodSignatureForSelector:selector]; - - argumentsWindow = [[ArgumentsWindow alloc] initWithContentRect:NSMakeRect(100,100,baseWidth,baseHeight) styleMask:NSResizableWindowMask backing:NSBackingStoreBuffered defer:NO]; - [argumentsWindow setMinSize:NSMakeSize(240,baseHeight+22)]; - [argumentsWindow setMaxSize:NSMakeSize(1400,baseHeight+22)]; - - f = [[[NSForm alloc] initWithFrame:NSMakeRect(20,60,baseWidth-40,baseHeight-80)] autorelease]; - [f setAutoresizingMask:NSViewWidthSizable]; - [f setInterlineSpacing:8]; - [[argumentsWindow contentView] addSubview:f]; // The form must be the first subview - // (this is used by method sendMessageAction:) - [argumentsWindow setInitialFirstResponder:f]; - - sendButton = [[[NSButton alloc] initWithFrame:NSMakeRect(baseWidth/2,13,125,30)] autorelease]; - [sendButton setBezelStyle:1]; - [sendButton setTitle:@"Send Message"]; - [sendButton setAction:@selector(sendMessageAction:)]; - [sendButton setTarget:self]; - [sendButton setKeyEquivalent:@"\r"]; - [[argumentsWindow contentView] addSubview:sendButton]; - - cancelButton = [[[NSButton alloc] initWithFrame:NSMakeRect(baseWidth/2-95,13,95,30)] autorelease]; - [cancelButton setBezelStyle:1]; - [cancelButton setTitle:@"Cancel"]; - [cancelButton setAction:@selector(cancelArgumentsSheetAction:)]; - [cancelButton setTarget:self]; - [cancelButton setKeyEquivalent:@"\e"]; - [[argumentsWindow contentView] addSubview:cancelButton]; - - if (nbarg == 1 && [[selectorComponents objectAtIndex:0] hasPrefix:@"operator_"]) - { - const char *type = [signature getArgumentTypeAtIndex:2]; - NSString *typeDescription = humanReadableFScriptTypeDescriptionFromEncodedObjCType(type); - NSString *template = FScriptObjectTemplateForEncodedObjCType(type); - - if ([typeDescription length] > 0) typeDescription = [[@"(" stringByAppendingString:typeDescription] stringByAppendingString:@")"]; - - [f addEntry:[[selectedString stringByAppendingString:@" "] stringByAppendingString:typeDescription]]; - [[f cellAtIndex:0] setStringValue:template]; - } - else - for (i = 0; i < nbarg; i++) - { - const char *type = [signature getArgumentTypeAtIndex:i+2]; - NSString *typeDescription = humanReadableFScriptTypeDescriptionFromEncodedObjCType(type); - NSString *template = FScriptObjectTemplateForEncodedObjCType(type); - - if ([typeDescription length] > 0) typeDescription = [[@"(" stringByAppendingString:typeDescription] stringByAppendingString:@")"]; - - [f addEntry:[[[selectorComponents objectAtIndex:i] stringByAppendingString:@":"] stringByAppendingString:typeDescription]]; - [[f cellAtIndex:i] setStringValue:template]; + else { + NSString* selectedString = [[browser selectedCell] stringValue]; + + SEL selector = [FSCompiler selectorFromString:selectedString]; + NSArray* selectorComponents = [NSStringFromSelector(selector) componentsSeparatedByString:@":"]; + NSInteger nbarg = [selectorComponents count] - 1; + id selectedObject = [self selectedObject]; + FSMsgContext* msgContext = [[[FSMsgContext alloc] init] autorelease]; + NSInteger unsupportedArgumentIndex; + + if ([selectedObject isKindOfClass:[FSNewlyAllocatedObjectHolder class]]) + selectedObject = [selectedObject object]; + + [msgContext prepareForMessageWithReceiver:selectedObject selector:[FSCompiler selectorFromString:selectedString]]; + unsupportedArgumentIndex = [msgContext unsuportedArgumentIndex]; + + if (unsupportedArgumentIndex != -1) { + NSString* errorString = [NSString stringWithFormat:@"Can't invoke method: the type expected for argument %ld is not supported by F-Script.", (long)unsupportedArgumentIndex + 1]; + NSRunAlertPanel(@"Sorry", errorString, @"OK", nil, nil, nil); + return; + } + else if ([msgContext unsuportedReturnType]) { + NSString* errorString = [NSString stringWithFormat:@"Can't invoke method: return type not supported by F-Script."]; + NSRunAlertPanel(@"Sorry", errorString, @"OK", nil, nil, nil); + return; + } + else if (nbarg == 0) { + [self sendMessageTo:selectedObject selectorString:selectedString arguments:(FSArray*)[NSArray array] column:column putResultInMatrix:matrix]; + } + else { + + + #pragma mark ► Send Message with Arguments from Form + //-------------------------------------------------------------------------------- + + // Create a form to fill in the arguments of a message, with action 'sendMessageAction:' + NSInteger i; + NSInteger baseWidth = 530; + NSInteger baseHeight = nbarg * (userFixedPitchFontSize() + 17) + 75; + NSButton* sendButton; + NSButton* cancelButton; + NSForm* f; + NSWindow* argumentsWindow; + NSMethodSignature* signature = [selectedObject methodSignatureForSelector:selector]; + + argumentsWindow = [[ArgumentsWindow alloc] initWithContentRect:NSMakeRect(100, 100, baseWidth, baseHeight) styleMask:NSResizableWindowMask backing:NSBackingStoreBuffered defer:NO]; + [argumentsWindow setMinSize:NSMakeSize(240, baseHeight + 22)]; + [argumentsWindow setMaxSize:NSMakeSize(1400, baseHeight + 22)]; + + f = [[[NSForm alloc] initWithFrame:NSMakeRect(20, 60, baseWidth - 40, baseHeight - 80)] autorelease]; + [f setAutoresizingMask:NSViewWidthSizable]; + [f setInterlineSpacing:8]; + [[argumentsWindow contentView] addSubview:f]; // The form must be the first subview + // (this is used by method sendMessageAction:) + [argumentsWindow setInitialFirstResponder:f]; + + sendButton = [[[NSButton alloc] initWithFrame:NSMakeRect(baseWidth / 2, 13, 125, 30)] autorelease]; + [sendButton setBezelStyle:1]; + [sendButton setTitle:@"Send Message"]; + [sendButton setAction:@selector(sendMessageAction:)]; + [sendButton setTarget:self]; + [sendButton setKeyEquivalent:@"\r"]; + [[argumentsWindow contentView] addSubview:sendButton]; + + cancelButton = [[[NSButton alloc] initWithFrame:NSMakeRect(baseWidth / 2 - 95, 13, 95, 30)] autorelease]; + [cancelButton setBezelStyle:1]; + [cancelButton setTitle:@"Cancel"]; + [cancelButton setAction:@selector(cancelArgumentsSheetAction:)]; + [cancelButton setTarget:self]; + [cancelButton setKeyEquivalent:@"\e"]; + [[argumentsWindow contentView] addSubview:cancelButton]; + + if (nbarg == 1 && [[selectorComponents objectAtIndex:0] hasPrefix:@"operator_"]) { + const char* type = [signature getArgumentTypeAtIndex:2]; + NSString* typeDescription = humanReadableFScriptTypeDescriptionFromEncodedObjCType(type); + NSString* template = FScriptObjectTemplateForEncodedObjCType(type); + + if ([typeDescription length] > 0) + typeDescription = [[@"(" stringByAppendingString:typeDescription] stringByAppendingString:@")"]; + + [f addEntry:[[selectedString stringByAppendingString:@" "] stringByAppendingString:typeDescription]]; + [[f cellAtIndex:0] setStringValue:template]; + } + else + for (i = 0; i < nbarg; i++) { + const char* type = [signature getArgumentTypeAtIndex:i + 2]; + NSString* typeDescription = humanReadableFScriptTypeDescriptionFromEncodedObjCType(type); + NSString* template = FScriptObjectTemplateForEncodedObjCType(type); + + if ([typeDescription length] > 0) + typeDescription = [[@"(" stringByAppendingString:typeDescription] stringByAppendingString:@")"]; + + [f addEntry:[[[selectorComponents objectAtIndex:i] stringByAppendingString:@":"] stringByAppendingString:typeDescription]]; + [[f cellAtIndex:i] setStringValue:template]; + } + + [f setTextFont:[NSFont userFixedPitchFontOfSize:userFixedPitchFontSize()]]; + [f setTitleFont:[NSFont systemFontOfSize:systemFontSize()]]; + + [f setAutosizesCells:YES]; + [f setTarget:sendButton]; + [f setAction:@selector(performClick:)]; + [f selectTextAtIndex:0]; + + [NSApp beginSheet:argumentsWindow modalForWindow:[self window] modalDelegate:self didEndSelector:NULL contextInfo:NULL]; + } } - - [f setTextFont:[NSFont userFixedPitchFontOfSize:userFixedPitchFontSize()]]; - [f setTitleFont:[NSFont systemFontOfSize:systemFontSize()]]; - - [f setAutosizesCells:YES]; - [f setTarget:sendButton]; - [f setAction:@selector(performClick:)]; - [f selectTextAtIndex:0]; - - [NSApp beginSheet:argumentsWindow modalForWindow:[self window] modalDelegate:self didEndSelector:NULL contextInfo:NULL]; - } - } - [browser tile]; + [browser tile]; } -- (void) browseNothing +- (void)browseNothing { - browsingMode = FSBrowsingNothing; - [rootObject release]; - rootObject = nil; - [browser loadColumnZero]; + browsingMode = FSBrowsingNothing; + [rootObject release]; + rootObject = nil; + [browser loadColumnZero]; } -- (void) browseWorkspace +- (void)browseWorkspace { - browsingMode = FSBrowsingWorkspace; - [rootObject release]; - rootObject = nil; - [browser loadColumnZero]; + browsingMode = FSBrowsingWorkspace; + [rootObject release]; + rootObject = nil; + [browser loadColumnZero]; } -- (void) cancelArgumentsSheetAction:(id)sender +- (void)cancelArgumentsSheetAction:(id)sender { - [NSApp endSheet:[sender window]]; - [[sender window] close]; - [[browser matrixInColumn:[browser lastColumn]-1] deselectAllCells]; + [NSApp endSheet:[sender window]]; + [[sender window] close]; + [[browser matrixInColumn:[browser lastColumn] - 1] deselectAllCells]; } -- (void) cancelNameSheetAction:(id)sender +- (void)cancelNameSheetAction:(id)sender { - [NSApp endSheet:[sender window]]; - [[sender window] close]; + [NSApp endSheet:[sender window]]; + [[sender window] close]; } -- (void) classesAction:(id)sender +- (void)classesAction:(id)sender { - browsingMode = FSBrowsingClasses; - [rootObject release]; - rootObject = nil; - [browser loadColumnZero]; + browsingMode = FSBrowsingClasses; + [rootObject release]; + rootObject = nil; + [browser loadColumnZero]; } -- (void) dealloc +- (void)dealloc { - // NSLog(@"FSObjectBrowserView dealloc"); - - [matrixes release]; - [rootObject release]; - [interpreter release]; - [browser release]; - [bottomBarTextDisplay release]; - [filterString release]; - [super dealloc]; + // NSLog(@"FSObjectBrowserView dealloc"); + + [matrixes release]; + [rootObject release]; + [interpreter release]; + [browser release]; + [bottomBarTextDisplay release]; + [filterString release]; + [super dealloc]; } -- (void) doubleClickAction:(id)sender +- (void)doubleClickAction:(id)sender { - enum FSObjectBrowserCellType cellType = [[browser selectedCell] objectBrowserCellType]; - if (cellType == FSOBOBJECT || cellType == FSOBCLASS) [self inspectAction:sender]; + enum FSObjectBrowserCellType cellType = [[browser selectedCell] objectBrowserCellType]; + if (cellType == FSOBOBJECT || cellType == FSOBCLASS) + [self inspectAction:sender]; } - (void)fillMatrixForClassesBrowsing:(NSMatrix*)matrix { - FSArray *classNames = allClassNames(); - NSUInteger count = [classNames count]; - FSObjectBrowserCell *cell; - FSObjectBrowserCell *selectedCell = [[[matrix selectedCell] retain] autorelease]; // retain and autorelease in order to avoid premature deallocation as a side effect of the removing of rows - NSString *selectedObjectName = [selectedCell objectBrowserCellType] == FSOBCLASS ? [selectedCell stringValue] : nil ; - - [classNames sortUsingFunction:FSCompareClassNamesForAlphabeticalOrder context:NULL]; - - // for (int i = [matrix numberOfRows]-1; i >= 0; i--) [matrix removeRow:i]; // Remove all rows. As a side effect, this will supress the selection. - [matrix renewRows:0 columns:1]; - - for (NSInteger i = 0; i < count; i++) - { - NSString *className = [classNames objectAtIndex:i]; - if ([self hasEmptyFilterString] || containsString(className, filterString, NSCaseInsensitiveSearch) || (selectedObjectName != nil && [className isEqualToString:selectedObjectName])) - { - cell = addRowToMatrix(matrix); - - [cell setStringValue:className]; - [cell setObjectBrowserCellType:FSOBCLASS]; - if (selectedObjectName != nil && [className isEqualToString:selectedObjectName]) - [matrix selectCellAtRow:[matrix numberOfRows]-1 column:0]; - } - } - [matrix sizeToCells]; // The NSMatrix doc advise to do that after calling addRow - [matrix scrollCellToVisibleAtRow:[matrix selectedRow] column:0]; - [matrix setNeedsDisplay]; // The NSMatrix doc advise to do that after calling addRow -} - -- (void)fillMatrixForWorkspaceBrowsing:(NSMatrix*)matrix -{ - NSArray *identifiers = [interpreter identifiers]; - NSUInteger count = [identifiers count]; - FSObjectBrowserCell *cell; - NSString *cellString; - id object; - FSObjectBrowserCell *selectedCell = [[[matrix selectedCell] retain] autorelease]; // retain and autorelease in order to avoid premature deallocation as a side effect of the removing of rows - NSString *selectedLabel = [[[selectedCell label] copy] autorelease]; // copy and autorelease in order to avoid prmature invalidation as a side effect of the removing of rows - id selectedObject = [selectedCell representedObject]; - - //for (int i = [matrix numberOfRows]-1; i >= 0; i--) [matrix removeRow:i]; // Remove all rows. As a side effect, this will supress the selection. - [matrix renewRows:0 columns:1]; - - for (NSInteger i = 0; i < count; i++) - { - NSString *identifier = [identifiers objectAtIndex:i]; - object = [interpreter objectForIdentifier:identifier found:NULL]; - NSString *objectPrintString = printStringForObjectBrowser(object); - if ([self hasEmptyFilterString] || containsString(identifier, filterString, NSCaseInsensitiveSearch) || containsString(objectPrintString, filterString, NSCaseInsensitiveSearch) || (object == selectedObject && [identifier isEqualToString:selectedLabel])) - { - //[matrix addRow]; - //cell = [matrix cellAtRow:[matrix numberOfRows]-1 column:0]; - cell = addRowToMatrix(matrix); - - [cell setRepresentedObject:object]; - if (object == nil) [cell setLeaf:YES]; - cellString = [NSString stringWithFormat:@"%@ = %@",identifier,objectPrintString]; - [cell setStringValue:cellString]; - [cell setObjectBrowserCellType:FSOBOBJECT]; - [cell setLabel:identifier]; - if (object == selectedObject && [identifier isEqualToString:selectedLabel]) - [matrix selectCellAtRow:[matrix numberOfRows]-1 column:0]; - } - } - - [matrix sizeToCells]; // The NSMatrix doc advise to do that after calling addRow - [matrix scrollCellToVisibleAtRow:[matrix selectedRow] column:0]; - [matrix setNeedsDisplay]; // The NSMatrix doc advise to do that after calling addRow -} - -- (void)fillMatrix:(NSMatrix *)matrix withMethod:(NSString *)method -{ - //[matrix addRow]; - //FSObjectBrowserCell *cell = [matrix cellAtRow:[matrix numberOfRows]-1 column:0]; - FSObjectBrowserCell *cell = addRowToMatrix(matrix); - - [cell setStringValue:method]; - [cell setObjectBrowserCellType:FSOBMETHOD]; -} - -/*- (void) fillMatrix:(NSMatrix *)matrix withMethodsAndPropertiesForObject:(id)object -{ - BOOL isHolder = NO; - - @try - { - if ([object isKindOfClass:[NewlyAllocatedObjectHolder class]]) isHolder = YES; - } - @catch (id exception) - { - // An exception may happend if the object is invalid (i.e. an invalid proxy) - NSBeep(); - return; - } - - if (isHolder) - { - object = [object object]; - [self fillMatrix:matrix withMethodsForObject:object]; - } - else - { - [self fillMatrix:matrix withPropertiesForObject:object]; - [self fillMatrix:matrix withMethodsForObject:object]; - } -} */ - -- (void)fillMatrix:(NSMatrix *)matrix withMethodsForObject:(id)object -{ - id cls; - BOOL doNotShowSelectorsStartingWithUnderscore = [[NSUserDefaults standardUserDefaults] boolForKey:@"FScriptDoNotShowSelectorsStartingWithUnderscore"]; - BOOL doNotShowSelectorsStartingWithAccessibility = [[NSUserDefaults standardUserDefaults] boolForKey:@"FScriptDoNotShowSelectorsStartingWithAccessibility"]; - BOOL isHolder = NO; - - @try - { - if ([object isKindOfClass:[FSNewlyAllocatedObjectHolder class]]) isHolder = YES; - } - @catch (id exception) - { - // An exception may happend if the object is invalid (i.e. an invalid proxy) - NSBeep(); - return; - } - - if (isHolder) object = [object object]; - - if (isKindOfClassNSProxy(object) && object != [object class]) // the second condition is used because NSProxy is instance of itself and thus the isKindOfClassNSProxy() function returns YES even for the classes in the NSProxy hierarchy - { - // We try to get the class of the real object - NSString *realObjectClassName = nil; - - @try - { - realObjectClassName = [object className]; - // HACK: className is a method implemented by NSObject, but not by NSProxy. - // Thus, this method should be forwarded to the real object. - // We do this inside an exception handler because the call to className may raise - // (for instance, if the real object is not in the NSObject hierarchy and does not responds to className, - // or if there is a communication problem during the distributed object call) - - cls = NSClassFromString(realObjectClassName); - } - @catch (id exception) - { - cls = nil; - } - - if (cls == nil) - { - if (realObjectClassName) NSBeginInformationalAlertSheet(@"Method list not available", @"OK", nil, nil, [self window], nil, NULL, NULL, NULL, @"Sorry, the method list for this object is not available. The class of the object (i.e. %@) is not loaded in the current application.", realObjectClassName); - else NSBeginInformationalAlertSheet(@"Method list not available", @"OK", nil, nil, [self window], nil, NULL, NULL, NULL, @"Sorry, the method list for this object is not available."); - } - } - else cls = [object classOrMetaclass]; - - while (cls) - { - NSInteger i,nb; - FSObjectBrowserCell *cell; - NSMutableArray *selectorStrings = [NSMutableArray arrayWithCapacity:400]; - NSDictionary *txtDict = [NSDictionary dictionaryWithObjectsAndKeys:[NSColor whiteColor], NSForegroundColorAttributeName, [NSColor blueColor], NSBackgroundColorAttributeName, nil]; - NSMutableAttributedString *attrStr = [[[NSMutableAttributedString alloc] initWithString:[NSString stringWithFormat:@" %@ Methods ", [cls printString]] attributes:txtDict] autorelease]; - [attrStr setAlignment:NSCenterTextAlignment range:NSMakeRange(0,[attrStr length])]; - - //[matrix addRow]; - //cell = [matrix cellAtRow:[matrix numberOfRows]-1 column:0]; - cell = addRowToMatrix(matrix); - - [cell setLeaf:YES]; - [cell setEnabled:NO]; - [cell setAttributedStringValue:attrStr]; - //[matrix setToolTip:[cls printString] forCell:cell]; - - /*if ([filterString isEqualToString:@""]) - while ( mlist = class_nextMethodList( cls, &iterator ) ) - { - for (i = 0; i < mlist->method_count; i++) + FSArray* classNames = allClassNames(); + NSUInteger count = [classNames count]; + FSObjectBrowserCell* cell; + FSObjectBrowserCell* selectedCell = [[[matrix selectedCell] retain] autorelease]; // retain and autorelease in order to avoid premature deallocation as a side effect of the removing of rows + NSString* selectedObjectName = [selectedCell objectBrowserCellType] == FSOBCLASS ? [selectedCell stringValue] : nil; + + [classNames sortUsingFunction:FSCompareClassNamesForAlphabeticalOrder context:NULL]; + + [matrix renewRows:0 columns:1]; + + for (NSInteger i = 0; i < count; i++) { + NSString* className = [classNames objectAtIndex:i]; + if ([self hasEmptyFilterString] || containsString(className, filterString, NSCaseInsensitiveSearch) || (selectedObjectName != nil && [className isEqualToString:selectedObjectName])) { + cell = addRowToMatrix(matrix); + + [cell setStringValue:className]; + [cell setObjectBrowserCellType:FSOBCLASS]; + if (selectedObjectName != nil && [className isEqualToString:selectedObjectName]) + [matrix selectCellAtRow:[matrix numberOfRows] - 1 column:0]; + } + } + [matrix sizeToCells]; // The NSMatrix doc advise to do that after calling addRow + [matrix scrollCellToVisibleAtRow:[matrix selectedRow] column:0]; + [matrix setNeedsDisplay]; // The NSMatrix doc advise to do that after calling addRow +} + +- (void)fillMatrixForWorkspaceBrowsing:(NSMatrix*)matrix +{ + NSArray* identifiers = [interpreter identifiers]; + NSUInteger count = [identifiers count]; + FSObjectBrowserCell* cell; + NSString* cellString; + id object; + FSObjectBrowserCell* selectedCell = [[[matrix selectedCell] retain] autorelease]; // retain and autorelease in order to avoid premature deallocation as a side effect of the removing of rows + NSString* selectedLabel = [[[selectedCell label] copy] autorelease]; // copy and autorelease in order to avoid prmature invalidation as a side effect of the removing of rows + id selectedObject = [selectedCell representedObject]; + + [matrix renewRows:0 columns:1]; + + for (NSInteger i = 0; i < count; i++) { + NSString* identifier = [identifiers objectAtIndex:i]; + object = [interpreter objectForIdentifier:identifier found:NULL]; + NSString* objectPrintString = printStringForObjectBrowser(object); + if ([self hasEmptyFilterString] || containsString(identifier, filterString, NSCaseInsensitiveSearch) || containsString(objectPrintString, filterString, NSCaseInsensitiveSearch) || (object == selectedObject && [identifier isEqualToString:selectedLabel])) { + //[matrix addRow]; + //cell = [matrix cellAtRow:[matrix numberOfRows]-1 column:0]; + cell = addRowToMatrix(matrix); + + [cell setRepresentedObject:object]; + if (object == nil) + [cell setLeaf:YES]; + cellString = [NSString stringWithFormat:@"%@ = %@", identifier, objectPrintString]; + [cell setStringValue:cellString]; + [cell setObjectBrowserCellType:FSOBOBJECT]; + [cell setLabel:identifier]; + if (object == selectedObject && [identifier isEqualToString:selectedLabel]) + [matrix selectCellAtRow:[matrix numberOfRows] - 1 column:0]; + } + } + + [matrix sizeToCells]; // The NSMatrix doc advise to do that after calling addRow + [matrix scrollCellToVisibleAtRow:[matrix selectedRow] column:0]; + [matrix setNeedsDisplay]; // The NSMatrix doc advise to do that after calling addRow +} + +- (void)fillMatrix:(NSMatrix*)matrix withMethod:(NSString*)method +{ + //[matrix addRow]; + FSObjectBrowserCell* cell = addRowToMatrix(matrix); + + [cell setStringValue:method]; + [cell setObjectBrowserCellType:FSOBMETHOD]; +} + + +- (void)fillMatrix:(NSMatrix*)matrix withMethodsForObject:(id)object +{ + id cls; + BOOL doNotShowSelectorsStartingWithUnderscore = [[NSUserDefaults standardUserDefaults] boolForKey:@"FScriptDoNotShowSelectorsStartingWithUnderscore"]; + BOOL doNotShowSelectorsStartingWithAccessibility = [[NSUserDefaults standardUserDefaults] boolForKey:@"FScriptDoNotShowSelectorsStartingWithAccessibility"]; + BOOL isHolder = NO; + + @try { + if ([object isKindOfClass:[FSNewlyAllocatedObjectHolder class]]) + isHolder = YES; + } + @catch (id exception) { - [selectorStrings addObject:[FSCompiler stringFromSelector:mlist->method_list[i].method_name]]; + // An exception may happend if the object is invalid (i.e. an invalid proxy) + NSBeep(); + return; } - } - else*/ - + + if (isHolder) + object = [object object]; + + if (isKindOfClassNSProxy(object) && object != [object class]) // the second condition is used because NSProxy is instance of itself and thus the isKindOfClassNSProxy() function returns YES even for the classes in the NSProxy hierarchy + { + // We try to get the class of the real object + NSString* realObjectClassName = nil; + + @try { + realObjectClassName = [object className]; + // HACK: className is a method implemented by NSObject, but not by NSProxy. + // Thus, this method should be forwarded to the real object. + // We do this inside an exception handler because the call to className may raise + // (for instance, if the real object is not in the NSObject hierarchy and does not responds to className, + // or if there is a communication problem during the distributed object call) + + cls = NSClassFromString(realObjectClassName); + } + @catch (id exception) + { + cls = nil; + } + + if (cls == nil) { + if (realObjectClassName) + NSBeginInformationalAlertSheet(@"Method list not available", @"OK", nil, nil, [self window], nil, NULL, NULL, NULL, @"Sorry, the method list for this object is not available. The class of the object (i.e. %@) is not loaded in the current application.", realObjectClassName); + else + NSBeginInformationalAlertSheet(@"Method list not available", @"OK", nil, nil, [self window], nil, NULL, NULL, NULL, @"Sorry, the method list for this object is not available."); + } + } + else + cls = [object classOrMetaclass]; + + while (cls) { + NSInteger i, nb; + FSObjectBrowserCell* cell; + NSMutableArray* selectorStrings = [NSMutableArray arrayWithCapacity:400]; + NSDictionary* txtDict = [NSDictionary dictionaryWithObjectsAndKeys:[NSColor whiteColor], NSForegroundColorAttributeName, [NSColor blueColor], NSBackgroundColorAttributeName, nil]; + NSMutableAttributedString* attrStr = [[[NSMutableAttributedString alloc] initWithString:[NSString stringWithFormat:@" %@ Methods ", [cls printString]] attributes:txtDict] autorelease]; + [attrStr setAlignment:NSCenterTextAlignment range:NSMakeRange(0, [attrStr length])]; + + cell = addRowToMatrix(matrix); + + [cell setLeaf:YES]; + [cell setEnabled:NO]; + [cell setAttributedStringValue:attrStr]; + #ifdef __LP64__ - unsigned methodCount; - Method *methods = class_copyMethodList(cls, &methodCount); - - for (i = 0; i < methodCount; i++) - { - NSString *methodName = [FSCompiler stringFromSelector:method_getName(methods[i])]; - if ( ([self hasEmptyFilterString] || containsString(methodName, filterString, NSCaseInsensitiveSearch)) - && (!doNotShowSelectorsStartingWithUnderscore || ![methodName hasPrefix:@"_"]) - && (!doNotShowSelectorsStartingWithAccessibility || ![methodName hasPrefix:@"accessibility"]) - && (![methodName isEqualToString:@""]) - && (![methodName hasPrefix:@"__F-ScriptGeneratedStub"]) - ) - [selectorStrings addObject:methodName]; - } - free(methods); + unsigned methodCount; + Method* methods = class_copyMethodList(cls, &methodCount); + + for (i = 0; i < methodCount; i++) { + NSString* methodName = [FSCompiler stringFromSelector:method_getName(methods[i])]; + if (([self hasEmptyFilterString] || containsString(methodName, filterString, NSCaseInsensitiveSearch)) + && (!doNotShowSelectorsStartingWithUnderscore || ![methodName hasPrefix:@"_"]) + && (!doNotShowSelectorsStartingWithAccessibility || ![methodName hasPrefix:@"accessibility"]) + && (![methodName isEqualToString:@""]) + && (![methodName hasPrefix:@"__F-ScriptGeneratedStub"])) + [selectorStrings addObject:methodName]; + } + free(methods); #else - struct objc_method_list *mlist; - void *iterator = 0; - - while ( (mlist = class_nextMethodList( cls, &iterator )) ) - { - for (i = 0; i < mlist->method_count; i++) - { - NSString *methodName = [FSCompiler stringFromSelector:mlist->method_list[i].method_name]; - if ( ([self hasEmptyFilterString] || containsString(methodName, filterString, NSCaseInsensitiveSearch)) - && (!doNotShowSelectorsStartingWithUnderscore || ![methodName hasPrefix:@"_"]) - && (!doNotShowSelectorsStartingWithAccessibility || ![methodName hasPrefix:@"accessibility"]) - && (![methodName isEqualToString:@""]) - && (![methodName hasPrefix:@"__F-ScriptGeneratedStub"]) - ) - [selectorStrings addObject:methodName]; - } - } -#endif - - [selectorStrings sortUsingFunction:FSCompareMethodsNamesForAlphabeticalOrder context:NULL]; - - for (i = 0, nb = [selectorStrings count]; i < nb; i++) [self fillMatrix:matrix withMethod:[selectorStrings objectAtIndex:i]]; - - if (cls == [cls superclass]) // The NSProxy class return itself when asked for its superclass. - // This would result in an infinite loop. This test work around this. - cls = nil; - else - cls = [cls superclass]; // TODO : test if it works ok now (see comment below) - // cls = ((struct {struct objc_class *isa; struct objc_class *super_class;}*)cls)->super_class; - // This direct access technique is used instead of the -superclass method because this method is broken in the NSProxy hierarchy (does not return the "real" superclass) (Mac OS X 10.1.2). - - if (cls) [self addBlankRowToMatrix:matrix]; - } -} - -/*- (void)fillMatrix:(NSMatrix *)matrix withProperty:(NSString *)property -{ - //[matrix addRow]; - //FSObjectBrowserCell *cell = [matrix cellAtRow:[matrix numberOfRows]-1 column:0]; - FSObjectBrowserCell *cell = addRowToMatrix(matrix); - - [cell setObjectBrowserCellType:BBOBJECT]; - [cell setStringValue:property]; -}*/ - -/*- (void)fillMatrix:(NSMatrix *)matrix withProperties:(NSArray *)properties label:(NSString *)label -{ - if ([properties count] == 0) return; - - NSUInteger propertiesCount = [properties count]; - NSMutableArray *filteredProperties = [NSMutableArray arrayWithCapacity:propertiesCount]; - BOOL hasEmptyFilterString = [filterString isEqualToString:@""]; - - for (NSUInteger i = 0; i < propertiesCount; i++) - { - NSString *property = [properties objectAtIndex:i]; - if (hasEmptyFilterString || containsString(property, filterString, NSCaseInsensitiveSearch)) - [filteredProperties addObject:property]; - } - - [filteredProperties sortUsingSelector:@selector(compare:)]; - - NSDictionary *txtDict = [NSDictionary dictionaryWithObjectsAndKeys:[NSColor whiteColor], NSForegroundColorAttributeName, [NSColor redColor], NSBackgroundColorAttributeName, nil]; - NSMutableAttributedString *attrStr = [[[NSMutableAttributedString alloc] initWithString:[NSString stringWithFormat:@" %@ ", label] attributes:txtDict] autorelease]; - [attrStr setAlignment:NSCenterTextAlignment range:NSMakeRange(0,[attrStr length])]; - //[matrix addRow]; - //FSObjectBrowserCell *cell = [matrix cellAtRow:[matrix numberOfRows]-1 column:0]; - FSObjectBrowserCell *cell = addRowToMatrix(matrix); - - [cell setLeaf:YES]; - [cell setEnabled:NO]; - [cell setAttributedStringValue:attrStr]; - - for (NSUInteger i = 0, count = [filteredProperties count]; i < count; i++) - [self fillMatrix:matrix withProperty:[filteredProperties objectAtIndex:i]]; - - [self addBlankRowToMatrix:matrix]; -} */ - -/*- (void)fillMatrix:(NSMatrix *)matrix withPropertiesForObject:(id)object -{ - //NSArray *attributeKeys = [object attributeKeys]; - - if (!NSManagedObjectClass || ![object isKindOfClass:NSManagedObjectClass]) return; - - NSArray *attributeKeys = [[[object entity] attributesByName] allKeys]; - [self fillMatrix:(NSMatrix *)matrix withProperties:attributeKeys label:@"Attributes"]; - - NSArray *relationshipKeys = [[[object entity] relationshipsByName] allKeys]; - [self fillMatrix:(NSMatrix *)matrix withProperties:relationshipKeys label:@"Relationships"]; -} */ + struct objc_method_list* mlist; + void* iterator = 0; + + while ((mlist = class_nextMethodList(cls, &iterator))) { + for (i = 0; i < mlist->method_count; i++) { + NSString* methodName = [FSCompiler stringFromSelector:mlist->method_list[i].method_name]; + if (([self hasEmptyFilterString] || containsString(methodName, filterString, NSCaseInsensitiveSearch)) + && (!doNotShowSelectorsStartingWithUnderscore || ![methodName hasPrefix:@"_"]) + && (!doNotShowSelectorsStartingWithAccessibility || ![methodName hasPrefix:@"accessibility"]) + && (![methodName isEqualToString:@""]) + && (![methodName hasPrefix:@"__F-ScriptGeneratedStub"])) + [selectorStrings addObject:methodName]; + } + } +#endif + + [selectorStrings sortUsingFunction:FSCompareMethodsNamesForAlphabeticalOrder context:NULL]; + + for (i = 0, nb = [selectorStrings count]; i < nb; i++) + [self fillMatrix:matrix withMethod:[selectorStrings objectAtIndex:i]]; + + if (cls == [cls superclass]) // The NSProxy class return itself when asked for its superclass. + // This would result in an infinite loop. This test work around this. + cls = nil; + else + cls = [cls superclass]; // TODO : test if it works ok now (see comment below) + // This direct access technique is used instead of the -superclass method because this method is broken in the NSProxy hierarchy (does not return the "real" superclass) (Mac OS X 10.1.2). + if (cls) + [self addBlankRowToMatrix:matrix]; + } +} + - (void)filter { - NSInteger i,j,columnCount,rowCount; - Class NSAttributedStringClass = [NSAttributedString class]; - - if (browsingMode == FSBrowsingWorkspace) [self fillMatrixForWorkspaceBrowsing:[browser matrixInColumn:0]]; - else if (browsingMode == FSBrowsingClasses) [self fillMatrixForClassesBrowsing:[browser matrixInColumn:0]]; - - i = 0; // In order to avoid a warning "may be used unintialized" - switch (browsingMode) - { - case FSBrowsingWorkspace: - case FSBrowsingClasses: i = 1; break; - case FSBrowsingNothing: - case FSBrowsingObject: i = 0; break; - } - - for (columnCount = [browser lastColumn]+1; i < columnCount; i++) - { - NSMatrix *matrix = [browser matrixInColumn:i]; - NSInteger selectedRow = [matrix selectedRow]; - enum FSObjectBrowserCellType cellType = FSOBMETHOD; // init in order to avoid a compiler warning "may be used uninitialized" - NSString *classLabelForSelectedRow = nil; // init to nil to avoid a compiler warning - NSString *selectedMethod = nil; // init to nil to avoid a compiler warning - - if (selectedRow != -1 && (cellType = [[matrix cellAtRow:selectedRow column:0] objectBrowserCellType]) == FSOBMETHOD) - { - selectedMethod = [[matrix cellAtRow:selectedRow column:0] stringValue]; - for (j = selectedRow-1; ![[[matrix cellAtRow:j column:0] objectValue] isKindOfClass:NSAttributedStringClass] ; j--); - classLabelForSelectedRow = [[matrix cellAtRow:j column:0] stringValue]; - } - - if ([matrix numberOfRows] > 0) [self fillMatrix:matrix withObject:[[matrix cellAtRow:0 column:0] representedObject]]; - - if (selectedRow != -1 && cellType == FSOBMETHOD) - { - for (j = 0, rowCount = [matrix numberOfRows]; j < rowCount; j++) - { - NSCell *cell = [matrix cellAtRow:j column:0]; - if ([[cell objectValue] isKindOfClass:NSAttributedStringClass] && [[cell stringValue] isEqualToString:classLabelForSelectedRow]) - { - j++; - break; - } - } - while (1) - { - if (j == rowCount) - { - //[matrix addRow]; - //[[matrix cellAtRow:j column:0] setStringValue:selectedMethod]; - //[[matrix cellAtRow:j column:0] setObjectBrowserCellType:cellType]; - //[matrix selectCellAtRow:j column:0]; - FSObjectBrowserCell *cell = addRowToMatrix(matrix); - [cell setStringValue:selectedMethod]; - [cell setObjectBrowserCellType:cellType]; - - [matrix selectCellAtRow:j column:0]; - //[matrix scrollCellToVisibleAtRow:j column:0]; - break; + NSInteger i, j, columnCount, rowCount; + Class NSAttributedStringClass = [NSAttributedString class]; + + if (browsingMode == FSBrowsingWorkspace) + [self fillMatrixForWorkspaceBrowsing:[browser matrixInColumn:0]]; + else if (browsingMode == FSBrowsingClasses) + [self fillMatrixForClassesBrowsing:[browser matrixInColumn:0]]; + + i = 0; // In order to avoid a warning "may be used unintialized" + switch (browsingMode) { + case FSBrowsingWorkspace: + case FSBrowsingClasses: + i = 1; + break; + case FSBrowsingNothing: + case FSBrowsingObject: + i = 0; + break; } - else - { - FSObjectBrowserCell *cell = [matrix cellAtRow:j column:0]; - NSString *stringValue = [cell stringValue]; - id objectValue = [cell objectValue]; - NSComparisonResult order = FSCompareMethodsNamesForAlphabeticalOrder(stringValue, selectedMethod, nil); - - if (order == NSOrderedSame && ![objectValue isKindOfClass:NSAttributedStringClass]) - { - [matrix selectCellAtRow:j column:0]; - //[matrix scrollCellToVisibleAtRow:j column:0]; - break; - } - else if (order == NSOrderedDescending) - { - [matrix insertRow:j]; - [[matrix cellAtRow:j column:0] setStringValue:selectedMethod]; - [[matrix cellAtRow:j column:0] setObjectBrowserCellType:cellType]; - [matrix selectCellAtRow:j column:0]; - //[matrix scrollCellToVisibleAtRow:j column:0]; - break; - } - else if ([objectValue isKindOfClass:NSAttributedStringClass]) - { - // Insert at j-1 to preserve the empty line before the line with the class name. - [matrix insertRow:j-1]; - [[matrix cellAtRow:j-1 column:0] setStringValue:selectedMethod]; - [[matrix cellAtRow:j-1 column:0] setObjectBrowserCellType:cellType]; - [matrix selectCellAtRow:j-1 column:0]; - //[matrix scrollCellToVisibleAtRow:j-1 column:0]; - break; - } - } - j++; - } - } - } - [browser tile]; -} + + for (columnCount = [browser lastColumn] + 1; i < columnCount; i++) { + NSMatrix* matrix = [browser matrixInColumn:i]; + NSInteger selectedRow = [matrix selectedRow]; + enum FSObjectBrowserCellType cellType = FSOBMETHOD; // init in order to avoid a compiler warning "may be used uninitialized" + NSString* classLabelForSelectedRow = nil; // init to nil to avoid a compiler warning + NSString* selectedMethod = nil; // init to nil to avoid a compiler warning + + if (selectedRow != -1 && (cellType = [[matrix cellAtRow:selectedRow column:0] objectBrowserCellType]) == FSOBMETHOD) { + selectedMethod = [[matrix cellAtRow:selectedRow column:0] stringValue]; + for (j = selectedRow - 1; ![[[matrix cellAtRow:j column:0] objectValue] isKindOfClass:NSAttributedStringClass]; j--) + ; + classLabelForSelectedRow = [[matrix cellAtRow:j column:0] stringValue]; + } + + if ([matrix numberOfRows] > 0) + [self fillMatrix:matrix column:i withObject:[[matrix cellAtRow:0 column:0] representedObject]]; + + if (selectedRow != -1 && cellType == FSOBMETHOD) { + for (j = 0, rowCount = [matrix numberOfRows]; j < rowCount; j++) { + NSCell* cell = [matrix cellAtRow:j column:0]; + if ([[cell objectValue] isKindOfClass:NSAttributedStringClass] && [[cell stringValue] isEqualToString:classLabelForSelectedRow]) { + j++; + break; + } + } + while (1) { + if (j == rowCount) { + FSObjectBrowserCell* cell = addRowToMatrix(matrix); + [cell setStringValue:selectedMethod]; + [cell setObjectBrowserCellType:cellType]; + + [matrix selectCellAtRow:j column:0]; + break; + } + else { + FSObjectBrowserCell* cell = [matrix cellAtRow:j column:0]; + NSString* stringValue = [cell stringValue]; + id objectValue = [cell objectValue]; + NSComparisonResult order = FSCompareMethodsNamesForAlphabeticalOrder(stringValue, selectedMethod, nil); + + if (order == NSOrderedSame && ![objectValue isKindOfClass:NSAttributedStringClass]) { + [matrix selectCellAtRow:j column:0]; + break; + } + else if (order == NSOrderedDescending) { + [matrix insertRow:j]; + [[matrix cellAtRow:j column:0] setStringValue:selectedMethod]; + [[matrix cellAtRow:j column:0] setObjectBrowserCellType:cellType]; + [matrix selectCellAtRow:j column:0]; + break; + } + else if ([objectValue isKindOfClass:NSAttributedStringClass]) { + // Insert at j-1 to preserve the empty line before the line with the class name. + [matrix insertRow:j - 1]; + [[matrix cellAtRow:j - 1 column:0] setStringValue:selectedMethod]; + [[matrix cellAtRow:j - 1 column:0] setObjectBrowserCellType:cellType]; + [matrix selectCellAtRow:j - 1 column:0]; + break; + } + } + j++; + } + } + } + [browser tile]; +} - (void)filterAction:(id)sender -{ - [self setFilterString:[sender stringValue]]; - [self filter]; +{ + [self setFilterString:[sender stringValue]]; + [self filter]; } -- (BOOL) hasEmptyFilterString +- (BOOL)hasEmptyFilterString { - return [filterString isEqualToString:@""]; + return [filterString isEqualToString:@""]; } -- (id)initWithFrame:(NSRect)frameRect +- (void)inspectAction:(id)sender { - self = [super initWithFrame:frameRect]; - if (self) - { - CGFloat baseWidth = NSWidth([self bounds]); - CGFloat baseHeight = NSHeight([self bounds]); - CGFloat fontSize; - - fontSize = systemFontSize(); - - browser = [[NSBrowser alloc] initWithFrame:NSMakeRect(0, FSObjectBrowserBottomBarHeight, baseWidth, baseHeight-FSObjectBrowserBottomBarHeight)]; - //[browser setMatrixClass:[FSObjectBrowserMatrix class]]; - [browser setCellClass:[FSObjectBrowserCell class]]; - [browser setAutoresizingMask:NSViewWidthSizable | NSViewHeightSizable]; - [browser setHasHorizontalScroller:YES]; - [browser setMinColumnWidth:145+(fontSize*6)]; - [browser setTakesTitleFromPreviousColumn:NO]; - [browser setTitled:NO]; - [browser setTarget:self]; - [browser setDoubleAction:@selector(doubleClickAction:)]; - [[browser cellPrototype] setFont:[NSFont systemFontOfSize:fontSize]]; - [browser setDelegate:self]; - [browser setFocusRingType:NSFocusRingTypeNone]; - [browser setAutohidesScroller:YES]; - //[browser setAcceptsArrowKeys:NO]; - - if ([browser respondsToSelector:@selector(setColumnResizingType:)]) [browser setColumnResizingType:2]; - - if ([browser respondsToSelector:@selector(setColumnsAutosaveName:)]) [browser setColumnsAutosaveName:@"Object browser columns autosave configuration"]; - - bottomBarTextDisplay = [[FSObjectBrowserBottomBarTextDisplay alloc] initWithFrame:NSMakeRect(0, 0, baseWidth, FSObjectBrowserBottomBarHeight)]; + inspect([self selectedObject], interpreter, nil); +} - [self addSubview:browser]; - [self addSubview:bottomBarTextDisplay]; +- (void)menuWillSendAction:(NSNotification*)notification; +{ + NSMenuItem* item = [[notification userInfo] objectForKey:@"MenuItem"]; + selectedView = [item retain]; +} - browsingMode = FSBrowsingWorkspace; - - filterString = @""; - - matrixes = [[NSMutableSet alloc] init]; - } - return self; -} +@class FSObjectBrowser; -- (void) inspectAction:(id)sender +- (void)mouseMoved:(NSEvent*)theEvent { - inspect([self selectedObject], interpreter, nil); + NSInteger row, column; + NSPoint baseMouseLocation = [[self window] convertScreenToBase:[NSEvent mouseLocation]]; + NSView* view = [self hitTest:[[self superview] convertPoint:baseMouseLocation fromView:nil]]; + + if ([view isKindOfClass:[NSMatrix class]] && [(NSMatrix*)view getRow:&row column:&column forPoint:[view convertPoint:baseMouseLocation fromView:nil]]) { + [bottomBarTextDisplay setString:[[(NSMatrix*)view cellAtRow:row column:column] stringValue]]; + } + else + [bottomBarTextDisplay setTitle:@""]; + + [super mouseMoved:theEvent]; } -- (void)menuWillSendAction:(NSNotification *)notification; +- (void)nameObjectAction:(id)sender { - NSMenuItem *item = [[notification userInfo] objectForKey: @"MenuItem"]; - selectedView = [item retain]; + CGFloat fontSize = systemFontSize(); + CGFloat baseWidth = 230; + CGFloat baseHeight = 15 + fontSize + 9 + 60; + NSWindow* nameSheet; + NSTextField* field; + NSButton* nameButton; + NSButton* cancelButton; + + if ([self selectedObject] == nil) { + NSBeep(); + return; + } + + nameSheet = [[NSWindow alloc] initWithContentRect:NSMakeRect(0, 0, baseWidth, baseHeight) styleMask:NSTitledWindowMask | NSClosableWindowMask backing:NSBackingStoreBuffered defer:NO]; + [nameSheet setMinSize:NSMakeSize(130, 80)]; + + field = [[[NSTextField alloc] initWithFrame:NSMakeRect(20, baseHeight - (15 + fontSize + 9), baseWidth - 40, fontSize + 10)] autorelease]; + [field setFont:[NSFont systemFontOfSize:fontSize]]; + [field setTarget:self]; + [field setAction:@selector(okNameSheetAction:)]; + [field setFormatter:[[[FSIdentifierFormatter alloc] init] autorelease]]; + + [[nameSheet contentView] addSubview:field]; + + nameButton = [[[NSButton alloc] initWithFrame:NSMakeRect(baseWidth / 2, 13, 95, 30)] autorelease]; + [nameButton setBezelStyle:1]; + [nameButton setTitle:@"Name"]; + [nameButton setAction:@selector(performClick:)]; // Will make field to send its action message + [nameButton setTarget:field]; + [nameButton setKeyEquivalent:@"\r"]; + [[nameSheet contentView] addSubview:nameButton]; + + cancelButton = [[[NSButton alloc] initWithFrame:NSMakeRect(baseWidth / 2 - 95, 13, 95, 30)] autorelease]; + [cancelButton setBezelStyle:1]; + [cancelButton setTitle:@"Cancel"]; + [cancelButton setAction:@selector(cancelNameSheetAction:)]; + [cancelButton setTarget:self]; + [cancelButton setKeyEquivalent:@"\e"]; + [[nameSheet contentView] addSubview:cancelButton]; + + [NSApp beginSheet:nameSheet modalForWindow:[self window] modalDelegate:self didEndSelector:NULL contextInfo:NULL]; + [field selectText:nil]; } -@class FSObjectBrowser; +- (void)okNameSheetAction:(id)sender +{ + if ([[sender stringValue] length] == 0) { + [NSApp endSheet:[sender window]]; + [[sender window] close]; + } + else if ([[sender stringValue] isEqualToString:@"sys"]) { + // don't close the sheet + NSRunAlertPanel(@"Invalid name", @"Sorry, the name \"sys\" is reserved. Please, choose an other name.", @"OK", nil, nil, nil); + [[sender window] makeFirstResponder:sender]; + } + else if ([FSCompiler isValidIdentifier:[sender stringValue]]) { + [interpreter setObject:[self selectedObject] forIdentifier:[sender stringValue]]; + [NSApp endSheet:[sender window]]; + [[sender window] close]; + } + else { + // don't close the sheet + NSRunAlertPanel(@"Malformed Name", @"Sorry, an F-Script identifier must start with an alphabetic, non-accentuated, character or with an underscore (i.e. \"_\") and must only contains non-accentuated alphanumeric characters and underscores. Please, enter a well-formed name.", @"OK", nil, nil, nil); + [[sender window] makeFirstResponder:sender]; + } +} -- (void)mouseMoved:(NSEvent *)theEvent -{ - NSInteger row, column; - NSPoint baseMouseLocation = [[self window] convertScreenToBase:[NSEvent mouseLocation]]; - NSView *view = [self hitTest:[[self superview] convertPoint:baseMouseLocation fromView:nil]]; - - if ([view isKindOfClass:[NSMatrix class]] && [(NSMatrix *)view getRow:&row column:&column forPoint:[view convertPoint:baseMouseLocation fromView:nil]]) - { - [bottomBarTextDisplay setString:[[(NSMatrix *)view cellAtRow:row column:column] stringValue]]; - } - else [bottomBarTextDisplay setTitle:@""]; - - [super mouseMoved:theEvent]; -} - -- (void) nameObjectAction:(id)sender -{ - CGFloat fontSize = systemFontSize(); - CGFloat baseWidth = 230; - CGFloat baseHeight = 15+fontSize+9+60; - NSWindow *nameSheet; - NSTextField *field; - NSButton *nameButton; - NSButton *cancelButton; - - if ([self selectedObject] == nil) - { - NSBeep(); - return; - } - - nameSheet = [[NSWindow alloc] initWithContentRect:NSMakeRect(0,0,baseWidth,baseHeight) styleMask:NSTitledWindowMask|NSClosableWindowMask backing:NSBackingStoreBuffered defer:NO]; - [nameSheet setMinSize:NSMakeSize(130,80)]; - - field = [[[NSTextField alloc] initWithFrame:NSMakeRect(20,baseHeight-(15+fontSize+9),baseWidth-40,fontSize+10)] autorelease]; - [field setFont:[NSFont systemFontOfSize:fontSize]]; - [field setTarget:self]; - [field setAction:@selector(okNameSheetAction:)]; - [field setFormatter:[[[FSIdentifierFormatter alloc] init] autorelease]]; - - [[nameSheet contentView] addSubview:field]; - - nameButton = [[[NSButton alloc] initWithFrame:NSMakeRect(baseWidth/2,13,95,30)] autorelease]; - [nameButton setBezelStyle:1]; - [nameButton setTitle:@"Name"]; - [nameButton setAction:@selector(performClick:)]; // Will make field to send its action message - [nameButton setTarget:field]; - [nameButton setKeyEquivalent:@"\r"]; - [[nameSheet contentView] addSubview:nameButton]; - - cancelButton = [[[NSButton alloc] initWithFrame:NSMakeRect(baseWidth/2-95,13,95,30)] autorelease]; - [cancelButton setBezelStyle:1]; - [cancelButton setTitle:@"Cancel"]; - [cancelButton setAction:@selector(cancelNameSheetAction:)]; - [cancelButton setTarget:self]; - [cancelButton setKeyEquivalent:@"\e"]; - [[nameSheet contentView] addSubview:cancelButton]; - - [NSApp beginSheet:nameSheet modalForWindow:[self window] modalDelegate:self didEndSelector:NULL contextInfo:NULL]; - [field selectText:nil]; -} - --(void)okNameSheetAction:(id)sender -{ - if ([[sender stringValue] length] == 0) - { - [NSApp endSheet:[sender window]]; - [[sender window] close]; - } - else if ([[sender stringValue] isEqualToString:@"sys"]) - { - // don't close the sheet - NSRunAlertPanel(@"Invalid name", @"Sorry, the name \"sys\" is reserved. Please, choose an other name.", @"OK", nil, nil,nil); - [[sender window] makeFirstResponder:sender]; - } - else if ([FSCompiler isValidIdentifier:[sender stringValue]]) - { - [interpreter setObject:[self selectedObject] forIdentifier:[sender stringValue]]; - [NSApp endSheet:[sender window]]; - [[sender window] close]; - } - else - { - // don't close the sheet - NSRunAlertPanel(@"Malformed Name", @"Sorry, an F-Script identifier must start with an alphabetic, non-accentuated, character or with an underscore (i.e. \"_\") and must only contains non-accentuated alphanumeric characters and underscores. Please, enter a well-formed name.", @"OK", nil, nil,nil); - [[sender window] makeFirstResponder:sender]; - } -} - --(id) selectedObject -{ - FSObjectBrowserCell *selectedCell = [browser selectedCell]; - enum FSObjectBrowserCellType selectedCellType = [selectedCell objectBrowserCellType]; - - if (selectedCellType == FSOBOBJECT || selectedCellType == FSOBCLASS) - return [selectedCell representedObject]; - else - { - if ([browser lastColumn] == 0) - { - switch (browsingMode) - { - case FSBrowsingWorkspace: return nil; - case FSBrowsingClasses: return nil; - case FSBrowsingNothing: return nil; - case FSBrowsingObject: break; - } - } - return [[browser loadedCellAtRow:0 column:[browser lastColumn]] representedObject]; - } -} - -- (void) selectMethodNamed:(NSString *)methodName -{ - NSInteger methodColumn = [browser lastColumn]; - NSInteger i = 0; - NSArray *methodCells = [[browser matrixInColumn:methodColumn] cells]; - NSInteger count = [methodCells count]; - - if (count == 0 && [methodName isEqualToString:@"applyBlock:"]) // may happend if the selected object is a proxy to an object in an app not linked against the F-Script framework. - { - NSMatrix *matrix = [browser matrixInColumn:methodColumn]; - - //[matrix addRow]; - //[[matrix cellAtRow:0 column:0] setStringValue:@"applyBlock:"]; - //[[matrix cellAtRow:0 column:0] setEnabled:NO]; - FSObjectBrowserCell *cell = addRowToMatrix(matrix); - [cell setStringValue:@"applyBlock:"]; - [cell setEnabled:NO]; - - count = 1; - methodCells = [[browser matrixInColumn:methodColumn] cells]; - } - - while (i < count && !([[[methodCells objectAtIndex:i] stringValue] isEqualToString:methodName] && [[methodCells objectAtIndex:i] objectBrowserCellType] == FSOBMETHOD)) i++; - - if (i < count) - [browser selectRow:i inColumn:methodColumn]; - else - { - NSString *oldFilterString = filterString; - BOOL oldDoNotShowSelectorsStartingWithUnderscore = [[NSUserDefaults standardUserDefaults] boolForKey:@"FScriptDoNotShowSelectorsStartingWithUnderscore"]; - BOOL oldDoNotShowSelectorsStartingWithAccessibility = [[NSUserDefaults standardUserDefaults] boolForKey:@"FScriptDoNotShowSelectorsStartingWithAccessibility"]; - - if (![oldFilterString isEqualToString:@""] || oldDoNotShowSelectorsStartingWithUnderscore == YES || oldDoNotShowSelectorsStartingWithAccessibility == YES) // Note that the method we are looking for might not exist. In this case, this test is important in order to avoid a infinite recursion. - { - filterString = @""; - [[NSUserDefaults standardUserDefaults] setBool:NO forKey:@"FScriptDoNotShowSelectorsStartingWithUnderscore"]; - [[NSUserDefaults standardUserDefaults] setBool:NO forKey:@"FScriptDoNotShowSelectorsStartingWithAccessibility"]; - - [self filter]; - [self selectMethodNamed:methodName]; - - filterString = oldFilterString; - [[NSUserDefaults standardUserDefaults] setBool:oldDoNotShowSelectorsStartingWithUnderscore forKey:@"FScriptDoNotShowSelectorsStartingWithUnderscore"]; - [[NSUserDefaults standardUserDefaults] setBool:oldDoNotShowSelectorsStartingWithAccessibility forKey:@"FScriptDoNotShowSelectorsStartingWithAccessibility"]; - - [self filter]; - } - } +- (id)selectedObject +{ + FSObjectBrowserCell* selectedCell = [browser selectedCell]; + enum FSObjectBrowserCellType selectedCellType = [selectedCell objectBrowserCellType]; + + if (selectedCellType == FSOBOBJECT || selectedCellType == FSOBCLASS) + return [selectedCell representedObject]; + else { + if ([browser lastColumn] == 0) { + switch (browsingMode) { + case FSBrowsingWorkspace: + return nil; + case FSBrowsingClasses: + return nil; + case FSBrowsingNothing: + return nil; + case FSBrowsingObject: + break; + } + } + return [[browser loadedCellAtRow:0 column:[browser lastColumn]] representedObject]; + } } +- (void)selectMethodNamed:(NSString*)methodName +{ + NSInteger methodColumn = [browser lastColumn]; + NSInteger i = 0; + NSArray* methodCells = [[browser matrixInColumn:methodColumn] cells]; + NSInteger count = [methodCells count]; -/* -- (void)mouseMoved:(NSEvent *)theEvent -{ - NSInteger row, column; - NSPoint baseMouseLocation = [[self window] convertScreenToBase:[NSEvent mouseLocation]]; - NSView *view = [self hitTest:[[self superview] convertPoint:baseMouseLocation fromView:nil]]; - - if ([view isKindOfClass:[NSMatrix class]] && [(NSMatrix *)view getRow:&row column:&column forPoint:[view convertPoint:baseMouseLocation fromView:nil]]) - { - [statusBar setStringValue:[[(NSMatrix *)view cellAtRow:row column:column] stringValue]]; - } - else [statusBar setStringValue:@""]; - - [super mouseMoved:theEvent]; -} -*/ - -- (void) selectView:(id)dummy -{ - NSEvent *event; - id view; - NSCursor *cursor = [NSCursor crosshairCursor]; - NSDate *distantFuture = [NSDate distantFuture]; - - NSRect infoRect = NSMakeRect(0, 0, 290, 100); - NSTextView *infoView = [[[NSTextView alloc] initWithFrame:NSZeroRect] autorelease]; - [infoView setEditable:NO]; - [infoView setSelectable:NO]; - [infoView setDrawsBackground:NO]; - [infoView setTextColor:[NSColor whiteColor]]; - [infoView setFont:[NSFont controlContentFontOfSize:10]]; - [infoView setTextContainerInset:NSMakeSize(4, 4)]; - //[infoView setAutoresizingMask:NSViewHeightSizable|NSViewMinYMargin]; - [infoView setVerticallyResizable:NO]; - - NSMutableParagraphStyle *paragraphStyle = [[[NSParagraphStyle defaultParagraphStyle] mutableCopy] autorelease]; - [paragraphStyle setLineBreakMode:NSLineBreakByTruncatingTail]; - [infoView setDefaultParagraphStyle:paragraphStyle]; - - NSPanel *infoWindow = [[[NSPanel alloc] initWithContentRect:infoRect styleMask:NSHUDWindowMask /*| NSTitledWindowMask*/ | NSUtilityWindowMask backing:NSBackingStoreBuffered defer:NO] autorelease]; - [infoWindow setLevel:NSFloatingWindowLevel]; - [infoWindow setContentView:infoView]; - - // NSWindow *focusWindow = [[[NSWindow alloc] initWithContentRect:NSZeroRect styleMask:NSBorderlessWindowMask backing:NSBackingStoreBuffered defer:NO] autorelease]; - - NSWindow *focusWindow = [[NSWindow alloc] initWithContentRect:NSZeroRect styleMask:NSBorderlessWindowMask backing:NSBackingStoreBuffered defer:NO] ; - - [focusWindow setBackgroundColor:[NSColor selectedTextBackgroundColor]]; - [focusWindow setAlphaValue:0.7]; - [focusWindow setIgnoresMouseEvents:YES]; - - [cursor push]; - - selectedView = nil; - - [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(menuWillSendAction:) name:NSMenuWillSendActionNotification object:nil]; - - do - { - [cursor push]; - event = [NSApp nextEventMatchingMask:~0 untilDate:distantFuture inMode:NSEventTrackingRunLoopMode dequeue:YES]; - [cursor pop]; - if ([event type] == NSMouseMoved) - { - NSInteger windowCount; - NSInteger *windows; - - view = nil; - - NSCountWindows(&windowCount); - windows = malloc(windowCount*sizeof(NSInteger)); - NSWindowList(windowCount, windows); - - for (unsigned i = 0; i < windowCount; i++) - { - NSWindow *window = [NSApp windowWithWindowNumber:windows[i]]; - if (window && window != focusWindow && window != infoWindow) + if (count == 0 && [methodName isEqualToString:@"applyBlock:"]) // may happend if the selected object is a proxy to an object in an app not linked against the F-Script framework. { - view = [[[window contentView] superview] hitTest:[window convertScreenToBase:[NSEvent mouseLocation]]]; - if (view) break; + NSMatrix* matrix = [browser matrixInColumn:methodColumn]; + + FSObjectBrowserCell* cell = addRowToMatrix(matrix); + [cell setStringValue:@"applyBlock:"]; + [cell setEnabled:NO]; + + count = 1; + methodCells = [[browser matrixInColumn:methodColumn] cells]; } - } - - free(windows); - - if (view) - { - NSRect rectInWindowCoordinates = [view convertRect:[view visibleRect] toView:nil];; - NSRect rectInScreenCoordinates; - NSSize size = NSMakeSize(220,21); - rectInScreenCoordinates.size = rectInWindowCoordinates.size; - rectInScreenCoordinates.origin = [[view window] convertBaseToScreen:rectInWindowCoordinates.origin]; - - if ([focusWindow parentWindow] != [view window]) - { - [[focusWindow parentWindow] removeChildWindow:focusWindow]; - [[view window] addChildWindow:focusWindow ordered:NSWindowAbove]; + + while (i < count && !([[[methodCells objectAtIndex:i] stringValue] isEqualToString:methodName] && [[methodCells objectAtIndex:i] objectBrowserCellType] == FSOBMETHOD)) + i++; + + if (i < count) + [browser selectRow:i inColumn:methodColumn]; + else { + NSString* oldFilterString = filterString; + BOOL oldDoNotShowSelectorsStartingWithUnderscore = [[NSUserDefaults standardUserDefaults] boolForKey:@"FScriptDoNotShowSelectorsStartingWithUnderscore"]; + BOOL oldDoNotShowSelectorsStartingWithAccessibility = [[NSUserDefaults standardUserDefaults] boolForKey:@"FScriptDoNotShowSelectorsStartingWithAccessibility"]; + + if (![oldFilterString isEqualToString:@""] || oldDoNotShowSelectorsStartingWithUnderscore == YES || oldDoNotShowSelectorsStartingWithAccessibility == YES) // Note that the method we are looking for might not exist. In this case, this test is important in order to avoid a infinite recursion. + { + filterString = @""; + [[NSUserDefaults standardUserDefaults] setBool:NO forKey:@"FScriptDoNotShowSelectorsStartingWithUnderscore"]; + [[NSUserDefaults standardUserDefaults] setBool:NO forKey:@"FScriptDoNotShowSelectorsStartingWithAccessibility"]; + + [self filter]; + [self selectMethodNamed:methodName]; + + filterString = oldFilterString; + [[NSUserDefaults standardUserDefaults] setBool:oldDoNotShowSelectorsStartingWithUnderscore forKey:@"FScriptDoNotShowSelectorsStartingWithUnderscore"]; + [[NSUserDefaults standardUserDefaults] setBool:oldDoNotShowSelectorsStartingWithAccessibility forKey:@"FScriptDoNotShowSelectorsStartingWithAccessibility"]; + + [self filter]; + } } - [focusWindow setFrame:rectInScreenCoordinates display:YES]; - - /* NSMutableString *infoString = [NSMutableString string]; - - [infoString appendFormat:@"Bounds:\t%@\n", printString([NSValue valueWithRect:[view bounds]])]; - [infoString appendFormat:@"Frame:\t%@\n", printString([NSValue valueWithRect:[view frame]])]; - [infoString appendFormat:@"Superview:\t%@\n", [[view superview] class]]; - [infoString appendString:@"Subviews:\n"]; - for (NSView *subview in [view subviews]) [infoString appendFormat:@"\t\t%@\n", [subview class]]; - - [infoView setString:infoString]; - - size = [[infoView textStorage] size]; - size.width += 15; - size.height += 10; - */ - - NSPoint origin = NSMakePoint([NSEvent mouseLocation].x+12, [NSEvent mouseLocation].y-size.height-9); - [infoWindow setFrame:NSMakeRect(origin.x, origin.y, size.width, size.height) display:YES animate:NO]; - //[infoWindow setTitle:[NSString stringWithFormat:@"%@: %p", [view class], view]]; - [infoView setString:[NSString stringWithFormat:@"%@: %p", [view class], view]]; - - [infoWindow orderFront:nil]; - } - else - { +} + + +- (void)selectView:(id)dummy +{ + NSEvent* event; + id view; + NSCursor* cursor = [NSCursor crosshairCursor]; + NSDate* distantFuture = [NSDate distantFuture]; + + NSRect infoRect = NSMakeRect(0, 0, 290, 100); + NSTextView* infoView = [[[NSTextView alloc] initWithFrame:NSZeroRect] autorelease]; + [infoView setEditable:NO]; + [infoView setSelectable:NO]; + [infoView setDrawsBackground:NO]; + [infoView setTextColor:[NSColor whiteColor]]; + [infoView setFont:[NSFont controlContentFontOfSize:10]]; + [infoView setTextContainerInset:NSMakeSize(4, 4)]; + //[infoView setAutoresizingMask:NSViewHeightSizable|NSViewMinYMargin]; + [infoView setVerticallyResizable:NO]; + + NSMutableParagraphStyle* paragraphStyle = [[[NSParagraphStyle defaultParagraphStyle] mutableCopy] autorelease]; + [paragraphStyle setLineBreakMode:NSLineBreakByTruncatingTail]; + [infoView setDefaultParagraphStyle:paragraphStyle]; + + NSPanel* infoWindow = [[[NSPanel alloc] initWithContentRect:infoRect styleMask:NSHUDWindowMask /*| NSTitledWindowMask*/ | NSUtilityWindowMask backing:NSBackingStoreBuffered defer:NO] autorelease]; + [infoWindow setLevel:NSFloatingWindowLevel]; + [infoWindow setContentView:infoView]; + + NSWindow* focusWindow = [[NSWindow alloc] initWithContentRect:NSZeroRect styleMask:NSBorderlessWindowMask backing:NSBackingStoreBuffered defer:NO]; + + [focusWindow setBackgroundColor:[NSColor selectedTextBackgroundColor]]; + [focusWindow setAlphaValue:0.7]; + [focusWindow setIgnoresMouseEvents:YES]; + + [cursor push]; + + selectedView = nil; + + [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(menuWillSendAction:) name:NSMenuWillSendActionNotification object:nil]; + + do { + [cursor push]; + event = [NSApp nextEventMatchingMask:~0 untilDate:distantFuture inMode:NSEventTrackingRunLoopMode dequeue:YES]; + [cursor pop]; + if ([event type] == NSMouseMoved) { + NSInteger windowCount; + NSInteger* windows; + + view = nil; + + NSCountWindows(&windowCount); + windows = malloc(windowCount * sizeof(NSInteger)); + NSWindowList(windowCount, windows); + + for (unsigned i = 0; i < windowCount; i++) { + NSWindow* window = [NSApp windowWithWindowNumber:windows[i]]; + if (window && window != focusWindow && window != infoWindow) { + view = [[[window contentView] superview] hitTest:[window convertScreenToBase:[NSEvent mouseLocation]]]; + if (view) + break; + } + } + + free(windows); + + if (view) { + NSRect rectInWindowCoordinates = [view convertRect:[view visibleRect] toView:nil]; + ; + NSRect rectInScreenCoordinates; + NSSize size = NSMakeSize(220, 21); + rectInScreenCoordinates.size = rectInWindowCoordinates.size; + rectInScreenCoordinates.origin = [[view window] convertBaseToScreen:rectInWindowCoordinates.origin]; + + if ([focusWindow parentWindow] != [view window]) { + [[focusWindow parentWindow] removeChildWindow:focusWindow]; + [[view window] addChildWindow:focusWindow ordered:NSWindowAbove]; + } + [focusWindow setFrame:rectInScreenCoordinates display:YES]; + + NSPoint origin = NSMakePoint([NSEvent mouseLocation].x + 12, [NSEvent mouseLocation].y - size.height - 9); + [infoWindow setFrame:NSMakeRect(origin.x, origin.y, size.width, size.height) display:YES animate:NO]; + [infoView setString:[NSString stringWithFormat:@"%@: %p", [view class], view]]; + + [infoWindow orderFront:nil]; + } + else { + [[focusWindow parentWindow] removeChildWindow:focusWindow]; + [focusWindow orderOut:nil]; + [infoWindow orderOut:nil]; + } + } + + } while ([event type] != NSLeftMouseDown && selectedView == nil && !([event type] == NSKeyDown && [[event characters] characterAtIndex:0] == ESCAPE)); + + [[NSNotificationCenter defaultCenter] removeObserver:self name:NSMenuWillSendActionNotification object:nil]; + [cursor pop]; [[focusWindow parentWindow] removeChildWindow:focusWindow]; - [focusWindow orderOut:nil]; - [infoWindow orderOut:nil]; - //[self browseNothing]; - } - } - - } - while ( [event type] != NSLeftMouseDown && selectedView == nil && !([event type] == NSKeyDown && [[event characters] characterAtIndex:0] == ESCAPE) ); - - [[NSNotificationCenter defaultCenter] removeObserver:self name:NSMenuWillSendActionNotification object:nil]; - [cursor pop]; - [[focusWindow parentWindow] removeChildWindow:focusWindow]; - [focusWindow close]; - [infoWindow close]; - - if ( !([event type] == NSKeyDown && [[event characters] characterAtIndex:0] == ESCAPE) ) - { - if (selectedView == nil) - view = [[[[event window] contentView] superview] hitTest:[event locationInWindow]]; - else - view = selectedView; - - [self setRootObject:view]; - [selectedView release]; - [[self window] performSelector:@selector(makeKeyAndOrderFront:) withObject:nil afterDelay:0]; - [NSApp activateIgnoringOtherApps:YES]; - } -} - -- (void) selectViewAction:(id)sender -{ - [self performSelector:@selector(selectView:) withObject:nil afterDelay:0]; -} - -- (void) selfAction:(id)sender -{ - [self sendMessage:@selector(self) withArguments:nil]; -} - -- (void) sendMessage:(SEL)selector withArguments:(FSArray *)arguments // You can pass nil for "arguments" -{ - // Simulate the user invoking a method on the selected object through the browser. - - NSString *methodName = [FSCompiler stringFromSelector:selector]; - id selectedObject; - - if ((selectedObject = [self validSelectedObject]) == nil) - { - NSBeep(); - return; - } - - if (![selectedObject respondsToSelector:selector] && selector != @selector(applyBlock:)/* Account for a proxy to an object in an app not linked against the F-Script framework */) - { - NSBeginInformationalAlertSheet(@"Inavlid message", @"OK", nil, nil, [self window], nil, NULL, NULL, NULL, @"The selected object doesn't responds to \"%@\".", methodName); - return; - } - - if (arguments && [arguments count] > 0) [browser setDelegate:nil]; - - [self selectMethodNamed:methodName]; - - if (arguments && [arguments count] > 0) - { - [browser setDelegate:self]; - [self sendMessageTo:selectedObject selectorString:methodName arguments:arguments putResultInMatrix:[browser matrixInColumn:[browser lastColumn]]]; - } - - [browser scrollColumnToVisible:[browser lastColumn]]; - [browser scrollColumnsLeftBy:1]; // Workaround for the call above to scrollColumnToVisible: not working as expected. - //[browser tile]; + [focusWindow close]; + [infoWindow close]; + + if (!([event type] == NSKeyDown && [[event characters] characterAtIndex:0] == ESCAPE)) { + // If Alt is held down, select the exact view shown in the floating window + if ((event.modifierFlags & NSAlternateKeyMask) && view != nil) { + selectedView = view; + } + if (selectedView == nil) + view = [[[[event window] contentView] superview] hitTest:[event locationInWindow]]; + else + view = selectedView; + + [self setRootObject:view]; + [selectedView release]; + [[self window] performSelector:@selector(makeKeyAndOrderFront:) withObject:nil afterDelay:0]; + [NSApp activateIgnoringOtherApps:YES]; + } +} + +- (void)selectViewAction:(id)sender +{ + [self performSelector:@selector(selectView:) withObject:nil afterDelay:0]; +} + +- (void)selfAction:(id)sender +{ + [self sendMessage:@selector(self) withArguments:nil]; +} + +- (void)sendMessage:(SEL)selector withArguments:(FSArray*)arguments // You can pass nil for "arguments" +{ + // Simulate the user invoking a method on the selected object through the browser. + + NSString* methodName = [FSCompiler stringFromSelector:selector]; + id selectedObject; + + if ((selectedObject = [self validSelectedObject]) == nil) { + NSBeep(); + return; + } + + if (![selectedObject respondsToSelector:selector] && selector != @selector(applyBlock:) /* Account for a proxy to an object in an app not linked against the F-Script framework */) { + NSBeginInformationalAlertSheet(@"Inavlid message", @"OK", nil, nil, [self window], nil, NULL, NULL, NULL, @"The selected object doesn't responds to \"%@\".", methodName); + return; + } + + if (arguments && [arguments count] > 0) + [browser setDelegate:nil]; + + [self selectMethodNamed:methodName]; + + if (arguments && [arguments count] > 0) { + [browser setDelegate:self]; + [self sendMessageTo:selectedObject selectorString:methodName arguments:arguments column:browser.lastColumn putResultInMatrix:[browser matrixInColumn:[browser lastColumn]]]; + } + + [browser scrollColumnToVisible:[browser lastColumn]]; + [browser scrollColumnsLeftBy:1]; // Workaround for the call above to scrollColumnToVisible: not working as expected. + //[browser tile]; } +// Called from the 'send message' form +// Gets the arguments entered into the form, and then calls sendMessageTo:selectorString:arguments:column:putResultsInMatrix: - (void)sendMessageAction:(id)sender { - NSString *selectedString = [[browser selectedCell] stringValue]; - id selectedObject = [[browser loadedCellAtRow:0 column:[browser selectedColumn]] representedObject]; - NSForm *f = [[[[sender window] contentView] subviews] objectAtIndex:0]; - NSInteger nbarg = [f numberOfRows]; - FSArray *arguments = [FSArray arrayWithCapacity:nbarg]; // FSArray instead of NSMutableArray in order to support nil - NSInteger i; - - for (i = 0; i < nbarg; i++) - { - NSFormCell *cell = [f cellAtIndex:i]; - NSString *argumentString = [cell stringValue]; - FSInterpreterResult *result = [interpreter execute:argumentString]; - - if ([result isOK]) - [arguments addObject:[result result]]; - else - { - NSString *errorArgumentString = [NSString stringWithFormat:@"Argument %ld %@", (long)(i+1), [result errorMessage]]; - - [result inspectBlocksInCallStack]; - [f selectTextAtIndex:i]; - NSRunAlertPanel(@"ERROR", errorArgumentString, @"OK", nil, nil,nil); - - // An alternative for displaying the error message in a more Smalltalk-like way. Not yet functionnal. - /* - NSMutableString *errorArgumentString = [NSMutableString stringWithString:argumentString]; - NSBeep(); - [errorArgumentString insertString:[result errorMessage] atIndex:[result errorRange].location]; - [cell setStringValue:errorArgumentString]; - [cell selectWithFrame:NSMakeRect(0,0,[cell cellSize].width,[cell cellSize].height) inView:[cell controlView] editor:[f currentEditor] delegate:self start:[result errorRange].location length:[result errorRange].length]; */ - - break; - } - } - - if (i == nbarg) // There were no error evaluating the arguments - { - BOOL success; - NSMatrix *matrix = [browser matrixInColumn:[browser lastColumn]]; - //NSBrowserCell *cell; - - //[[sender window] orderOut:nil]; - //[NSApp endSheet:[sender window]]; - //[[sender window] close]; - - success = [self sendMessageTo:selectedObject selectorString:selectedString arguments:arguments putResultInMatrix:matrix]; - /*if (cell = [matrix cellAtRow:0 column:0]) - { - [browser setTitle:printString([[cell representedObject] classOrMetaclass]) ofColumn:[browser lastColumn]]; - }*/ - - //[[sender window] orderOut:nil]; - if (success) - { - [NSApp endSheet:[sender window]]; - [[sender window] close]; - [browser tile]; - } - } -} - -- (BOOL) sendMessageTo:(id)receiver selectorString:(NSString *)selectorStr arguments:(FSArray *)arguments putResultInMatrix:(NSMatrix *)matrix -{ - NSInteger nbarg = [arguments count]; - id args[nbarg+2]; - SEL selector = [FSCompiler selectorFromString:selectorStr]; - NSInteger i; - id result = nil; // To avoid a warning "might be used uninitialized" - - if ([receiver isKindOfClass:[FSNewlyAllocatedObjectHolder class]]) receiver = [receiver object]; - args[0] = receiver; - args[1] = (id)selector; - for (i = 0; i < nbarg; i++) args[i+2] = [arguments objectAtIndex:i]; - - @try - { - result = sendMsgNoPattern(receiver, selector, nbarg+2, args, [FSMsgContext msgContext], nil); - } - @catch (id exception) - { - FSInspectBlocksInCallStackForException(exception); - NSRunAlertPanel(@"Error", FSErrorMessageFromException(exception), @"OK", nil, nil,nil); - return NO; - } - - if (selector == @selector(alloc) || selector == @selector(allocWithZone:)) - result = [FSNewlyAllocatedObjectHolder newlyAllocatedObjectHolderWithObject:result]; - - if (FSEncode([[receiver methodSignatureForSelector:selector] methodReturnType]) != 'v') - [self fillMatrix:matrix withObject:result]; - - return YES; -} - --(void)setInterpreter:(FSInterpreter *)theInterpreter -{ - [theInterpreter retain]; - [interpreter release]; - interpreter = theInterpreter; -} - --(void)setFilterString:(NSString *)theFilterString -{ - [theFilterString retain]; - [filterString release]; - filterString = theFilterString; -} - --(void)setRootObject:(id)theRootObject -{ - [theRootObject retain]; - [rootObject release]; - rootObject = theRootObject; - browsingMode = FSBrowsingObject; - [browser loadColumnZero]; - //[browser displayColumn:0]; // may be unnecessary -} - -- (void)setTitleOfLastColumn:(NSString *)title -{ - [browser setTitle:title ofColumn:[browser lastColumn]]; + NSString* selectedString = [[browser selectedCell] stringValue]; + id selectedObject = [[browser loadedCellAtRow:0 column:[browser selectedColumn]] representedObject]; + NSForm* f = [[[[sender window] contentView] subviews] objectAtIndex:0]; + NSInteger nbarg = [f numberOfRows]; + FSArray* arguments = [FSArray arrayWithCapacity:nbarg]; // FSArray instead of NSMutableArray in order to support nil + NSInteger i; + + for (i = 0; i < nbarg; i++) { + NSFormCell* cell = [f cellAtIndex:i]; + NSString* argumentString = [cell stringValue]; + FSInterpreterResult* result = [interpreter execute:argumentString]; + + if ([result isOK]) + [arguments addObject:[result result]]; + else { + NSString* errorArgumentString = [NSString stringWithFormat:@"Argument %ld %@", (long)(i + 1), [result errorMessage]]; + + [result inspectBlocksInCallStack]; + [f selectTextAtIndex:i]; + NSRunAlertPanel(@"ERROR", errorArgumentString, @"OK", nil, nil, nil); + break; + } + } + + if (i == nbarg) // There were no error evaluating the arguments + { + BOOL success; + NSMatrix* matrix = [browser matrixInColumn:[browser lastColumn]]; + success = [self sendMessageTo:selectedObject selectorString:selectedString arguments:arguments column:browser.lastColumn putResultInMatrix:matrix]; + if (success) { + [NSApp endSheet:[sender window]]; + [[sender window] close]; + [browser tile]; + } + } +} + +- (BOOL)sendMessageTo:(id)receiver selectorString:(NSString*)selectorStr arguments:(FSArray*)arguments column:(NSUInteger)column putResultInMatrix:(NSMatrix*)matrix +{ + NSInteger nbarg = [arguments count]; + id args[nbarg + 2]; + SEL selector = [FSCompiler selectorFromString:selectorStr]; + NSInteger i; + id result = nil; // To avoid a warning "might be used uninitialized" + + if ([receiver isKindOfClass:[FSNewlyAllocatedObjectHolder class]]) + receiver = [receiver object]; + args[0] = receiver; + args[1] = (id)sel_getName(selector); + for (i = 0; i < nbarg; i++) + args[i + 2] = [arguments objectAtIndex:i]; + + @try { + result = sendMsgNoPattern(receiver, selector, nbarg + 2, args, [FSMsgContext msgContext], nil); + } + @catch (id exception) + { + FSInspectBlocksInCallStackForException(exception); + NSRunAlertPanel(@"Error", FSErrorMessageFromException(exception), @"OK", nil, nil, nil); + return NO; + } + + if (selector == @selector(alloc) || selector == @selector(allocWithZone:)) + result = [FSNewlyAllocatedObjectHolder newlyAllocatedObjectHolderWithObject:result]; + + if (FSEncode([[receiver methodSignatureForSelector:selector] methodReturnType]) != 'v') + [self fillMatrix:matrix column:column withObject:result]; + + return YES; +} + +- (void)setInterpreter:(FSInterpreter*)theInterpreter +{ + [theInterpreter retain]; + [interpreter release]; + interpreter = theInterpreter; +} + +- (void)setFilterString:(NSString*)theFilterString +{ + [theFilterString retain]; + [filterString release]; + filterString = theFilterString; +} + +- (void)setRootObject:(id)theRootObject +{ + [theRootObject retain]; + [rootObject release]; + rootObject = theRootObject; + browsingMode = FSBrowsingObject; + [browser loadColumnZero]; + //[browser displayColumn:0]; // may be unnecessary +} + +- (void)setTitleOfLastColumn:(NSString*)title +{ + [browser setTitle:title ofColumn:[browser lastColumn]]; } - (void)updateAction:(id)sender { - [self filter]; - /* int i, nb; - - for (i = 0, nb = [browser lastColumn]+1; i < nb; i +=2) - { - NSMatrix *matrix = [browser matrixInColumn:i]; - int selectedRow = [matrix selectedRow]; - id object = [[matrix cellAtRow:0 column:0] representedObject]; - - if ((i == 0 && (browsingMode == FSBrowsingWorkspace || browsingMode == FSBrowsingClasses)) || (selectedRow != 0 && ([object isKindOfClass:[NSArray class]] || [object isKindOfClass:[NSDictionary class]] || [object isKindOfClass:[NSSet class]])) ) - { - int j = 0; - int numberOfRows; - id selectedElement = [[matrix cellAtRow:selectedRow column:0] representedObject]; - - [selectedElement retain]; // (1) To ensure selectedElement will not be deallocated as a side effect of the following fillMatrix:withObject: message - - if (browsingMode == FSBrowsingWorkspace && i == 0) - [self fillMatrixForWorkspaceBrowsing:matrix]; // As a side effect, this will supress the selection - else if (browsingMode == FSBrowsingClasses && i == 0) - [self fillMatrixForClassesBrowsing:matrix]; // As a side effect, this will supress the selection - else - [self fillMatrix:matrix withObject:object]; // As a side effect, this will supress the selection - - //if (i == nb-2) [browser setLastColumn:i]; - - // Since the collection may have been modified, we search for - // the element of the collection that was selected (if still in the collection) - // in order to re-install the selection - numberOfRows = [matrix numberOfRows]; - while (1) - { - if (selectedRow+j >= numberOfRows && selectedRow-j < 0) break; - else if (selectedRow+j < numberOfRows && [[matrix cellAtRow:selectedRow+j column:0] representedObject] == selectedElement) + [self filter]; +} + +- (id)validSelectedObject +{ + id selectedObject = [self selectedObject]; + + // We test wether the selectedObject object is valid (an invalid proxy will raise when sent -respondsToSelector:) + @try { + [selectedObject respondsToSelector:@selector(class)]; + } + @catch (id exception) { - [matrix selectCellAtRow:selectedRow+j column:0]; - break; + return nil; + } + + return selectedObject; +} + +- (void)workspaceAction:(id)sender +{ + [self browseWorkspace]; +} + +@end + +static FSObjectBrowserCell* addRowToMatrix(NSMatrix* matrix) +{ + // Since we reuse cells when filtering (because we use renewRows:columns:), we must + // ensure that they are correctly set-up when reused. This is the job of this function. + + FSObjectBrowserCell* cell; + + // For an unknown reason, the following does not correctly maintain the selection: + // *********** + // int numberOfRows = [matrix numberOfRows]; + // [matrix renewRows:numberOfRows+1 columns:1]; + // cell = [matrix cellAtRow:numberOfRows column:0]; + // *********** + // We do the folowing instead: + // *********** + [matrix addRow]; + cell = [matrix cellAtRow:[matrix numberOfRows] - 1 column:0]; + // *********** + + [cell setLeaf:NO]; + [cell setEnabled:YES]; + [cell setObjectValue:nil]; + [cell setObjectBrowserCellType:FSOBUNKNOWN]; + [cell setClassLabel:nil]; + [cell setLabel:nil]; + [cell setRepresentedObject:nil]; + return cell; +} + + +NSInteger FSCompareClassNamesForAlphabeticalOrder(NSString* className1, NSString* className2, void* context) +{ + if ([className1 hasPrefix:@"%"] && ![className2 hasPrefix:@"%"]) + return NSOrderedDescending; + else if ([className2 hasPrefix:@"%"] && ![className1 hasPrefix:@"%"]) + return NSOrderedAscending; + else + return [className1 caseInsensitiveCompare:className2]; +} + + +static NSInteger FSCompareMethodsNamesForAlphabeticalOrder(NSString* m1, NSString* m2, void* context) +{ + if ([m1 hasPrefix:@"_"] && ![m2 hasPrefix:@"_"]) + return NSOrderedDescending; + else if ([m2 hasPrefix:@"_"] && ![m1 hasPrefix:@"_"]) + return NSOrderedAscending; + else + return [m1 caseInsensitiveCompare:m2]; +} + +static NSString* printStringForObjectBrowser(id object) +{ + NSString* entityName; + NSString* result = nil; + + @try { + if (NSManagedObjectClass && [object isKindOfClass:NSManagedObjectClass] && (entityName = [[object entity] name]) != nil) { + result = [@"Managed object: " stringByAppendingString:entityName]; + } } - else if (selectedRow-j >= 0 && [[matrix cellAtRow:selectedRow-j column:0] representedObject] == selectedElement) + @catch (id exception) { - [matrix selectCellAtRow:selectedRow-j column:0]; - break; + result = [NSString stringWithFormat:@"*** Non printable object. The following exception was raised when " + @"trying to get a textual representation of the object: %@", + FSErrorMessageFromException(exception)]; + } + + if (!result) { + result = printStringLimited(object, 1000); + if ([result length] > 510) + result = [[result substringWithRange:NSMakeRange(0, 500)] stringByAppendingString:@" ..."]; + } + + return result; +} + + +static NSString* humanReadableFScriptTypeDescriptionFromEncodedObjCType(const char* ptr) +{ + while (*ptr == 'r' || *ptr == 'n' || *ptr == 'N' || *ptr == 'o' || *ptr == 'O' || *ptr == 'R' || *ptr == 'V') + ptr++; + + if (strcmp(ptr, @encode(id)) == 0) + return @""; + else if (strcmp(ptr, @encode(char)) == 0) + return @""; + else if (strcmp(ptr, @encode(int)) == 0) + return @"int"; + else if (strcmp(ptr, @encode(short)) == 0) + return @"short"; + else if (strcmp(ptr, @encode(long)) == 0) + return @"long"; + else if (strcmp(ptr, @encode(long long)) == 0) + return @"long long"; + else if (strcmp(ptr, @encode(unsigned char)) == 0) + return @"unsigned char"; + else if (strcmp(ptr, @encode(unsigned short)) == 0) + return @"unsigned short"; + else if (strcmp(ptr, @encode(unsigned int)) == 0) + return @"unsigned int"; + else if (strcmp(ptr, @encode(unsigned long)) == 0) + return @"unsigned long"; + else if (strcmp(ptr, @encode(unsigned long long)) == 0) + return @"unsigned long long"; + else if (strcmp(ptr, @encode(float)) == 0) + return @"float"; + else if (strcmp(ptr, @encode(double)) == 0) + return @"double"; + else if (strcmp(ptr, @encode(char*)) == 0) + return @"pointer"; + else if (strcmp(ptr, @encode(SEL)) == 0) + return @"SEL"; + else if (strcmp(ptr, @encode(Class)) == 0) + return @"Class"; + else if (strcmp(ptr, @encode(NSRange)) == 0) + return @"NSRange"; + else if (strcmp(ptr, @encode(NSPoint)) == 0) + return @"NSPoint"; + else if (strcmp(ptr, @encode(NSSize)) == 0) + return @"NSSize"; + else if (strcmp(ptr, @encode(NSRect)) == 0) + return @"NSRect"; + else if (strcmp(ptr, @encode(CGPoint)) == 0) + return @"CGPoint"; + else if (strcmp(ptr, @encode(CGSize)) == 0) + return @"CGSize"; + else if (strcmp(ptr, @encode(CGRect)) == 0) + return @"CGRect"; + else if (strcmp(ptr, @encode(CGAffineTransform)) == 0) + return @"CGAffineTransform"; + else if (strcmp(ptr, @encode(_Bool)) == 0) + return @"boolean"; + else if (*ptr == '{') { + NSMutableString* structName = [NSMutableString string]; + ptr++; + while (isalnum(*ptr) || *ptr == '_') { + [structName appendString:[[[NSString alloc] initWithBytes:ptr length:1 encoding:NSASCIIStringEncoding] autorelease]]; + ptr++; + } + if (*ptr == '=' && ![structName isEqualToString:@""]) + return [@"struct " stringByAppendingString:structName]; + else + return @""; + } + else if (*ptr == '^') { + NSString* pointed = humanReadableFScriptTypeDescriptionFromEncodedObjCType(++ptr); + if ([pointed isEqualToString:@""]) + return @"pointer"; + else + return [@"pointer to " stringByAppendingString:pointed]; } else - j++; - } - [selectedElement release]; // We can now match the retain in (1) - - // If no object is selected in the current matrix, then we "disable" the next matrix - // (which contains a method list), because we won't be able call a method from this matrix. - if ([matrix selectedRow] == -1 && i+1 <= [browser lastColumn]) - [[browser matrixInColumn:i+1] setEnabled:NO]; - } - else - { - [self fillMatrix:matrix withObject:object]; // As a side effect, this will supress the selection - if (selectedRow == 0) - [matrix selectCellAtRow:selectedRow column:0]; // I reinstall the selection - else - if (i+1 <= [browser lastColumn]) - [[browser matrixInColumn:i+1] setEnabled:NO]; - } - } - [[self window] display]; // To display the changes. Is there an other way ? */ -} - -- (id) validSelectedObject -{ - id selectedObject = [self selectedObject]; - - // We test wether the selectedObject object is valid (an invalid proxy will raise when sent -respondsToSelector:) - @try - { - [selectedObject respondsToSelector:@selector(class)]; - } - @catch (id exception) - { - return nil; - } - - return selectedObject; -} - -- (void) workspaceAction:(id)sender -{ - [self browseWorkspace]; -} - -//- (BOOL) isOpaque{return YES;} -@end + return @""; +} + +static NSString* FScriptObjectTemplateForEncodedObjCType(const char* ptr) +{ + while (*ptr == 'r' || *ptr == 'n' || *ptr == 'N' || *ptr == 'o' || *ptr == 'O' || *ptr == 'R' || *ptr == 'V') + ptr++; + if (strcmp(ptr, @encode(SEL)) == 0) + return @"#selector"; + else if (strcmp(ptr, @encode(NSRange)) == 0) + return @"NSValue rangeWithLocation:0 length:0"; + else if (strcmp(ptr, @encode(NSPoint)) == 0) + return @"0<>0"; + else if (strcmp(ptr, @encode(NSSize)) == 0) + return @"NSValue sizeWithWidth:0 height:0"; + else if (strcmp(ptr, @encode(NSRect)) == 0) + return @"0<>0 extent:0<>0"; + else if (strcmp(ptr, @encode(NSEdgeInsets)) == 0) + return @"NSValue edgeInsetsWithTop:0 left:0 bottom:0 right:0"; + else if (strcmp(ptr, @encode(CGPoint)) == 0) + return @"0<>0"; + else if (strcmp(ptr, @encode(CGSize)) == 0) + return @"NSValue sizeWithWidth:0 height:0"; + else if (strcmp(ptr, @encode(CGRect)) == 0) + return @"0<>0 extent:0<>0"; + //else if (strcmp(ptr,@encode(_Bool)) == 0) return @""; + else + return @""; +} diff --git a/FScriptFramework/FSObjectBrowserViewObjectInfo.h b/FScriptFramework/FSObjectBrowserViewObjectInfo.h index 8e99ad1..39879d3 100644 --- a/FScriptFramework/FSObjectBrowserViewObjectInfo.h +++ b/FScriptFramework/FSObjectBrowserViewObjectInfo.h @@ -6,6 +6,14 @@ @interface FSObjectBrowserView (FSObjectBrowserViewObjectInfo) -- (void)fillMatrix:(NSMatrix *)m withObject:(id)object; +- (void)fillMatrix:(NSMatrix*)m column:(NSUInteger)col withObject:(id)object; @end + +@interface FSObjectBrowserViewObjectHelper : NSObject +@property (nonatomic, retain) FSObjectInspectorViewModelItem* rootViewModelItem; ++ (NSArray*)baseClasses; +-(void)introspectPropertiesOfObject:(id)object; +-(void)populateModelWithObject:(id)object; + +@end diff --git a/FScriptFramework/FSObjectBrowserViewObjectInfo.m b/FScriptFramework/FSObjectBrowserViewObjectInfo.m index 868867d..e0ab6ad 100644 --- a/FScriptFramework/FSObjectBrowserViewObjectInfo.m +++ b/FScriptFramework/FSObjectBrowserViewObjectInfo.m @@ -2,16 +2,19 @@ // This software is open source. See the license. #import "FSObjectBrowserViewObjectInfo.h" +#import "FSObjectEnumInfo.h" #import "FSObjectBrowserCell.h" +#import "FSObjectBrowserMatrix.h" #import "FSNamedNumber.h" #import "FSNumber.h" -#import "FSMiscTools.h" +#import "FSMiscTools.h" #import "FSBoolean.h" #import "FSBlock.h" #import "BlockRep.h" #import "FSGenericPointer.h" #import "FSGenericPointerPrivate.h" #import "FSObjectBrowserNamedObjectWrapper.h" +#import "FSObjectInspectorViewModelItem.h" #import "FSNSString.h" #import #import "FSGenericPointerPrivate.h" @@ -35,4330 +38,3351 @@ #import "FSCNDictionary.h" #import "FSAssociation.h" -@interface FSObjectBrowserViewObjectHelper : NSObject -{ - FSObjectBrowserCell *selectedCell; - NSString *selectedClassLabel; - NSString *selectedLabel; - id selectedObject; - NSString *classLabel; - NSMatrix *m; - FSObjectBrowserView *view; - NSMutableArray *baseClasses; -} - -@property (nonatomic, retain) NSMutableArray *baseClasses; - -- (id)initWithObjectBrowserView:(FSObjectBrowserView *)view; -- (void)fillMatrix:(NSMatrix *)m withObject:(id)object; - -- (void)addFSGenericPointer:(id)object; -- (void)addFSObjectPointer:(id)object; -- (void)addNSAffineTransform:(id)object; -- (void)addNSAlert:(id)object; -- (void)addNSAnimation:(id)object; -- (void)addNSAnimationContext:(id)object; -- (void)addNSAttributedString:(id)object; -- (void)addNSBezierPath:(id)object; -- (void)addNSCell:(id)object; -- (void)addNSCollectionViewItem:(id)object; -- (void)addNSComparisonPredicate:(id)object; -- (void)addNSCompoundPredicate:(id)object; -- (void)addNSController:(id)object; -- (void)addNSCursor:(id)object; -- (void)addNSDockTile:(id)object; -- (void)addNSDocument:(id)object; -- (void)addNSDocumentController:(id)object; -- (void)addNSEntityDescription:(id)object; -- (void)addNSEvent:(id)object; -- (void)addNSExpression:(id)object; -- (void)addNSFetchRequest:(id)object; -- (void)addNSFileWrapper:(id)object; -- (void)addNSFont:(id)object; -- (void)addNSFontDescriptor:(id)object; -- (void)addNSFontManager:(id)object; -- (void)addNSGlyphInfo:(id)object; -- (void)addNSGlyphGenerator:(id)object; -- (void)addNSGradient:(id)object; -- (void)addNSGraphicsContext:(id)object; -- (void)addNSImage:(id)object; -- (void)addNSImageRep:(id)object; -- (void)addNSLayoutManager:(id)object; -- (void)addNSManagedObjectContext:(id)object; -- (void)addNSManagedObjectID:(id)object; -- (void)addNSManagedObjectModel:(id)object; -- (void)addNSMenu:(id)object; -- (void)addNSMenuItem:(id)object; -- (void)addNSOpenGLContext:(id)object; -- (void)addNSOpenGLPixelBuffer:(id)object; -- (void)addNSOpenGLPixelFormat:(id)object; -- (void)addNSPageLayout:(id)object; -- (void)addNSParagraphStyle:(id)object; -- (void)addNSPersistentStoreCoordinator:(id)object; -- (void)addNSPredicateEditorRowTemplate:(id)object; -- (void)addNSPropertyDescription:(id)object; -- (void)addNSResponder:(id)object; -- (void)addNSRulerMarker:(id)object; -- (void)addNSScreen:(id)object; -- (void)addNSShadow:(id)object; -- (void)addNSStatusBar:(id)object; -- (void)addNSStatusItem:(id)object; -- (void)addNSTabViewItem:(id)object; -- (void)addNSTableColumn:(id)object; -- (void)addNSTextAttachment:(id)object; -- (void)addNSTextBlock:(id)object; -- (void)addNSTextContainer:(id)object; -- (void)addNSTextList:(id)object; -- (void)addNSTextTab:(id)object; -- (void)addNSToolbar:(id)object; -- (void)addNSToolbarItem:(id)object; -- (void)addNSTrackingArea:(id)object; -- (void)addNSUndoManager:(id)object; -- (void)addNSATSTypesetter:(id)object; - -- (void)processNSView:(id)object; -- (void)processNSControl:(id)object; -- (void)processNSWindow:(id)object; -@end - -static id objectFromAnimationBlockingMode(NSAnimationBlockingMode animationBlockingMode) -{ - switch (animationBlockingMode) - { - case NSAnimationBlocking: return [FSNamedNumber namedNumberWithDouble:animationBlockingMode name:@"NSAnimationBlocking"]; - case NSAnimationNonblocking: return [FSNamedNumber namedNumberWithDouble:animationBlockingMode name:@"NSAnimationNonblocking"]; - case NSAnimationNonblockingThreaded: return [FSNamedNumber namedNumberWithDouble:animationBlockingMode name:@"NSAnimationNonblockingThreaded"]; - default: return [FSNumber numberWithDouble:animationBlockingMode]; - } -} - -static id objectFromAnimationCurve(NSAnimationCurve animationCurve) -{ - switch (animationCurve) - { - case NSAnimationEaseInOut: return [FSNamedNumber namedNumberWithDouble:animationCurve name:@"NSAnimationEaseInOut"]; - case NSAnimationEaseIn: return [FSNamedNumber namedNumberWithDouble:animationCurve name:@"NSAnimationEaseIn"]; - case NSAnimationEaseOut: return [FSNamedNumber namedNumberWithDouble:animationCurve name:@"NSAnimationEaseOut"]; - case NSAnimationLinear: return [FSNamedNumber namedNumberWithDouble:animationCurve name:@"NSAnimationLinear"]; - default: return [FSNumber numberWithDouble:animationCurve]; - } -} - -static id objectFromAlertStyle(NSAlertStyle alertStyle) -{ - switch (alertStyle) - { - case NSWarningAlertStyle: return [FSNamedNumber namedNumberWithDouble:alertStyle name:@"NSWarningAlertStyle"]; - case NSInformationalAlertStyle: return [FSNamedNumber namedNumberWithDouble:alertStyle name:@"NSInformationalAlertStyle"]; - case NSCriticalAlertStyle: return [FSNamedNumber namedNumberWithDouble:alertStyle name:@"NSCriticalAlertStyle"]; - default: return [FSNumber numberWithDouble:alertStyle]; - } -} - -static id objectFromAutoresizingMask(NSUInteger mask) -{ - if (mask & ~(NSViewMinXMargin | NSViewWidthSizable | NSViewMaxXMargin | NSViewMinYMargin | NSViewHeightSizable | NSViewMaxYMargin)) return [FSNumber numberWithDouble:mask]; - else if (mask == 0) return [FSNamedNumber namedNumberWithDouble:NSRegularControlSize name:@"NSViewNotSizable"]; - else - { - NSMutableString *str = [NSMutableString string]; - - if (mask & NSViewMinXMargin) [str appendString:@"NSViewMinXMargin"]; - if (mask & NSViewWidthSizable) [str appendString:[str length] == 0 ? @"NSViewWidthSizable" : @" + NSViewWidthSizable"]; - if (mask & NSViewMaxXMargin) [str appendString:[str length] == 0 ? @"NSViewMaxXMargin" : @" + NSViewMaxXMargin"]; - if (mask & NSViewMinYMargin) [str appendString:[str length] == 0 ? @"NSViewMinYMargin" : @" + NSViewMinYMargin"]; - if (mask & NSViewHeightSizable) [str appendString:[str length] == 0 ? @"NSViewHeightSizable" : @" + NSViewHeightSizable"]; - if (mask & NSViewMaxYMargin) [str appendString:[str length] == 0 ? @"NSViewMaxYMargin" : @" + NSViewMaxYMargin"]; - - return [FSNamedNumber namedNumberWithDouble:mask name:str]; - } -} +#import "metamacrosorig.h" -static id objectFromAttributeType(NSAttributeType attributeType) +NSString* +labelFromPropertyName(NSString* propertyName) { - switch (attributeType) - { - case NSUndefinedAttributeType: return [FSNamedNumber namedNumberWithDouble:attributeType name:@"NSUndefinedAttributeType"]; - case NSInteger16AttributeType: return [FSNamedNumber namedNumberWithDouble:attributeType name:@"NSInteger16AttributeType"]; - case NSInteger32AttributeType: return [FSNamedNumber namedNumberWithDouble:attributeType name:@"NSInteger32AttributeType"]; - case NSInteger64AttributeType: return [FSNamedNumber namedNumberWithDouble:attributeType name:@"NSInteger64AttributeType"]; - case NSDecimalAttributeType: return [FSNamedNumber namedNumberWithDouble:attributeType name:@"NSDecimalAttributeType"]; - case NSDoubleAttributeType: return [FSNamedNumber namedNumberWithDouble:attributeType name:@"NSDoubleAttributeType"]; - case NSFloatAttributeType: return [FSNamedNumber namedNumberWithDouble:attributeType name:@"NSFloatAttributeType"]; - case NSStringAttributeType: return [FSNamedNumber namedNumberWithDouble:attributeType name:@"NSStringAttributeType"]; - case NSBooleanAttributeType: return [FSNamedNumber namedNumberWithDouble:attributeType name:@"NSBooleanAttributeType"]; - case NSDateAttributeType: return [FSNamedNumber namedNumberWithDouble:attributeType name:@"NSDateAttributeType"]; - case NSBinaryDataAttributeType: return [FSNamedNumber namedNumberWithDouble:attributeType name:@"NSBinaryDataAttributeType"]; - case NSTransformableAttributeType: return [FSNamedNumber namedNumberWithDouble:attributeType name:@"NSTransformableAttributeType"]; - default: return [FSNumber numberWithDouble:attributeType]; - } + NSMutableString* formLabel = [ NSMutableString string ]; + NSScanner* scanner = [ NSScanner scannerWithString: propertyName ]; + + BOOL first = YES; + NSString* item = nil; + NSString* upperCase = @""; + + while ( ![ scanner isAtEnd ] && [ scanner scanUpToCharactersFromSet: [ NSCharacterSet uppercaseLetterCharacterSet ] intoString: &item ] ) { + if ( !first ) { + [ formLabel appendFormat: @" %@%@", upperCase, item ]; + } + else { + [ formLabel appendFormat: @"%@%@", [ [item substringToIndex:1] uppercaseString ], (item.length>1?[ item substringFromIndex:1]:@"") ]; + first = NO; + } + + [ scanner scanCharactersFromSet: [ NSCharacterSet uppercaseLetterCharacterSet ] intoString: &upperCase ]; + } + + if ( ![ scanner isAtEnd ] ) { + [ formLabel appendFormat: @" %@", [ [ scanner string ] substringFromIndex: [ scanner scanLocation ] ] ]; + } + + return formLabel; } -static id objectFromBackgroundStyle(NSBackgroundStyle backgroundStyle) -{ - switch (backgroundStyle) - { - case NSBackgroundStyleLight: return [FSNamedNumber namedNumberWithDouble:backgroundStyle name:@"NSBackgroundStyleLight"]; - case NSBackgroundStyleDark: return [FSNamedNumber namedNumberWithDouble:backgroundStyle name:@"NSBackgroundStyleDark"]; - case NSBackgroundStyleRaised: return [FSNamedNumber namedNumberWithDouble:backgroundStyle name:@"NSBackgroundStyleRaised"]; - case NSBackgroundStyleLowered: return [FSNamedNumber namedNumberWithDouble:backgroundStyle name:@"NSBackgroundStyleLowered"]; - default: return [FSNumber numberWithDouble:backgroundStyle]; - } -} -static id objectFromBackingStoreType(NSBackingStoreType backingStoreType) -{ - switch (backingStoreType) - { - case NSBackingStoreBuffered: return [FSNamedNumber namedNumberWithDouble:backingStoreType name:@"NSBackingStoreBuffered"]; - case NSBackingStoreRetained: return [FSNamedNumber namedNumberWithDouble:backingStoreType name:@"NSBackingStoreRetained"]; - case NSBackingStoreNonretained: return [FSNamedNumber namedNumberWithDouble:backingStoreType name:@"NSBackingStoreNonretained"]; - default: return [FSNumber numberWithDouble:backingStoreType]; - } -} +@interface FSObjectBrowserViewObjectHelper () -static id objectFromBorderType(NSBorderType borderType) -{ - switch (borderType) - { - case NSNoBorder: return [FSNamedNumber namedNumberWithDouble:borderType name:@"NSNoBorder"]; - case NSLineBorder: return [FSNamedNumber namedNumberWithDouble:borderType name:@"NSLineBorder"]; - case NSBezelBorder: return [FSNamedNumber namedNumberWithDouble:borderType name:@"NSBezelBorder"]; - case NSGrooveBorder: return [FSNamedNumber namedNumberWithDouble:borderType name:@"NSGrooveBorder"]; - default: return [FSNumber numberWithDouble:borderType]; - } -} +@property (nonatomic, assign) FSObjectInspectorViewModelItem* currentViewModelItem; -static id objectFromBezelStyle(NSBezelStyle bezelStyle) -{ - switch (bezelStyle) - { - case NSRoundedBezelStyle: return [FSNamedNumber namedNumberWithDouble:bezelStyle name:@"NSRoundedBezelStyle"]; - case NSRegularSquareBezelStyle: return [FSNamedNumber namedNumberWithDouble:bezelStyle name:@"NSRegularSquareBezelStyle"]; - case NSThickSquareBezelStyle: return [FSNamedNumber namedNumberWithDouble:bezelStyle name:@"NSThickSquareBezelStyle"]; - case NSThickerSquareBezelStyle: return [FSNamedNumber namedNumberWithDouble:bezelStyle name:@"NSThickerSquareBezelStyle"]; - case NSDisclosureBezelStyle: return [FSNamedNumber namedNumberWithDouble:bezelStyle name:@"NSDisclosureBezelStyle"]; - case NSShadowlessSquareBezelStyle: return [FSNamedNumber namedNumberWithDouble:bezelStyle name:@"NSShadowlessSquareBezelStyle"]; - case NSCircularBezelStyle: return [FSNamedNumber namedNumberWithDouble:bezelStyle name:@"NSCircularBezelStyle"]; - case NSTexturedSquareBezelStyle: return [FSNamedNumber namedNumberWithDouble:bezelStyle name:@"NSTexturedSquareBezelStyle"]; - case NSHelpButtonBezelStyle: return [FSNamedNumber namedNumberWithDouble:bezelStyle name:@"NSHelpButtonBezelStyle"]; - case NSSmallSquareBezelStyle: return [FSNamedNumber namedNumberWithDouble:bezelStyle name:@"NSSmallSquareBezelStyle"]; - case NSTexturedRoundedBezelStyle: return [FSNamedNumber namedNumberWithDouble:bezelStyle name:@"NSTexturedRoundedBezelStyle"]; - default: return [FSNumber numberWithDouble:bezelStyle]; - } -} +- (id)initWithObjectBrowserView:(FSObjectBrowserView*)view; +- (void)fillMatrix:(NSMatrix*)m withObject:(id)object; +@end -static id objectFromBitmapFormat(NSBitmapFormat mask) -{ - if (mask == 0 || (mask & ~(NSAlphaFirstBitmapFormat | NSAlphaNonpremultipliedBitmapFormat | NSFloatingPointSamplesBitmapFormat))) return [FSNumber numberWithDouble:mask]; - else - { - NSMutableString *str = [NSMutableString string]; - - if (mask & NSAlphaFirstBitmapFormat) [str appendString:@"NSAlphaFirstBitmapFormat"]; - if (mask & NSAlphaNonpremultipliedBitmapFormat) [str appendString:[str length] == 0 ? @"NSAlphaNonpremultipliedBitmapFormat" : @" + NSAlphaNonpremultipliedBitmapFormat"]; - if (mask & NSFloatingPointSamplesBitmapFormat) [str appendString:[str length] == 0 ? @"NSFloatingPointSamplesBitmapFormat" : @" + NSFloatingPointSamplesBitmapFormat"]; - return [FSNamedNumber namedNumberWithDouble:mask name:str]; - } -} -static id objectFromBoxType(NSBoxType boxType) -{ - switch (boxType) - { - case NSBoxPrimary: return [FSNamedNumber namedNumberWithDouble:boxType name:@"NSBoxPrimary"]; - case NSBoxSecondary: return [FSNamedNumber namedNumberWithDouble:boxType name:@"NSBoxSecondary"]; - case NSBoxSeparator: return [FSNamedNumber namedNumberWithDouble:boxType name:@"NSBoxSeparator"]; - case NSBoxOldStyle: return [FSNamedNumber namedNumberWithDouble:boxType name:@"NSBoxOldStyle"]; - case NSBoxCustom: return [FSNamedNumber namedNumberWithDouble:boxType name:@"NSBoxCustom"]; - default: return [FSNumber numberWithDouble:boxType]; - } -} - -static id objectFromButtonMask(NSUInteger mask) -{ - if (mask == 0 || (mask & ~(NSPenTipMask | NSPenLowerSideMask | NSPenUpperSideMask))) return [FSNumber numberWithDouble:mask]; - else - { - NSMutableString *str = [NSMutableString string]; - - if (mask & NSPenTipMask) [str appendString:@"NSPenTipMask"]; - if (mask & NSPenLowerSideMask) [str appendString:[str length] == 0 ? @"NSPenLowerSideMask" : @" + NSPenLowerSideMask"]; - if (mask & NSPenUpperSideMask) [str appendString:[str length] == 0 ? @"NSPenUpperSideMask" : @" + NSPenUpperSideMask"]; - return [FSNamedNumber namedNumberWithDouble:mask name:str]; - } -} +@implementation FSObjectBrowserView (FSObjectBrowserViewObjectInfo) -static id objectFromBrowserColumnResizingType(NSBrowserColumnResizingType browserColumnResizingType) -{ - switch (browserColumnResizingType) - { - case NSBrowserNoColumnResizing: return [FSNamedNumber namedNumberWithDouble:browserColumnResizingType name:@"NSBrowserNoColumnResizing"]; - case NSBrowserAutoColumnResizing: return [FSNamedNumber namedNumberWithDouble:browserColumnResizingType name:@"NSBrowserAutoColumnResizing"]; - case NSBrowserUserColumnResizing: return [FSNamedNumber namedNumberWithDouble:browserColumnResizingType name:@"NSBrowserUserColumnResizing"]; - default: return [FSNumber numberWithDouble:browserColumnResizingType]; - } -} -/*static id objectFromButtonType(NSButtonType buttonType) +- (void)fillMatrix:(NSMatrix*)m column:(NSUInteger)col withObject:(id)object { - switch (buttonType) - { - case NSMomentaryLight: return [NamedNumber namedNumberWithDouble:buttonType name:@"NSMomentaryLight"]; - case NSMomentaryPushButton: return [NamedNumber namedNumberWithDouble:buttonType name:@"NSMomentaryPushButton"]; - case NSMomentaryChangeButton: return [NamedNumber namedNumberWithDouble:buttonType name:@"NSMomentaryChangeButton"]; - case NSPushOnPushOffButton: return [NamedNumber namedNumberWithDouble:buttonType name:@"NSPushOnPushOffButton"]; - case NSOnOffButton: return [NamedNumber namedNumberWithDouble:buttonType name:@"NSOnOffButton"]; - case NSToggleButton: return [NamedNumber namedNumberWithDouble:buttonType name:@"NSToggleButton"]; - case NSSwitchButton: return [NamedNumber namedNumberWithDouble:buttonType name:@"NSSwitchButton"]; - case NSRadioButton: return [NamedNumber namedNumberWithDouble:buttonType name:@"NSRadioButton"]; - default: return [Number numberWithDouble:buttonType]; - } -}*/ - -static id objectFromCellImagePosition(NSInteger cellImagePosition) -{ - switch (cellImagePosition) - { - case NSNoImage: return [FSNamedNumber namedNumberWithDouble:cellImagePosition name:@"NSNoImage"]; - case NSImageOnly: return [FSNamedNumber namedNumberWithDouble:cellImagePosition name:@"NSImageOnly"]; - case NSImageLeft: return [FSNamedNumber namedNumberWithDouble:cellImagePosition name:@"NSImageLeft"]; - case NSImageRight: return [FSNamedNumber namedNumberWithDouble:cellImagePosition name:@"NSImageRight"]; - case NSImageBelow: return [FSNamedNumber namedNumberWithDouble:cellImagePosition name:@"NSImageBelow"]; - case NSImageAbove: return [FSNamedNumber namedNumberWithDouble:cellImagePosition name:@"NSImageAbove"]; - case NSImageOverlaps: return [FSNamedNumber namedNumberWithDouble:cellImagePosition name:@"NSImageOverlaps"]; - default: return [FSNumber numberWithDouble:cellImagePosition]; - } -} + FSObjectBrowserViewObjectHelper* objectHelper = [[FSObjectBrowserViewObjectHelper alloc] initWithObjectBrowserView:self]; + [objectHelper fillMatrix:m withObject:object]; -static id objectFromCellMask(NSUInteger mask) -{ - if (mask & ~(NSContentsCellMask | NSPushInCellMask | NSPushInCellMask | NSChangeGrayCellMask | NSChangeBackgroundCellMask)) return [FSNumber numberWithDouble:mask]; - else if (mask == 0) return [FSNamedNumber namedNumberWithDouble:mask name:@"NSNoCellMask"]; - else - { - NSMutableString *str = [NSMutableString string]; - if (mask & NSContentsCellMask) [str appendString:@"NSContentsCellMask"]; - if (mask & NSPushInCellMask) [str appendString:[str length] == 0 ? @"NSPushInCellMask" : @" + NSPushInCellMask"]; - if (mask & NSChangeGrayCellMask) [str appendString:[str length] == 0 ? @"NSChangeGrayCellMask" : @" + NSChangeGrayCellMask"]; - if (mask & NSChangeBackgroundCellMask) [str appendString:[str length] == 0 ? @"NSChangeBackgroundCellMask" : @" + NSChangeBackgroundCellMask"]; - return [FSNamedNumber namedNumberWithDouble:mask name:str]; - } -} + [self addBlankRowToMatrix:m]; + [self fillMatrix:m withMethodsForObject:object]; -static id objectFromCellStateValue(NSCellStateValue cellStateValue) -{ - switch (cellStateValue) - { - case NSMixedState: return [FSNamedNumber namedNumberWithDouble:cellStateValue name:@"NSMixedState"]; - case NSOffState: return [FSNamedNumber namedNumberWithDouble:cellStateValue name:@"NSOffState"]; - case NSOnState: return [FSNamedNumber namedNumberWithDouble:cellStateValue name:@"NSOnState"]; - default: return [FSNumber numberWithDouble:cellStateValue]; - } -} + [m sizeToCells]; + //[m scrollCellToVisibleAtRow:[matrix selectedRow] column:0]; + [m setNeedsDisplay]; -static id objectFromCellType(NSCellType cellType) -{ - switch (cellType) - { - case NSNullCellType: return [FSNamedNumber namedNumberWithDouble:cellType name:@"NSNullCellType"]; - case NSTextCellType: return [FSNamedNumber namedNumberWithDouble:cellType name:@"NSTextCellType"]; - case NSImageCellType: return [FSNamedNumber namedNumberWithDouble:cellType name:@"NSImageCellType"]; - default: return [FSNumber numberWithDouble:cellType]; - } + [objectHelper release]; } -static id objectFromCharacterCollection(NSCharacterCollection characterCollection) -{ - switch (characterCollection) - { - case NSIdentityMappingCharacterCollection: return [FSNamedNumber namedNumberWithDouble:characterCollection name:@"NSIdentityMappingCharacterCollection"]; - case NSAdobeCNS1CharacterCollection: return [FSNamedNumber namedNumberWithDouble:characterCollection name:@"NSAdobeCNS1CharacterCollection"]; - case NSAdobeGB1CharacterCollection: return [FSNamedNumber namedNumberWithDouble:characterCollection name:@"NSAdobeGB1CharacterCollection"]; - case NSAdobeJapan1CharacterCollection: return [FSNamedNumber namedNumberWithDouble:characterCollection name:@"NSAdobeJapan1CharacterCollection"]; - case NSAdobeJapan2CharacterCollection: return [FSNamedNumber namedNumberWithDouble:characterCollection name:@"NSAdobeJapan2CharacterCollection"]; - case NSAdobeKorea1CharacterCollection: return [FSNamedNumber namedNumberWithDouble:characterCollection name:@"NSAdobeKorea1CharacterCollection"]; - default: return [FSNumber numberWithDouble:characterCollection]; - } -} +@end -static id objectFromColorPanelMode(NSInteger colorPanelMode) -{ - switch (colorPanelMode) - { - case NSGrayModeColorPanel: return [FSNamedNumber namedNumberWithDouble:colorPanelMode name:@"NSGrayModeColorPanel"]; - case NSRGBModeColorPanel: return [FSNamedNumber namedNumberWithDouble:colorPanelMode name:@"NSRGBModeColorPanel"]; - case NSCMYKModeColorPanel: return [FSNamedNumber namedNumberWithDouble:colorPanelMode name:@"NSCMYKModeColorPanel"]; - case NSHSBModeColorPanel: return [FSNamedNumber namedNumberWithDouble:colorPanelMode name:@"NSHSBModeColorPanel"]; - case NSCustomPaletteModeColorPanel: return [FSNamedNumber namedNumberWithDouble:colorPanelMode name:@"NSCustomPaletteModeColorPanel"]; - case NSColorListModeColorPanel: return [FSNamedNumber namedNumberWithDouble:colorPanelMode name:@"NSColorListModeColorPanel"]; - case NSWheelModeColorPanel: return [FSNamedNumber namedNumberWithDouble:colorPanelMode name:@"NSWheelModeColorPanel"]; - case NSCrayonModeColorPanel: return [FSNamedNumber namedNumberWithDouble:colorPanelMode name:@"NSCrayonModeColorPanel"]; - default: return [FSNumber numberWithDouble:colorPanelMode]; - } -} -static id objectFromColorRenderingIntent(NSColorRenderingIntent colorRenderingIntent) -{ - switch (colorRenderingIntent) - { - case NSColorRenderingIntentDefault: return [FSNamedNumber namedNumberWithDouble:colorRenderingIntent name:@"NSColorRenderingIntentDefault"]; - case NSColorRenderingIntentAbsoluteColorimetric: return [FSNamedNumber namedNumberWithDouble:colorRenderingIntent name:@"NSColorRenderingIntentAbsoluteColorimetric"]; - case NSColorRenderingIntentRelativeColorimetric: return [FSNamedNumber namedNumberWithDouble:colorRenderingIntent name:@"NSColorRenderingIntentRelativeColorimetric"]; - case NSColorRenderingIntentPerceptual: return [FSNamedNumber namedNumberWithDouble:colorRenderingIntent name:@"NSColorRenderingIntentPerceptual"]; - case NSColorRenderingIntentSaturation: return [FSNamedNumber namedNumberWithDouble:colorRenderingIntent name:@"NSColorRenderingIntentSaturation"]; - default: return [FSNumber numberWithDouble:colorRenderingIntent]; - } +@implementation FSObjectBrowserViewObjectHelper { + FSObjectBrowserCell* selectedCell; + NSString* selectedClassLabel; + NSString* selectedLabel; + id selectedObject; + NSString* classLabel; + NSMatrix* m; + FSObjectBrowserView* view; } -static id objectFromComparisonPredicateOptions(NSUInteger mask) +- (id)init { - if (mask == 0 || (mask & ~(NSCaseInsensitivePredicateOption | NSDiacriticInsensitivePredicateOption))) return [FSNumber numberWithDouble:mask]; - else - { - NSMutableString *str = [NSMutableString string]; - if (mask & NSCaseInsensitivePredicateOption) [str appendString:@"NSCaseInsensitivePredicateOption"]; - if (mask & NSDiacriticInsensitivePredicateOption) [str appendString:[str length] == 0 ? @"NSDiacriticInsensitivePredicateOption" : @" + NSDiacriticInsensitivePredicateOption"]; - return [FSNamedNumber namedNumberWithDouble:mask name:str]; - } + return [self initWithObjectBrowserView:nil]; } -static id objectFromComparisonPredicateModifier(NSComparisonPredicateModifier comparisonPredicateModifier) +- (id)initWithObjectBrowserView:(FSObjectBrowserView*)theView { - switch (comparisonPredicateModifier) - { - case NSDirectPredicateModifier: return [FSNamedNumber namedNumberWithDouble:comparisonPredicateModifier name:@"NSDirectPredicateModifier"]; - case NSAllPredicateModifier: return [FSNamedNumber namedNumberWithDouble:comparisonPredicateModifier name:@"NSAllPredicateModifier"]; - case NSAnyPredicateModifier: return [FSNamedNumber namedNumberWithDouble:comparisonPredicateModifier name:@"NSAnyPredicateModifier"]; - default: return [FSNumber numberWithDouble:comparisonPredicateModifier]; - } -} + self = [super init]; + if (self) { -static id objectFromCompositingOperation(NSCompositingOperation compositingOperation) -{ - switch (compositingOperation) - { - case NSCompositeClear: return [FSNamedNumber namedNumberWithDouble:compositingOperation name:@"NSCompositeClear"]; - case NSCompositeCopy: return [FSNamedNumber namedNumberWithDouble:compositingOperation name:@"NSCompositeCopy"]; - case NSCompositeSourceOver: return [FSNamedNumber namedNumberWithDouble:compositingOperation name:@"NSCompositeSourceOver"]; - case NSCompositeSourceIn: return [FSNamedNumber namedNumberWithDouble:compositingOperation name:@"NSCompositeSourceIn"]; - case NSCompositeSourceOut: return [FSNamedNumber namedNumberWithDouble:compositingOperation name:@"NSCompositeSourceOut"]; - case NSCompositeSourceAtop: return [FSNamedNumber namedNumberWithDouble:compositingOperation name:@"NSCompositeSourceAtop"]; - case NSCompositeDestinationOver: return [FSNamedNumber namedNumberWithDouble:compositingOperation name:@"NSCompositeDestinationOver"]; - case NSCompositeDestinationIn: return [FSNamedNumber namedNumberWithDouble:compositingOperation name:@"NSCompositeDestinationIn"]; - case NSCompositeDestinationOut: return [FSNamedNumber namedNumberWithDouble:compositingOperation name:@"NSCompositeDestinationOut"]; - case NSCompositeDestinationAtop: return [FSNamedNumber namedNumberWithDouble:compositingOperation name:@"NSCompositeDestinationAtop"]; - case NSCompositeXOR: return [FSNamedNumber namedNumberWithDouble:compositingOperation name:@"NSCompositeXOR"]; - case NSCompositePlusDarker: return [FSNamedNumber namedNumberWithDouble:compositingOperation name:@"NSCompositePlusDarker"]; - case NSCompositeHighlight: return [FSNamedNumber namedNumberWithDouble:compositingOperation name:@"NSCompositeHighlight"]; - case NSCompositePlusLighter: return [FSNamedNumber namedNumberWithDouble:compositingOperation name:@"NSCompositePlusLighter"]; - default: return [FSNumber numberWithDouble:compositingOperation]; - } -} + view = [[theView retain] autorelease]; + } -static id objectFromCompoundPredicateType(NSCompoundPredicateType compoundPredicateType) -{ - switch (compoundPredicateType) - { - case NSNotPredicateType: return [FSNamedNumber namedNumberWithDouble:compoundPredicateType name:@"NSNotPredicateType"]; - case NSAndPredicateType: return [FSNamedNumber namedNumberWithDouble:compoundPredicateType name:@"NSAndPredicateType"]; - case NSOrPredicateType: return [FSNamedNumber namedNumberWithDouble:compoundPredicateType name:@"NSOrPredicateType"]; - default: return [FSNumber numberWithDouble:compoundPredicateType]; - } + return self; } -static id objectFromControlSize(NSControlSize controlSize) +- (void)dealloc { - switch (controlSize) - { - case NSRegularControlSize: return [FSNamedNumber namedNumberWithDouble:controlSize name:@"NSRegularControlSize"]; - case NSSmallControlSize: return [FSNamedNumber namedNumberWithDouble:controlSize name:@"NSSmallControlSize"]; - case NSMiniControlSize: return [FSNamedNumber namedNumberWithDouble:controlSize name:@"NSMiniControlSize"]; - default: return [FSNumber numberWithDouble:controlSize]; - } + [_rootViewModelItem release]; + [super dealloc]; +} +- (void)addClassLabel:(NSString*)cLabel toMatrix:(NSMatrix*)matrix +{ + [view addClassLabel:cLabel toMatrix:matrix]; + FSObjectInspectorViewModelItem* item = [[FSObjectInspectorViewModelItem new] autorelease]; + item.valueType = FS_ITEM_HEADER; + item.name = cLabel; + [self.rootViewModelItem.mutableChildNodes addObject:item]; + self.currentViewModelItem = item; +} + +- (void)addObject:(id)object valueType:(FSInspectorVMValueType)valueType getter:(FSGetterBlock)getter setter:(FSSetterBlock)setter withLabel:(NSString*)label enumBiDict:(NSMutableDictionary*)enumBiDict mask:(NSUInteger)mask valueClass:(Class)valueClass notNil:(BOOL)notNil +{ + @try { + if (!notNil || object) { + if (view) { + [view addObject:object withLabel:label toMatrix:m classLabel:classLabel selectedClassLabel:selectedClassLabel selectedLabel:selectedLabel selectedObject:selectedObject]; + } + } + if (self.rootViewModelItem && valueType != FS_ITEM_OBJECT || valueClass) { + FSObjectInspectorViewModelItem* item = [[FSObjectInspectorViewModelItem new] autorelease]; + item.name = label; + item.valueType = valueType; + item.value = object; + item.enumBiDict = enumBiDict; + item.getter = getter; + item.setter = setter; + item.optsMask = mask; + item.valueClass = valueClass ?: [object class]; + [self.currentViewModelItem.mutableChildNodes addObject:item]; + } + } + @catch (id exception) + { + NSLog(@"%@", exception); + } } - -static id objectFromControlTint(NSControlTint controlTint) +- (void)addObject:(id)object valueType:(FSInspectorVMValueType)valueType getter:(FSGetterBlock)getter setter:(FSSetterBlock)setter withLabel:(NSString*)label notNil:(BOOL)notNil { - switch (controlTint) - { - case NSDefaultControlTint: return [FSNamedNumber namedNumberWithDouble:controlTint name:@"NSDefaultControlTint"]; - case NSBlueControlTint: return [FSNamedNumber namedNumberWithDouble:controlTint name:@"NSBlueControlTint"]; - case NSGraphiteControlTint: return [FSNamedNumber namedNumberWithDouble:controlTint name:@"NSGraphiteControlTint"]; - case NSClearControlTint: return [FSNamedNumber namedNumberWithDouble:controlTint name:@"NSClearControlTint"]; - default: return [FSNumber numberWithDouble:controlTint]; - } + [self addObject:object valueType:valueType getter:getter setter:setter withLabel:label enumBiDict:nil mask:0 valueClass:nil notNil:notNil]; } - -static id objectFromDatePickerElementFlags(NSUInteger mask) +- (void)addObject:(id)object valueType:(FSInspectorVMValueType)valueType withLabel:(NSString*)label notNil:(BOOL)notNil { - if (mask == 0 || (mask & ~(NSHourMinuteDatePickerElementFlag | NSHourMinuteSecondDatePickerElementFlag | NSTimeZoneDatePickerElementFlag | NSYearMonthDatePickerElementFlag | NSYearMonthDayDatePickerElementFlag | NSEraDatePickerElementFlag))) return [FSNumber numberWithDouble:mask]; - else - { - NSMutableString *str = [NSMutableString string]; - - if (mask & NSEraDatePickerElementFlag) [str appendString:@"NSEraDatePickerElementFlag"]; - - if (mask & NSYearMonthDayDatePickerElementFlag) [str appendString:[str length] == 0 ? @"NSYearMonthDayDatePickerElementFlag" : @" + NSYearMonthDayDatePickerElementFlag"]; - else if (mask & NSYearMonthDatePickerElementFlag) [str appendString:[str length] == 0 ? @"NSYearMonthDatePickerElementFlag" : @" + NSYearMonthDatePickerElementFlag"]; - - if (mask & NSTimeZoneDatePickerElementFlag) [str appendString:[str length] == 0 ? @"NSTimeZoneDatePickerElementFlag" : @" + NSTimeZoneDatePickerElementFlag"]; - - if (mask & NSHourMinuteSecondDatePickerElementFlag) [str appendString:[str length] == 0 ? @"NSHourMinuteSecondDatePickerElementFlag" : @" + NSHourMinuteSecondDatePickerElementFlag"]; - else if (mask & NSHourMinuteDatePickerElementFlag) [str appendString:[str length] == 0 ? @"NSHourMinuteDatePickerElementFlag" : @" + NSHourMinuteDatePickerElementFlag"]; - - return [FSNamedNumber namedNumberWithDouble:mask name:str]; - } + [self addObject:object valueType:valueType getter:nil setter:nil withLabel:label enumBiDict:nil mask:0 valueClass:(Class)nil notNil:notNil]; } - -static id objectFromDatePickerMode(NSDatePickerMode datePickerMode) +- (void)addObject:(id)object valueType:(FSInspectorVMValueType)valueType getter:(FSGetterBlock)getter setter:(FSSetterBlock)setter withLabel:(NSString*)label { - switch (datePickerMode) - { - case NSSingleDateMode: return [FSNamedNumber namedNumberWithDouble:datePickerMode name:@"NSSingleDateMode"]; - case NSRangeDateMode: return [FSNamedNumber namedNumberWithDouble:datePickerMode name:@"NSRangeDateMode"]; - default: return [FSNumber numberWithDouble:datePickerMode]; - } + [self addObject:object valueType:valueType getter:getter setter:setter withLabel:label enumBiDict:nil mask:0 valueClass:nil notNil:NO]; } -static id objectFromDatePickerStyle(NSDatePickerStyle datePickerStyle) +- (void)addGroup:(NSString*)groupName { - switch (datePickerStyle) - { - case NSTextFieldAndStepperDatePickerStyle: return [FSNamedNumber namedNumberWithDouble:datePickerStyle name:@"NSTextFieldAndStepperDatePickerStyle"]; - case NSClockAndCalendarDatePickerStyle: return [FSNamedNumber namedNumberWithDouble:datePickerStyle name:@"NSClockAndCalendarDatePickerStyle"]; - default: return [FSNumber numberWithDouble:datePickerStyle]; - } + FSObjectInspectorViewModelItem* item = [[FSObjectInspectorViewModelItem new] autorelease]; + item.name = groupName; + item.valueType = FS_ITEM_GROUP; + [self.currentViewModelItem.mutableChildNodes addObject:item]; + self.currentViewModelItem = item; } -static id objectFromDeleteRule(NSDeleteRule deleteRule) +- (void)endGroup { - switch (deleteRule) - { - case NSNoActionDeleteRule: return [FSNamedNumber namedNumberWithDouble:deleteRule name:@"NSNoActionDeleteRule"]; - case NSNullifyDeleteRule: return [FSNamedNumber namedNumberWithDouble:deleteRule name:@"NSNullifyDeleteRule"]; - case NSCascadeDeleteRule: return [FSNamedNumber namedNumberWithDouble:deleteRule name:@"NSCascadeDeleteRule"]; - case NSDenyDeleteRule: return [FSNamedNumber namedNumberWithDouble:deleteRule name:@"NSDenyDeleteRule"]; - default: return [FSNumber numberWithDouble:deleteRule]; - } + self.currentViewModelItem = (FSObjectInspectorViewModelItem*)self.currentViewModelItem.parentNode; } -static id objectFromDrawerState(NSDrawerState drawerState) -{ - switch (drawerState) - { - case NSDrawerClosedState: return [FSNamedNumber namedNumberWithDouble:drawerState name:@"NSDrawerClosedState"]; - case NSDrawerOpeningState: return [FSNamedNumber namedNumberWithDouble:drawerState name:@"NSDrawerOpeningState"]; - case NSDrawerOpenState: return [FSNamedNumber namedNumberWithDouble:drawerState name:@"NSDrawerOpenState"]; - case NSDrawerClosingState: return [FSNamedNumber namedNumberWithDouble:drawerState name:@"NSDrawerClosingState"]; - default: return [FSNumber numberWithDouble:drawerState]; - } -} +#define START_GROUP(GROUP) [self addGroup:(@ #GROUP)]; +#define END_GROUP(GROUP) [self endGroup]; -static id objectFromEventType(NSEventType eventType) -{ - switch (eventType) - { - case NSLeftMouseDown: return [FSNamedNumber namedNumberWithDouble:eventType name:@"NSLeftMouseDown"]; - case NSLeftMouseUp: return [FSNamedNumber namedNumberWithDouble:eventType name:@"NSLeftMouseUp"]; - case NSRightMouseDown: return [FSNamedNumber namedNumberWithDouble:eventType name:@"NSRightMouseDown"]; - case NSRightMouseUp: return [FSNamedNumber namedNumberWithDouble:eventType name:@"NSRightMouseUp"]; - case NSOtherMouseDown: return [FSNamedNumber namedNumberWithDouble:eventType name:@"NSOtherMouseDown"]; - case NSOtherMouseUp: return [FSNamedNumber namedNumberWithDouble:eventType name:@"NSOtherMouseUp"]; - case NSMouseMoved: return [FSNamedNumber namedNumberWithDouble:eventType name:@"NSMouseMoved"]; - case NSLeftMouseDragged: return [FSNamedNumber namedNumberWithDouble:eventType name:@"NSLeftMouseDragged"]; - case NSRightMouseDragged: return [FSNamedNumber namedNumberWithDouble:eventType name:@"NSRightMouseDragged"]; - case NSOtherMouseDragged: return [FSNamedNumber namedNumberWithDouble:eventType name:@"NSOtherMouseDragged"]; - case NSMouseEntered: return [FSNamedNumber namedNumberWithDouble:eventType name:@"NSMouseEntered"]; - case NSMouseExited: return [FSNamedNumber namedNumberWithDouble:eventType name:@"NSMouseExited"]; - case NSCursorUpdate: return [FSNamedNumber namedNumberWithDouble:eventType name:@"NSCursorUpdate"]; - case NSKeyDown: return [FSNamedNumber namedNumberWithDouble:eventType name:@"NSKeyDown"]; - case NSKeyUp: return [FSNamedNumber namedNumberWithDouble:eventType name:@"NSKeyUp"]; - case NSFlagsChanged: return [FSNamedNumber namedNumberWithDouble:eventType name:@"NSFlagsChanged"]; - case NSAppKitDefined: return [FSNamedNumber namedNumberWithDouble:eventType name:@"NSAppKitDefined"]; - case NSSystemDefined: return [FSNamedNumber namedNumberWithDouble:eventType name:@"NSSystemDefined"]; - case NSApplicationDefined: return [FSNamedNumber namedNumberWithDouble:eventType name:@"NSApplicationDefined"]; - case NSPeriodic: return [FSNamedNumber namedNumberWithDouble:eventType name:@"NSPeriodic"]; - case NSScrollWheel: return [FSNamedNumber namedNumberWithDouble:eventType name:@"NSScrollWheel"]; - case NSTabletPoint: return [FSNamedNumber namedNumberWithDouble:eventType name:@"NSTabletPoint"]; - case NSTabletProximity: return [FSNamedNumber namedNumberWithDouble:eventType name:@"NSTabletProximity"]; - default: return [FSNumber numberWithDouble:eventType]; - } -} +#define ADD_VALUE(OBJECT, VALUE_TYPE, PROPERTY, BIDICT, MASK, VALUE_CLASS, LABEL, NOT_NIL) \ + @try { \ + if (#PROPERTY[0] != '-') { \ + [self addObject:(OBJECT)valueType:VALUE_TYPE getter:^(id obj, FSObjectInspectorViewModelItem* item) { return [obj valueForKey:@ #PROPERTY]; } setter:^(id obj, id newVal, FSObjectInspectorViewModelItem* item) { [obj setValue:newVal forKey:@ #PROPERTY]; } withLabel:(LABEL)enumBiDict:BIDICT mask:MASK valueClass:VALUE_CLASS notNil:NOT_NIL]; \ + } \ + else { \ + [self addObject:(OBJECT)valueType:VALUE_TYPE getter:^(id obj, FSObjectInspectorViewModelItem* item) { return [obj valueForKey:@ #PROPERTY]; } setter:nil withLabel:(LABEL)enumBiDict:BIDICT mask:MASK valueClass:VALUE_CLASS notNil:NOT_NIL]; \ + } \ + } \ + @catch (id exception) { NSLog(@"%@", exception); } -static id objectFromEventSubtype(short eventSubtype) -{ - switch (eventSubtype) - { - case NSMouseEventSubtype: return [FSNamedNumber namedNumberWithDouble:eventSubtype name:@"NSMouseEventSubtype"]; - case NSTabletPointEventSubtype: return [FSNamedNumber namedNumberWithDouble:eventSubtype name:@"NSTabletPointEventSubtype"]; - case NSTabletProximityEventSubtype: return [FSNamedNumber namedNumberWithDouble:eventSubtype name:@"NSTabletProximityEventSubtype"]; - default: return [FSNumber numberWithDouble:eventSubtype]; - } -} - -static id objectFromExpressionType(NSExpressionType expressionType) -{ - switch (expressionType) - { - case NSConstantValueExpressionType: return [FSNamedNumber namedNumberWithDouble:expressionType name:@"NSConstantValueExpressionType"]; - case NSEvaluatedObjectExpressionType: return [FSNamedNumber namedNumberWithDouble:expressionType name:@"NSEvaluatedObjectExpressionType"]; - case NSVariableExpressionType: return [FSNamedNumber namedNumberWithDouble:expressionType name:@"NSVariableExpressionType"]; - case NSKeyPathExpressionType: return [FSNamedNumber namedNumberWithDouble:expressionType name:@"NSKeyPathExpressionType"]; - case NSFunctionExpressionType: return [FSNamedNumber namedNumberWithDouble:expressionType name:@"NSFunctionExpressionType"]; - case NSUnionSetExpressionType: return [FSNamedNumber namedNumberWithDouble:expressionType name:@"NSUnionSetExpressionType"]; - case NSIntersectSetExpressionType: return [FSNamedNumber namedNumberWithDouble:expressionType name:@"NSIntersectSetExpressionType"]; - case NSMinusSetExpressionType: return [FSNamedNumber namedNumberWithDouble:expressionType name:@"NSMinusSetExpressionType"]; - case NSSubqueryExpressionType: return [FSNamedNumber namedNumberWithDouble:expressionType name:@"NSSubqueryExpressionType"]; - case NSAggregateExpressionType: return [FSNamedNumber namedNumberWithDouble:expressionType name:@"NSAggregateExpressionType"]; - default: return [FSNumber numberWithDouble:expressionType]; - } -} +#define ADD_VALUE_GETSET(OBJECT, VALUE_TYPE, GETTER, SETTER, LABEL, NOT_NIL) \ + [self addObject:(OBJECT) valueType:VALUE_TYPE getter:^(id obj, FSObjectInspectorViewModelItem *item)GETTER setter:^(id obj, id val, FSObjectInspectorViewModelItem *item)SETTER withLabel:(LABEL) enumBiDict:nil mask:0 valueClass:nil notNil:NOT_NIL]; -static id objectFromFetchRequestResultType(NSFetchRequestResultType fetchRequestResultType) -{ - switch (fetchRequestResultType) - { - case NSManagedObjectResultType: return [FSNamedNumber namedNumberWithDouble:fetchRequestResultType name:@"NSManagedObjectResultType"]; - case NSManagedObjectIDResultType: return [FSNamedNumber namedNumberWithDouble:fetchRequestResultType name:@"NSManagedObjectIDResultType"]; - default: return [FSNumber numberWithDouble:fetchRequestResultType]; - } -} +#define ADD_ENUM(OBJECT, PROPERTY, ENUM) \ + ADD_VALUE(objectFrom##ENUM([OBJECT PROPERTY]), FS_ITEM_ENUM, PROPERTY, FSObjectEnumInfo.optionsFor##ENUM, 0, nil, labelFromPropertyName(@#PROPERTY), NO); -static id objectFromFocusRingType(NSFocusRingType focusRingType) -{ - switch (focusRingType) - { - case NSFocusRingTypeDefault: return [FSNamedNumber namedNumberWithDouble:focusRingType name:@"NSFocusRingTypeDefault"]; - case NSFocusRingTypeNone: return [FSNamedNumber namedNumberWithDouble:focusRingType name:@"NSFocusRingTypeNone"]; - case NSFocusRingTypeExterior: return [FSNamedNumber namedNumberWithDouble:focusRingType name:@"NSFocusRingTypeExterior"]; - default: return [FSNumber numberWithDouble:focusRingType]; - } -} +#define ADD_OPTIONS(OBJECT, PROPERTY, ENUM) \ + ADD_VALUE(objectFrom##ENUM([OBJECT PROPERTY]), FS_ITEM_OPTIONS, PROPERTY, FSObjectEnumInfo.optionsFor##ENUM, ENUM##Mask, nil, labelFromPropertyName(@#PROPERTY), NO); -static id objectFromFontRenderingMode(NSFontRenderingMode fontRenderingMode) -{ - switch (fontRenderingMode) - { - case NSFontDefaultRenderingMode: return [FSNamedNumber namedNumberWithDouble:fontRenderingMode name:@"NSFontDefaultRenderingMode"]; - case NSFontAntialiasedRenderingMode: return [FSNamedNumber namedNumberWithDouble:fontRenderingMode name:@"NSFontAntialiasedRenderingMode"]; - case NSFontIntegerAdvancementsRenderingMode: return [FSNamedNumber namedNumberWithDouble:fontRenderingMode name:@"NSFontIntegerAdvancementsRenderingMode"]; - case NSFontAntialiasedIntegerAdvancementsRenderingMode: return [FSNamedNumber namedNumberWithDouble:fontRenderingMode name:@"NSFontAntialiasedIntegerAdvancementsRenderingMode"]; - default: return [FSNumber numberWithDouble:fontRenderingMode]; - } -} +#define ADD_SIZE(OBJECT, PROPERTY) \ + ADD_VALUE([NSValue valueWithSize:[OBJECT PROPERTY]], FS_ITEM_SIZE, PROPERTY, nil, 0, nil, labelFromPropertyName(@#PROPERTY), NO) -static id objectFromGradientType(NSGradientType gradientType) -{ - switch (gradientType) - { - case NSGradientNone: return [FSNamedNumber namedNumberWithDouble:gradientType name:@"NSGradientNone"]; - case NSGradientConcaveWeak: return [FSNamedNumber namedNumberWithDouble:gradientType name:@"NSGradientConcaveWeak"]; - case NSGradientConcaveStrong: return [FSNamedNumber namedNumberWithDouble:gradientType name:@"NSGradientConcaveStrong"]; - case NSGradientConvexWeak: return [FSNamedNumber namedNumberWithDouble:gradientType name:@"NSGradientConvexWeak"]; - case NSGradientConvexStrong: return [FSNamedNumber namedNumberWithDouble:gradientType name:@"NSGradientConvexStrong"]; - default: return [FSNumber numberWithDouble:gradientType]; - } -} +#define ADD_RECT(OBJECT, PROPERTY) \ + ADD_VALUE([NSValue valueWithRect:(NSRect)[OBJECT PROPERTY]], FS_ITEM_RECT, PROPERTY, nil, 0, nil, labelFromPropertyName(@#PROPERTY), NO) -static id objectFromGridStyleMask(NSUInteger mask) -{ - if (mask & ~(NSTableViewSolidVerticalGridLineMask | NSTableViewSolidHorizontalGridLineMask)) return [FSNumber numberWithDouble:mask]; - else if (mask == 0) return [FSNamedNumber namedNumberWithDouble:mask name:@"NSTableViewGridNone"]; - else - { - NSMutableString *str = [NSMutableString string]; - if (mask & NSTableViewSolidVerticalGridLineMask) [str appendString:@"NSTableViewSolidVerticalGridLineMask"]; - if (mask & NSTableViewSolidHorizontalGridLineMask) [str appendString:[str length] == 0 ? @"NSTableViewSolidHorizontalGridLineMask" : @" + NSTableViewSolidHorizontalGridLineMask"]; - return [FSNamedNumber namedNumberWithDouble:mask name:str]; - } +#define ADD_EDGE_INSETS(OBJECT, PROPERTY) \ +{ \ + NSEdgeInsets _insets = [OBJECT PROPERTY]; \ + NSRect _rect = NSMakeRect(_insets.top, _insets.left, _insets.bottom, _insets.right); \ + ADD_VALUE([NSValue valueWithRect:_rect], FS_ITEM_RECT, PROPERTY, nil, 0, nil, labelFromPropertyName(@#PROPERTY), NO) \ } -static id objectFromImageAlignment(NSImageAlignment imageAlignment) -{ - switch (imageAlignment) - { - case NSImageAlignCenter: return [FSNamedNumber namedNumberWithDouble:imageAlignment name:@"NSImageAlignCenter"]; - case NSImageAlignTop: return [FSNamedNumber namedNumberWithDouble:imageAlignment name:@"NSImageAlignTop"]; - case NSImageAlignTopLeft: return [FSNamedNumber namedNumberWithDouble:imageAlignment name:@"NSImageAlignTopLeft"]; - case NSImageAlignTopRight: return [FSNamedNumber namedNumberWithDouble:imageAlignment name:@"NSImageAlignTopRight"]; - case NSImageAlignLeft: return [FSNamedNumber namedNumberWithDouble:imageAlignment name:@"NSImageAlignLeft"]; - case NSImageAlignBottom: return [FSNamedNumber namedNumberWithDouble:imageAlignment name:@"NSImageAlignBottom"]; - case NSImageAlignBottomLeft: return [FSNamedNumber namedNumberWithDouble:imageAlignment name:@"NSImageAlignBottomLeft"]; - case NSImageAlignBottomRight: return [FSNamedNumber namedNumberWithDouble:imageAlignment name:@"NSImageAlignBottomRight"]; - case NSImageAlignRight: return [FSNamedNumber namedNumberWithDouble:imageAlignment name:@"NSImageAlignRight"]; - default: return [FSNumber numberWithDouble:imageAlignment]; - } -} +#define ADD_POINT(OBJECT, PROPERTY) \ + ADD_VALUE([NSValue valueWithPoint:[OBJECT PROPERTY]], FS_ITEM_POINT, PROPERTY, nil, 0, nil, labelFromPropertyName(@#PROPERTY), NO) -static id objectFromImageCacheMode(NSImageCacheMode imageCacheMode) -{ - switch (imageCacheMode) - { - case NSImageCacheDefault: return [FSNamedNumber namedNumberWithDouble:imageCacheMode name:@"NSImageCacheDefault"]; - case NSImageCacheAlways: return [FSNamedNumber namedNumberWithDouble:imageCacheMode name:@"NSImageCacheAlways"]; - case NSImageCacheBySize: return [FSNamedNumber namedNumberWithDouble:imageCacheMode name:@"NSImageCacheBySize"]; - case NSImageCacheNever: return [FSNamedNumber namedNumberWithDouble:imageCacheMode name:@"NSImageCacheNever"]; - default: return [FSNumber numberWithDouble:imageCacheMode]; - } -} -static id objectFromImageFrameStyle(NSImageFrameStyle imageFrameStyle) -{ - switch (imageFrameStyle) - { - case NSImageFrameNone: return [FSNamedNumber namedNumberWithDouble:imageFrameStyle name:@"NSImageFrameNone"]; - case NSImageFramePhoto: return [FSNamedNumber namedNumberWithDouble:imageFrameStyle name:@"NSImageFramePhoto"]; - case NSImageFrameGrayBezel: return [FSNamedNumber namedNumberWithDouble:imageFrameStyle name:@"NSImageFrameGrayBezel"]; - case NSImageFrameGroove: return [FSNamedNumber namedNumberWithDouble:imageFrameStyle name:@"NSImageFrameGroove"]; - case NSImageFrameButton: return [FSNamedNumber namedNumberWithDouble:imageFrameStyle name:@"NSImageFrameButton"]; - default: return [FSNumber numberWithDouble:imageFrameStyle]; - } -} +#define ADD_RANGE(OBJECT, PROPERTY) \ + ADD_VALUE([NSValue valueWithRange:[OBJECT PROPERTY]], FS_ITEM_RANGE, PROPERTY, nil, 0, nil, labelFromPropertyName(@#PROPERTY), NO) -static id objectFromImageInterpolation(NSImageInterpolation imageInterpolation) -{ - switch (imageInterpolation) - { - case NSImageInterpolationDefault: return [FSNamedNumber namedNumberWithDouble:imageInterpolation name:@"NSImageInterpolationDefault"]; - case NSImageInterpolationNone: return [FSNamedNumber namedNumberWithDouble:imageInterpolation name:@"NSImageInterpolationNone"]; - case NSImageInterpolationLow: return [FSNamedNumber namedNumberWithDouble:imageInterpolation name:@"NSImageInterpolationLow"]; - case NSImageInterpolationHigh: return [FSNamedNumber namedNumberWithDouble:imageInterpolation name:@"NSImageInterpolationHigh"]; - default: return [FSNumber numberWithDouble:imageInterpolation]; - } -} +#define _ADD_OBJECT2(OBJECT, PROPERTY) \ + ADD_VALUE([OBJECT PROPERTY], FS_ITEM_OBJECT, PROPERTY, nil, 0, nil, labelFromPropertyName(@#PROPERTY), NO) +#define _ADD_OBJECT3(OBJECT, PROPERTY, VALUE_CLASS) \ + ADD_VALUE([OBJECT PROPERTY], FS_ITEM_OBJECT, PROPERTY, nil, 0, VALUE_CLASS, labelFromPropertyName(@#PROPERTY), NO) +#define _ADD_OBJECT4(OBJECT, PROPERTY, VALUE_CLASS, NOT_NIL) \ + ADD_VALUE([OBJECT PROPERTY], FS_ITEM_OBJECT, PROPERTY, nil, 0, VALUE_CLASS, labelFromPropertyName(@#PROPERTY), NOT_NIL) +#define ADD_OBJECT(...) \ + metamacro_if_eq(2, metamacro_argcount(__VA_ARGS__))(_ADD_OBJECT2(__VA_ARGS__))( \ + metamacro_if_eq(3, metamacro_argcount(__VA_ARGS__))(_ADD_OBJECT3(__VA_ARGS__)) ( \ + _ADD_OBJECT4(__VA_ARGS__) \ + )) -static id objectFromImageScaling(NSImageScaling imageScaling) -{ - switch (imageScaling) - { - case NSImageScaleProportionallyDown: return [FSNamedNumber namedNumberWithDouble:imageScaling name:@"NSImageScaleProportionallyDown"]; - case NSImageScaleAxesIndependently: return [FSNamedNumber namedNumberWithDouble:imageScaling name:@"NSImageScaleAxesIndependently"]; - case NSImageScaleNone: return [FSNamedNumber namedNumberWithDouble:imageScaling name:@"NSImageScaleNone"]; - case NSImageScaleProportionallyUpOrDown: return [FSNamedNumber namedNumberWithDouble:imageScaling name:@"NSImageScaleProportionallyUpOrDown"]; - default: return [FSNumber numberWithDouble:imageScaling]; - } -} -static id objectFromKeyModifierMask(NSUInteger mask) -{ - NSUInteger devideDependentMask = mask & (NSUInteger)32767; - NSUInteger devideIndependentMask = mask & ~(NSUInteger)32767; // The lower 16 bits of the modifier flags are reserved for device-dependent bits. - - if (devideIndependentMask & ~(NSAlphaShiftKeyMask | NSShiftKeyMask | NSControlKeyMask | NSAlternateKeyMask | NSCommandKeyMask | NSNumericPadKeyMask | NSHelpKeyMask | NSFunctionKeyMask)) - return [FSNumber numberWithDouble:mask]; - - NSMutableString *str = [NSMutableString string]; - - if (devideDependentMask != 0) [str appendString:[[NSNumber numberWithUnsignedLong:(unsigned long)devideDependentMask] description]]; - - if (devideIndependentMask & NSAlphaShiftKeyMask) [str appendString:[str length] == 0 ? @"NSAlphaShiftKeyMask" : @" + NSAlphaShiftKeyMask"]; - if (devideIndependentMask & NSShiftKeyMask) [str appendString:[str length] == 0 ? @"NSShiftKeyMask" : @" + NSShiftKeyMask"]; - if (devideIndependentMask & NSControlKeyMask) [str appendString:[str length] == 0 ? @"NSControlKeyMask" : @" + NSControlKeyMask"]; - if (devideIndependentMask & NSAlternateKeyMask) [str appendString:[str length] == 0 ? @"NSAlternateKeyMask" : @" + NSAlternateKeyMask"]; - if (devideIndependentMask & NSCommandKeyMask) [str appendString:[str length] == 0 ? @"NSCommandKeyMask" : @" + NSCommandKeyMask"]; - if (devideIndependentMask & NSNumericPadKeyMask) [str appendString:[str length] == 0 ? @"NSNumericPadKeyMask" : @" + NSNumericPadKeyMask"]; - if (devideIndependentMask & NSHelpKeyMask) [str appendString:[str length] == 0 ? @"NSHelpKeyMask" : @" + NSHelpKeyMask"]; - if (devideIndependentMask & NSFunctionKeyMask) [str appendString:[str length] == 0 ? @"NSFunctionKeyMask" : @" + NSFunctionKeyMask"]; - - return ([str length] == 0 ? [FSNumber numberWithDouble:mask] : [FSNamedNumber namedNumberWithDouble:mask name:str]); -} +#define ADD_OBJECT_NOT_NIL(OBJECT, PROPERTY) \ + ADD_VALUE([OBJECT PROPERTY], FS_ITEM_OBJECT, PROPERTY, nil, 0, nil, labelFromPropertyName(@#PROPERTY), YES) -static id objectFromLayoutOptions(NSUInteger mask) -{ - if (mask & ~(NSShowControlGlyphs | NSShowInvisibleGlyphs | NSWantsBidiLevels)) return [FSNumber numberWithDouble:mask]; - else - { - NSMutableString *str = [NSMutableString string]; - if (mask & NSShowControlGlyphs) [str appendString:@"NSShowControlGlyphs"]; - if (mask & NSShowInvisibleGlyphs) [str appendString:[str length] == 0 ? @"NSShowInvisibleGlyphs" : @" + NSShowInvisibleGlyphs"]; - if (mask & NSWantsBidiLevels) [str appendString:[str length] == 0 ? @"NSWantsBidiLevels" : @" + NSWantsBidiLevels"]; - - return ([str length] == 0 ? [FSNumber numberWithDouble:mask] : [FSNamedNumber namedNumberWithDouble:mask name:str]); - } -} +#define _ADD_OBJECT_RO2(OBJECT, LABEL) \ + [self addObject:(OBJECT) valueType:FS_ITEM_OBJECT getter:nil setter:nil withLabel:(LABEL) enumBiDict:nil mask:0 valueClass:nil notNil:NO]; +#define _ADD_OBJECT_RO3(OBJECT, LABEL, VALUE_CLASS) \ + [self addObject:(OBJECT) valueType:FS_ITEM_OBJECT getter:nil setter:nil withLabel:(LABEL) enumBiDict:nil mask:0 valueClass:VALUE_CLASS notNil:NO]; +#define _ADD_OBJECT_RO4(OBJECT, LABEL, VALUE_CLASS, NOT_NIL) \ + [self addObject:(OBJECT) valueType:FS_ITEM_OBJECT getter:nil setter:nil withLabel:(LABEL) enumBiDict:nil mask:0 valueClass:VALUE_CLASS notNil:NOT_NIL]; -static id objectFromLevelIndicatorStyle(NSLevelIndicatorStyle levelIndicatorStyle) -{ - switch (levelIndicatorStyle) - { - case NSRelevancyLevelIndicatorStyle: return [FSNamedNumber namedNumberWithDouble:levelIndicatorStyle name:@"NSRelevancyLevelIndicatorStyle"]; - case NSContinuousCapacityLevelIndicatorStyle: return [FSNamedNumber namedNumberWithDouble:levelIndicatorStyle name:@"NSContinuousCapacityLevelIndicatorStyle"]; - case NSDiscreteCapacityLevelIndicatorStyle: return [FSNamedNumber namedNumberWithDouble:levelIndicatorStyle name:@"NSDiscreteCapacityLevelIndicatorStyle"]; - case NSRatingLevelIndicatorStyle: return [FSNamedNumber namedNumberWithDouble:levelIndicatorStyle name:@"NSRatingLevelIndicatorStyle"]; - default: return [FSNumber numberWithDouble:levelIndicatorStyle]; - } -} +#define ADD_OBJECT_RO(...) \ + metamacro_if_eq(2, metamacro_argcount(__VA_ARGS__))(_ADD_OBJECT_RO2(__VA_ARGS__))( \ + metamacro_if_eq(3, metamacro_argcount(__VA_ARGS__))(_ADD_OBJECT_RO3(__VA_ARGS__)) ( \ + _ADD_OBJECT_RO4(__VA_ARGS__) \ + )) + +#define ADD_OBJECT_GETSET(OBJECT, GETTER, SETTER, VALUE_CLASS, LABEL, NOT_NIL) \ +{ \ + FSGetterBlock getBlock = ^id(id obj, FSObjectInspectorViewModelItem *item) GETTER; \ + FSSetterBlock setBlock = ^void(id obj, id val, FSObjectInspectorViewModelItem *item) SETTER; \ + [self addObject:getBlock(OBJECT,nil) valueType:FS_ITEM_OBJECT getter:getBlock setter:setBlock withLabel:(LABEL) enumBiDict:nil mask:0 valueClass:VALUE_CLASS notNil:NOT_NIL]; \ +} + +#define ADD_OBJECT_RO_NOT_NIL(OBJECT, LABEL) ADD_OBJECT_NOT_NIL(OBJECT, nil, nil, LABEL) \ + [self addObject:(OBJECT) valueType:FS_ITEM_OBJECT getter:nil setter:nil withLabel:(LABEL) enumBiDict:nil mask:0 valueClass:nil notNil:YES]; + + +#define ADD_COLOR(OBJECT, PROPERTY) \ + ADD_VALUE([OBJECT PROPERTY], FS_ITEM_OBJECT, PROPERTY, nil, 0, NSColor.class, labelFromPropertyName(@#PROPERTY), NO) + +#define ADD_COLOR_NOT_NIL(OBJECT, PROPERTY) \ + ADD_VALUE([OBJECT PROPERTY], FS_ITEM_OBJECT, PROPERTY, nil, 0, NSColor.class, labelFromPropertyName(@#PROPERTY), YES) + +#define ADD_STRING(OBJECT, PROPERTY) \ + ADD_VALUE([OBJECT PROPERTY], FS_ITEM_OBJECT, PROPERTY, nil, 0, NSString.class, labelFromPropertyName(@#PROPERTY), NO) + +#define ADD_STRING_NOT_NIL(OBJECT, PROPERTY) \ + ADD_VALUE([OBJECT PROPERTY], FS_ITEM_OBJECT, PROPERTY, nil, 0, NSString.class, labelFromPropertyName(@#PROPERTY), YES) + +#define ADD_BOOL(OBJECT, PROPERTY) \ + ADD_VALUE([FSBoolean booleanWithBool:[OBJECT PROPERTY]], FS_ITEM_BOOL, PROPERTY, nil, 0, nil, labelFromPropertyName(@#PROPERTY), NO); + +#define ADD_NUMBER(OBJECT, PROPERTY) \ + ADD_VALUE([FSNumber numberWithDouble:[OBJECT PROPERTY]], FS_ITEM_NUMBER, PROPERTY, nil, 0, nil, labelFromPropertyName(@#PROPERTY), NO) + +#define ADD_NUMBER_GETSET(OBJECT, GETTER, SETTER, LABEL) \ +{ \ + double (^getBlock)(id,FSObjectInspectorViewModelItem*) = ^double(id obj, FSObjectInspectorViewModelItem *item) GETTER; \ + FSGetterBlock wrappedGetBlock = ^id(id obj, FSObjectInspectorViewModelItem *item) { \ + return [FSNumber numberWithDouble:getBlock(obj,item)]; \ + }; \ + void(^setBlock)(id,double,FSObjectInspectorViewModelItem*) = ^(id obj, double val, FSObjectInspectorViewModelItem *item) SETTER; \ + FSSetterBlock wrappedSetBlock = ^(id obj, id val, FSObjectInspectorViewModelItem *item) { \ + setBlock(obj, [val doubleValue], item); \ + }; \ + [self addObject:wrappedGetBlock(OBJECT,nil) valueType:FS_ITEM_NUMBER getter:wrappedGetBlock setter:wrappedSetBlock withLabel:(LABEL) enumBiDict:nil mask:0 valueClass:nil notNil:NO]; \ +} + +#define ADD_BOOL_GETSET(OBJECT, GETTER, SETTER, LABEL) \ +{ \ + BOOL (^getBlock)(id,FSObjectInspectorViewModelItem*) = ^BOOL(id obj, FSObjectInspectorViewModelItem *item) GETTER; \ + FSGetterBlock wrappedGetBlock = ^id(id obj, FSObjectInspectorViewModelItem *item) { \ + return [FSBoolean booleanWithBool:getBlock(obj,item)]; \ + }; \ + void(^setBlock)(id,BOOL,FSObjectInspectorViewModelItem*) = ^(id obj, BOOL val, FSObjectInspectorViewModelItem *item) SETTER; \ + FSSetterBlock wrappedSetBlock = ^(id obj, id val, FSObjectInspectorViewModelItem *item) { \ + setBlock(obj, [True isEqual:val], item); \ + }; \ + [self addObject:wrappedGetBlock(OBJECT,nil) valueType:FS_ITEM_BOOL getter:wrappedGetBlock setter:wrappedSetBlock withLabel:(LABEL) enumBiDict:nil mask:0 valueClass:nil notNil:NO]; \ +} +#define ADD_DICTIONARY(OBJECTS, LABEL) \ + @try { \ + NSDictionary *objs = [OBJECTS LABEL]; \ + if (objs.count <= 20) \ + [view addDictionary:objs withLabel:labelFromPropertyName(@#LABEL)toMatrix:m classLabel:classLabel selectedClassLabel:selectedClassLabel selectedLabel:selectedLabel selectedObject:selectedObject]; \ + else \ + [self addObject:objs valueType:FS_ITEM_OBJECT withLabel:labelFromPropertyName(@#LABEL)notNil:NO]; \ + } \ + @catch (id exception) { NSLog(@"%@", exception); } + +#define ADD_OBJECTS(OBJECTS, LABEL) \ + @try { \ + NSArray *objs = [OBJECTS LABEL]; \ + if (objs.count <= 20) \ + [view addObjects:objs withLabel:labelFromPropertyName(@#LABEL) toMatrix:m classLabel:classLabel selectedClassLabel:selectedClassLabel selectedLabel:selectedLabel selectedObject:selectedObject]; \ + else \ + [self addObject:(OBJECTS) valueType:FS_ITEM_OBJECT withLabel:labelFromPropertyName(@#LABEL) notNil:NO]; \ + } \ + @catch (id exception) { NSLog(@"%@", exception); } + +#define ADD_SEL(S, LABEL) \ + @try { \ + [view addObject:[FSBlock blockWithSelector:@selector(S)] withLabel:labelFromPropertyName(@#LABEL)toMatrix:m leaf:YES classLabel:classLabel selectedClassLabel:selectedClassLabel selectedLabel:selectedLabel selectedObject:selectedObject indentationLevel:0]; \ + } \ + @catch (id exception) { NSLog(@"%@", exception); } + +#define ADD_SEL_NOT_NULL(S, LABEL) \ + @try { \ + { \ + SEL selector = (S); \ + if (selector != (SEL)0) \ + [view addObject:[FSBlock blockWithSelector:selector] withLabel:(LABEL)toMatrix:m leaf:YES classLabel:classLabel selectedClassLabel:selectedClassLabel selectedLabel:selectedLabel selectedObject:selectedObject indentationLevel:0]; \ + } \ + } \ + @catch (id exception) { NSLog(@"%@", exception); } + +#define ADD_POINTER(POINTER, LABEL) \ + @try { \ + if (POINTER == NULL) { \ + ADD_OBJECT_RO(nil, LABEL) \ + } \ + else { \ + [view addObject:[[[FSGenericPointer alloc] initWithCPointer:(POINTER)freeWhenDone:NO type:@encode(void)] autorelease] withLabel:(LABEL)toMatrix:m classLabel:classLabel selectedClassLabel:selectedClassLabel selectedLabel:selectedLabel selectedObject:selectedObject]; \ + } \ + } \ + @catch (id exception) { NSLog(@"%@", exception); } + +#define ADD_CLASS_LABEL(LABEL) \ + { \ + [self addClassLabel:(LABEL)toMatrix:m]; \ + } -static id objectFromLineBreakMode(NSLineBreakMode lineBreakMode) -{ - switch (lineBreakMode) - { - case NSLineBreakByWordWrapping: return [FSNamedNumber namedNumberWithDouble:lineBreakMode name:@"NSLineBreakByWordWrapping"]; - case NSLineBreakByCharWrapping: return [FSNamedNumber namedNumberWithDouble:lineBreakMode name:@"NSLineBreakByCharWrapping"]; - case NSLineBreakByClipping: return [FSNamedNumber namedNumberWithDouble:lineBreakMode name:@"NSLineBreakByClipping"]; - case NSLineBreakByTruncatingHead: return [FSNamedNumber namedNumberWithDouble:lineBreakMode name:@"NSLineBreakByTruncatingHead"]; - case NSLineBreakByTruncatingTail: return [FSNamedNumber namedNumberWithDouble:lineBreakMode name:@"NSLineBreakByTruncatingTail"]; - case NSLineBreakByTruncatingMiddle: return [FSNamedNumber namedNumberWithDouble:lineBreakMode name:@"NSLineBreakByTruncatingMiddle"]; - default: return [FSNumber numberWithDouble:lineBreakMode]; - } -} -static id objectFromLineCapStyle(NSLineCapStyle lineCapStyle) -{ - switch (lineCapStyle) - { - case NSButtLineCapStyle: return [FSNamedNumber namedNumberWithDouble:lineCapStyle name:@"NSButtLineCapStyle"]; - case NSRoundLineCapStyle: return [FSNamedNumber namedNumberWithDouble:lineCapStyle name:@"NSRoundLineCapStyle"]; - case NSSquareLineCapStyle: return [FSNamedNumber namedNumberWithDouble:lineCapStyle name:@"NSSquareLineCapStyle"]; - default: return [FSNumber numberWithDouble:lineCapStyle]; - } -} +#define ADD_SIZE2(SIZE, PROPERTY, LABEL) \ + ADD_VALUE([NSValue valueWithSize:(SIZE)], FS_ITEM_SIZE, PROPERTY, nil, nil, 0, LABEL, NO) +#define ADD_RECT2(RECT,PROPERTY, LABEL) \ + ADD_VALUE([NSValue valueWithRect:(RECT)], FS_ITEM_RECT, PROPERTY, nil, nil, 0, LABEL, NO) +#define ADD_POINT2(POINT,PROPERTY, LABEL) \ + ADD_VALUE([NSValue valueWithPoint:(POINT)], FS_ITEM_POINT, PROPERTY, nil, nil, 0, LABEL, NO) +#define ADD_RANGE2(RANGE, PROPERTY,LABEL) \ + ADD_VALUE([NSValue valueWithRange:(RANGE)], FS_ITEM_RANGE, PROPERTY, nil, nil, 0, LABEL, NO) +#define ADD_OBJECT2(OBJECT, PROPERTY, LABEL) \ + ADD_VALUE((OBJECT), FS_ITEM_OBJECT, PROPERTY, nil, nil, 0, LABEL, NO) +#define ADD_COLOR2(OBJECT, PROPERTY, LABEL) \ + ADD_VALUE(OBJECT, FS_ITEM_OBJECT, PROPERTY, nil, 0, NSColor.class, LABEL, NO) +#define ADD_NUMBER2(NUMBER, PROPERTY, LABEL) \ + ADD_VALUE([FSNumber numberWithDouble:(NUMBER)], FS_ITEM_NUMBER, PROPERTY, nil, 0, nil, LABEL, NO); -static id objectFromLineJoinStyle(NSLineJoinStyle lineJoinStyle) +- (void)fillMatrix:(NSMatrix*)theMatrix withObject:(id)object { - switch (lineJoinStyle) - { - case NSMiterLineJoinStyle: return [FSNamedNumber namedNumberWithDouble:lineJoinStyle name:@"NSMiterLineJoinStyle"]; - case NSRoundLineJoinStyle: return [FSNamedNumber namedNumberWithDouble:lineJoinStyle name:@"NSRoundLineJoinStyle"]; - case NSBevelLineJoinStyle: return [FSNamedNumber namedNumberWithDouble:lineJoinStyle name:@"NSBevelLineJoinStyle"]; - default: return [FSNumber numberWithDouble:lineJoinStyle]; - } -} + [object retain]; // (1) To be sure object will not be deallocated as a side effect of the removing of rows -static id objectFromMatrixMode(NSMatrixMode matrixMode) -{ - switch (matrixMode) - { - case NSRadioModeMatrix: return [FSNamedNumber namedNumberWithDouble:matrixMode name:@"NSRadioModeMatrix"]; - case NSHighlightModeMatrix: return [FSNamedNumber namedNumberWithDouble:matrixMode name:@"NSHighlightModeMatrix"]; - case NSListModeMatrix: return [FSNamedNumber namedNumberWithDouble:matrixMode name:@"NSListModeMatrix"]; - case NSTrackModeMatrix : return [FSNamedNumber namedNumberWithDouble:matrixMode name:@"NSTrackModeMatrix"]; - default: return [FSNumber numberWithDouble:matrixMode]; - } -} + m = theMatrix; + selectedCell = [[[m selectedCell] retain] autorelease]; // retain and autorelease in order to avoid premature deallocation as a side effect of the removing of rows + selectedClassLabel = [[[selectedCell classLabel] copy] autorelease]; // copy and autorelease in order to avoid premature invalidation as a side effect of the removing of rows + selectedLabel = [[[selectedCell label] copy] autorelease]; // copy and autorelease in order to avoid premature invalidation as a side effect of the removing of rows + selectedObject = [selectedCell representedObject]; + classLabel = @""; -static id objectFromMergePolicy(id mergePolicy) -{ - NSString *name = nil; - - if (mergePolicy == NSErrorMergePolicy) name = @"NSErrorMergePolicy"; - else if (mergePolicy == NSMergeByPropertyStoreTrumpMergePolicy) name = @"NSMergeByPropertyStoreTrumpMergePolicy"; - else if (mergePolicy == NSMergeByPropertyObjectTrumpMergePolicy) name = @"NSMergeByPropertyObjectTrumpMergePolicy"; - else if (mergePolicy == NSOverwriteMergePolicy) name = @"NSOverwriteMergePolicy"; - else if (mergePolicy == NSRollbackMergePolicy) name = @"NSRollbackMergePolicy"; - - if (name) return [FSObjectBrowserNamedObjectWrapper namedObjectWrapperWithObject:mergePolicy name:name]; - else return mergePolicy; -} - -static id objectFromNestingMode(NSRuleEditorNestingMode ruleEditorNestingMode) -{ - switch (ruleEditorNestingMode) - { - case NSRuleEditorNestingModeSingle: return [FSNamedNumber namedNumberWithDouble:ruleEditorNestingMode name:@"NSRuleEditorNestingModeSingle"]; - case NSRuleEditorNestingModeList: return [FSNamedNumber namedNumberWithDouble:ruleEditorNestingMode name:@"NSRuleEditorNestingModeList"]; - case NSRuleEditorNestingModeCompound: return [FSNamedNumber namedNumberWithDouble:ruleEditorNestingMode name:@"NSRuleEditorNestingModeCompound"]; - case NSRuleEditorNestingModeSimple: return [FSNamedNumber namedNumberWithDouble:ruleEditorNestingMode name:@"NSRuleEditorNestingModeSimple"]; - default: return [FSNumber numberWithDouble:ruleEditorNestingMode]; - } -} + [m renewRows:0 columns:1]; -static id objectFromPathStyle(NSPathStyle pathStyle) -{ - switch (pathStyle) - { - case NSPathStyleStandard: return [FSNamedNumber namedNumberWithDouble:pathStyle name:@"NSPathStyleStandard"]; - case NSPathStyleNavigationBar: return [FSNamedNumber namedNumberWithDouble:pathStyle name:@"NSPathStyleNavigationBar"]; - case NSPathStylePopUp: return [FSNamedNumber namedNumberWithDouble:pathStyle name:@"NSPathStylePopUp"]; - default: return [FSNumber numberWithDouble:pathStyle]; - } -} + [view addObject:object toMatrix:m label:@"" classLabel:@"" indentationLevel:0 leaf:YES]; + [object release]; // It's now safe to match the retain in instruction (1) -static id objectFromPointingDeviceType(NSPointingDeviceType pointingDeviceType) -{ - switch (pointingDeviceType) - { - case NSUnknownPointingDevice: return [FSNamedNumber namedNumberWithDouble:pointingDeviceType name:@"NSUnknownPointingDevice"]; - case NSPenPointingDevice: return [FSNamedNumber namedNumberWithDouble:pointingDeviceType name:@"NSPenPointingDevice"]; - case NSCursorPointingDevice: return [FSNamedNumber namedNumberWithDouble:pointingDeviceType name:@"NSCursorPointingDevice"]; - case NSEraserPointingDevice: return [FSNamedNumber namedNumberWithDouble:pointingDeviceType name:@"NSEraserPointingDevice"]; - default: return [FSNumber numberWithDouble:pointingDeviceType]; - } -} + if (selectedObject == object && [selectedClassLabel isEqualToString:@""] && [selectedLabel isEqualToString:@""]) + [m selectCellAtRow:[m numberOfRows] - 1 column:0]; -static id objectFromPredicateOperatorType(NSPredicateOperatorType predicateOperatorType) -{ - switch (predicateOperatorType) - { - case NSLessThanPredicateOperatorType: return [FSNamedNumber namedNumberWithDouble:predicateOperatorType name:@"NSLessThanPredicateOperatorType"]; - case NSLessThanOrEqualToPredicateOperatorType: return [FSNamedNumber namedNumberWithDouble:predicateOperatorType name:@"NSLessThanOrEqualToPredicateOperatorType"]; - case NSGreaterThanPredicateOperatorType: return [FSNamedNumber namedNumberWithDouble:predicateOperatorType name:@"NSGreaterThanPredicateOperatorType"]; - case NSGreaterThanOrEqualToPredicateOperatorType: return [FSNamedNumber namedNumberWithDouble:predicateOperatorType name:@"NSGreaterThanOrEqualToPredicateOperatorType"]; - case NSEqualToPredicateOperatorType: return [FSNamedNumber namedNumberWithDouble:predicateOperatorType name:@"NSEqualToPredicateOperatorType"]; - case NSNotEqualToPredicateOperatorType: return [FSNamedNumber namedNumberWithDouble:predicateOperatorType name:@"NSNotEqualToPredicateOperatorType"]; - case NSMatchesPredicateOperatorType: return [FSNamedNumber namedNumberWithDouble:predicateOperatorType name:@"NSMatchesPredicateOperatorType"]; - case NSLikePredicateOperatorType : return [FSNamedNumber namedNumberWithDouble:predicateOperatorType name:@"NSLikePredicateOperatorType"]; - case NSBeginsWithPredicateOperatorType: return [FSNamedNumber namedNumberWithDouble:predicateOperatorType name:@"NSBeginsWithPredicateOperatorType"]; - case NSEndsWithPredicateOperatorType: return [FSNamedNumber namedNumberWithDouble:predicateOperatorType name:@"NSEndsWithPredicateOperatorType"]; - case NSInPredicateOperatorType: return [FSNamedNumber namedNumberWithDouble:predicateOperatorType name:@"NSInPredicateOperatorType"]; - case NSCustomSelectorPredicateOperatorType: return [FSNamedNumber namedNumberWithDouble:predicateOperatorType name:@"NSCustomSelectorPredicateOperatorType"]; - case NSContainsPredicateOperatorType: return [FSNamedNumber namedNumberWithDouble:predicateOperatorType name:@"NSContainsPredicateOperatorType"]; - case NSBetweenPredicateOperatorType: return [FSNamedNumber namedNumberWithDouble:predicateOperatorType name:@"NSBetweenPredicateOperatorType"]; - default: return [FSNumber numberWithDouble:predicateOperatorType]; - } -} - -static id objectFromProgressIndicatorStyle(NSProgressIndicatorStyle progressIndicatorStyle) -{ - switch (progressIndicatorStyle) - { - case NSProgressIndicatorBarStyle: return [FSNamedNumber namedNumberWithDouble:progressIndicatorStyle name:@"NSProgressIndicatorBarStyle"]; - case NSProgressIndicatorSpinningStyle: return [FSNamedNumber namedNumberWithDouble:progressIndicatorStyle name:@"NSProgressIndicatorSpinningStyle"]; - default: return [FSNumber numberWithDouble:progressIndicatorStyle]; - } -} - -static id objectFromPopUpArrowPosition(NSPopUpArrowPosition popUpArrowPosition) -{ - switch (popUpArrowPosition) - { - case NSPopUpNoArrow: return [FSNamedNumber namedNumberWithDouble:popUpArrowPosition name:@"NSPopUpNoArrow"]; - case NSPopUpArrowAtCenter: return [FSNamedNumber namedNumberWithDouble:popUpArrowPosition name:@"NSPopUpArrowAtCenter"]; - case NSPopUpArrowAtBottom: return [FSNamedNumber namedNumberWithDouble:popUpArrowPosition name:@"NSPopUpArrowAtBottom"]; - default: return [FSNumber numberWithDouble:popUpArrowPosition]; - } -} - -static id objectFromRectEdge(NSRectEdge rectEdge) -{ - switch (rectEdge) - { - case NSMinXEdge: return [FSNamedNumber namedNumberWithDouble:rectEdge name:@"NSMinXEdge"]; - case NSMinYEdge: return [FSNamedNumber namedNumberWithDouble:rectEdge name:@"NSMinYEdge"]; - case NSMaxXEdge: return [FSNamedNumber namedNumberWithDouble:rectEdge name:@"NSMaxXEdge"]; - case NSMaxYEdge: return [FSNamedNumber namedNumberWithDouble:rectEdge name:@"NSMaxYEdge"]; - default: return [FSNumber numberWithDouble:rectEdge]; - } -} - -static id objectFromRulerOrientation(NSRulerOrientation rulerOrientation) -{ - switch (rulerOrientation) - { - case NSHorizontalRuler: return [FSNamedNumber namedNumberWithDouble:rulerOrientation name:@"NSHorizontalRuler"]; - case NSVerticalRuler: return [FSNamedNumber namedNumberWithDouble:rulerOrientation name:@"NSVerticalRuler"]; - default: return [FSNumber numberWithDouble:rulerOrientation]; - } -} + if (object != nil && object == [object class]) // object is a class + { + NSMutableArray* classNames = [NSMutableArray array]; + NSUInteger count, i; + Class* classes = allClasses(&count); -static id objectFromScrollArrowPosition(NSScrollArrowPosition scrollArrowPosition) -{ - switch (scrollArrowPosition) - { - case NSScrollerArrowsDefaultSetting: return [FSNamedNumber namedNumberWithDouble:scrollArrowPosition name:@"NSScrollerArrowsDefaultSetting"]; - case NSScrollerArrowsNone: return [FSNamedNumber namedNumberWithDouble:scrollArrowPosition name:@"NSScrollerArrowsNone"]; - default: return [FSNumber numberWithDouble:scrollArrowPosition]; - } -} + @try { + for (i = 0; i < count; i++) { +#ifdef __LP64__ + if (class_getSuperclass(classes[i]) == object) + [classNames addObject:NSStringFromClass(classes[i])]; +#else + if (classes[i]->super_class == object) + [classNames addObject:NSStringFromClass(classes[i])]; +#endif + } + } + @finally + { + free(classes); + } + [classNames sortUsingFunction:FSCompareClassNamesForAlphabeticalOrder context:NULL]; -static id objectFromScrollerPart(NSScrollerPart scrollerPart) -{ - switch (scrollerPart) - { - case NSScrollerNoPart: return [FSNamedNumber namedNumberWithDouble:scrollerPart name:@"NSScrollerNoPart"]; - case NSScrollerDecrementPage: return [FSNamedNumber namedNumberWithDouble:scrollerPart name:@"NSScrollerDecrementPage"]; - case NSScrollerKnob: return [FSNamedNumber namedNumberWithDouble:scrollerPart name:@"NSScrollerKnob"]; - case NSScrollerIncrementPage: return [FSNamedNumber namedNumberWithDouble:scrollerPart name:@"NSScrollerIncrementPage"]; - case NSScrollerDecrementLine: return [FSNamedNumber namedNumberWithDouble:scrollerPart name:@"NSScrollerDecrementLine"]; - case NSScrollerIncrementLine: return [FSNamedNumber namedNumberWithDouble:scrollerPart name:@"NSScrollerIncrementLine"]; - case NSScrollerKnobSlot: return [FSNamedNumber namedNumberWithDouble:scrollerPart name:@"NSScrollerKnobSlot"]; - default: return [FSNumber numberWithDouble:scrollerPart]; - } -} + [view addBlankRowToMatrix:m]; -static id objectFromSegmentSwitchTracking(NSSegmentSwitchTracking segmentSwitchTracking) -{ - switch (segmentSwitchTracking) - { - case NSSegmentSwitchTrackingSelectOne: return [FSNamedNumber namedNumberWithDouble:segmentSwitchTracking name:@"NSSegmentSwitchTrackingSelectOne"]; - case NSSegmentSwitchTrackingSelectAny: return [FSNamedNumber namedNumberWithDouble:segmentSwitchTracking name:@"NSSegmentSwitchTrackingSelectAny"]; - case NSSegmentSwitchTrackingMomentary: return [FSNamedNumber namedNumberWithDouble:segmentSwitchTracking name:@"NSSegmentSwitchTrackingMomentary"]; - default: return [FSNumber numberWithDouble:segmentSwitchTracking]; - } -} +#ifdef __LP64__ + if (class_getSuperclass(object) == nil) + [view addLabelAlone:@"This class is a root class" toMatrix:m]; + else + [view addObject:class_getSuperclass((Class)object) withLabel:@"Superclass" toMatrix:m classLabel:@"" selectedClassLabel:selectedClassLabel selectedLabel:selectedLabel selectedObject:selectedObject]; +#else + if (((Class)object)->super_class == nil) + [view addLabelAlone:@"This class is a root class" toMatrix:m]; + else + [view addObject:((Class)object)->super_class withLabel:@"Superclass" toMatrix:m classLabel:@"" selectedClassLabel:selectedClassLabel selectedLabel:selectedLabel selectedObject:selectedObject]; +#endif -static id objectFromSelectionAffinity(NSSelectionAffinity selectionAffinity) -{ - switch (selectionAffinity) - { - case NSSelectionAffinityUpstream: return [FSNamedNumber namedNumberWithDouble:selectionAffinity name:@"NSSelectionAffinityUpstream"]; - case NSSelectionAffinityDownstream: return [FSNamedNumber namedNumberWithDouble:selectionAffinity name:@"NSSelectionAffinityDownstream"]; - default: return [FSNumber numberWithDouble:selectionAffinity]; - } -} + if ([classNames count] == 0) + [view addLabelAlone:@"No subclasses" toMatrix:m]; + [view addClassesWithNames:classNames withLabel:@"Direct subclasses" toMatrix:m classLabel:@"" selectedClassLabel:selectedClassLabel selectedLabel:selectedLabel selectedObject:selectedObject]; + } + else if ([object isKindOfClass:[NSManagedObject class]]) { + NSManagedObject* o = object; + classLabel = @"NSManagedObject Properties"; + NSArray* attributeKeys = [[[[o entity] attributesByName] allKeys] sortedArrayUsingSelector:@selector(compare:)]; + [view addPropertyLabel:@"Attributes" toMatrix:m]; + for (NSUInteger i = 0, count = [attributeKeys count]; i < count; i++) { + NSString* key = [attributeKeys objectAtIndex:i]; + ADD_OBJECT2([o valueForKey:key], key, key) + } + + NSArray* relationshipKeys = [[[[o entity] relationshipsByName] allKeys] sortedArrayUsingSelector:@selector(compare:)]; + [view addPropertyLabel:@"Relationships" toMatrix:m]; + for (NSUInteger i = 0, count = [relationshipKeys count]; i < count; i++) { + NSString* key = [relationshipKeys objectAtIndex:i]; + ADD_OBJECT2([o valueForKey:key], key, key) + } + + ADD_CLASS_LABEL(@"NSManagedObject Info"); + ADD_OBJECT(o, entity) + ADD_BOOL(o, isDeleted) + ADD_BOOL(o, isInserted) + ADD_BOOL(o, isUpdated) + ADD_OBJECT(o, managedObjectContext) + ADD_OBJECT(o, objectID) + } + else if (([object isKindOfClass:[NSArray class]] || [object isKindOfClass:[NSDictionary class]] || [object isKindOfClass:[NSSet class]]) + && [object count] < 500) // We display the elements only if there is less than a certain number of them + { + [view addBlankRowToMatrix:m]; + if ([object isKindOfClass:[NSArray class]]) { + NSArray* o = object; + if ([o count] == 0) + [view addLabelAlone:@"This array is empty" toMatrix:m]; + [view addObjects:o withLabel:@"Elements" toMatrix:m classLabel:@"" selectedClassLabel:selectedClassLabel selectedLabel:selectedLabel selectedObject:selectedObject]; + } + else if ([object isKindOfClass:[NSDictionary class]]) { + NSDictionary* o = object; + if ([o count] == 0) + [view addLabelAlone:@"This dictionary is empty" toMatrix:m]; + [view addDictionary:o withLabel:@"Entries" toMatrix:m classLabel:@"" selectedClassLabel:selectedClassLabel selectedLabel:selectedLabel selectedObject:selectedObject]; + } + else if ([object isKindOfClass:[NSSet class]]) { + NSSet* o = object; + if ([o count] == 0) + [view addLabelAlone:@"This set is empty" toMatrix:m]; + [view addObjects:[object allObjects] withLabel:@"Elements" toMatrix:m classLabel:@"" selectedClassLabel:selectedClassLabel selectedLabel:selectedLabel selectedObject:selectedObject]; + } + } + else if ([object isKindOfClass:[FSAssociation class]]) { + FSAssociation* o = object; + [view addBlankRowToMatrix:m]; + [view addObject:[o key] withLabel:@"Key" toMatrix:m classLabel:@"" selectedClassLabel:selectedClassLabel selectedLabel:selectedLabel selectedObject:selectedObject]; + [view addObject:[o value] withLabel:@"Value" toMatrix:m classLabel:@"" selectedClassLabel:selectedClassLabel selectedLabel:selectedLabel selectedObject:selectedObject]; + } + else if ([object isKindOfClass:[NSView class]]) { + NSView* o = object; + [view addBlankRowToMatrix:m]; -static id objectFromSelectionDirection(NSSelectionDirection selectionDirection) -{ - switch (selectionDirection) - { - case NSDirectSelection: return [FSNamedNumber namedNumberWithDouble:selectionDirection name:@"NSDirectSelection"]; - case NSSelectingNext: return [FSNamedNumber namedNumberWithDouble:selectionDirection name:@"NSSelectingNext"]; - case NSSelectingPrevious: return [FSNamedNumber namedNumberWithDouble:selectionDirection name:@"NSSelectingPrevious"]; - default: return [FSNumber numberWithDouble:selectionDirection]; - } -} + [view addObject:[o superview] withLabel:@"Superview" toMatrix:m classLabel:@"" selectedClassLabel:selectedClassLabel selectedLabel:selectedLabel selectedObject:selectedObject]; -static id objectFromSelectionGranularity(NSSelectionGranularity selectionGranularity) -{ - switch (selectionGranularity) - { - case NSSelectByCharacter: return [FSNamedNumber namedNumberWithDouble:selectionGranularity name:@"NSSelectByCharacter"]; - case NSSelectByWord: return [FSNamedNumber namedNumberWithDouble:selectionGranularity name:@"NSSelectByWord"]; - case NSSelectByParagraph: return [FSNamedNumber namedNumberWithDouble:selectionGranularity name:@"NSSelectByParagraph"]; - default: return [FSNumber numberWithDouble:selectionGranularity]; - } -} + if ([[o subviews] count] == 0) + [view addLabelAlone:@"No subviews" toMatrix:m]; + else + [view addObjects:[o subviews] withLabel:@"Subviews" toMatrix:m classLabel:@"" selectedClassLabel:selectedClassLabel selectedLabel:selectedLabel selectedObject:selectedObject]; + } + else if ([object isKindOfClass:[FSCNBase class]]) { + [view addBlankRowToMatrix:m]; + + if ([object isKindOfClass:[FSCNArray class]]) { + FSCNArray* o = object; + if (o->count == 0) + [view addLabelAlone:@"An empty array" toMatrix:m]; + else + [view addObjects:[NSArray arrayWithObjects:o->elements count:o->count] withLabel:@"Elements" toMatrix:m classLabel:@"" selectedClassLabel:selectedClassLabel selectedLabel:selectedLabel selectedObject:selectedObject]; + } + else if ([object isKindOfClass:[FSCNAssignment class]]) { + FSCNAssignment* o = object; + [view addObject:o->left withLabel:@"lvalue" toMatrix:m classLabel:@"" selectedClassLabel:selectedClassLabel selectedLabel:selectedLabel selectedObject:selectedObject]; + [view addObject:o->right withLabel:@"rvalue" toMatrix:m classLabel:@"" selectedClassLabel:selectedClassLabel selectedLabel:selectedLabel selectedObject:selectedObject]; + } + else if ([object isKindOfClass:[FSCNBlock class]]) { + FSCNBlock* o = object; + [view addObject:[o->blockRep ast] withLabel:@"Abstract syntax tree" toMatrix:m classLabel:@"" selectedClassLabel:selectedClassLabel selectedLabel:selectedLabel selectedObject:selectedObject]; + } + else if ([object isKindOfClass:[FSCNCascade class]]) { + FSCNCascade* o = object; + [view addObject:o->receiver withLabel:@"Receiver" toMatrix:m classLabel:@"" selectedClassLabel:selectedClassLabel selectedLabel:selectedLabel selectedObject:selectedObject]; + [view addObjects:[NSArray arrayWithObjects:o->messages count:o->messageCount] withLabel:@"Message sends" toMatrix:m classLabel:@"" selectedClassLabel:selectedClassLabel selectedLabel:selectedLabel selectedObject:selectedObject]; + } + else if ([object isKindOfClass:[FSCNCategory class]]) { + FSCNCategory* o = object; + [view addObject:o->className withLabel:@"Class name" toMatrix:m classLabel:@"" selectedClassLabel:selectedClassLabel selectedLabel:selectedLabel selectedObject:selectedObject]; + [view addObjects:o->methods withLabel:@"Methods" toMatrix:m classLabel:@"" selectedClassLabel:selectedClassLabel selectedLabel:selectedLabel selectedObject:selectedObject]; + } + else if ([object isKindOfClass:[FSCNClassDefinition class]]) { + FSCNClassDefinition* o = object; + [view addObject:o->className withLabel:@"Class name" toMatrix:m classLabel:@"" selectedClassLabel:selectedClassLabel selectedLabel:selectedLabel selectedObject:selectedObject]; + [view addObject:o->superclassName withLabel:@"Superclass name" toMatrix:m classLabel:@"" selectedClassLabel:selectedClassLabel selectedLabel:selectedLabel selectedObject:selectedObject]; + [view addObjects:o->civarNames withLabel:@"Class instance variables names" toMatrix:m classLabel:@"" selectedClassLabel:selectedClassLabel selectedLabel:selectedLabel selectedObject:selectedObject]; + [view addObjects:o->ivarNames withLabel:@"Instance variables names" toMatrix:m classLabel:@"" selectedClassLabel:selectedClassLabel selectedLabel:selectedLabel selectedObject:selectedObject]; + [view addObjects:o->methods withLabel:@"Methods" toMatrix:m classLabel:@"" selectedClassLabel:selectedClassLabel selectedLabel:selectedLabel selectedObject:selectedObject]; + } + else if ([object isKindOfClass:[FSCNDictionary class]]) { + FSCNDictionary* o = object; + if (o->count == 0) + [view addLabelAlone:@"An empty dictionary" toMatrix:m]; + else + [view addObjects:[NSArray arrayWithObjects:o->entries count:o->count] withLabel:@"Entries" toMatrix:m classLabel:@"" selectedClassLabel:selectedClassLabel selectedLabel:selectedLabel selectedObject:selectedObject]; + } + else if ([object isKindOfClass:[FSCNMethod class]]) { + FSCNMethod* o = object; + [view addObject:o->method->code withLabel:@"Abstract syntax tree" toMatrix:m classLabel:@"" selectedClassLabel:selectedClassLabel selectedLabel:selectedLabel selectedObject:selectedObject]; + } + else if ([object isKindOfClass:[FSCNMessage class]]) { + FSCNMessage* o = object; + [view addObject:o->receiver withLabel:@"Receiver" toMatrix:m classLabel:@"" selectedClassLabel:selectedClassLabel selectedLabel:selectedLabel selectedObject:selectedObject]; + + if ([object isKindOfClass:[FSCNBinaryMessage class]]) { + FSCNBinaryMessage* o = object; + [view addObject:o->argument withLabel:@"Argument" toMatrix:m classLabel:@"" selectedClassLabel:selectedClassLabel selectedLabel:selectedLabel selectedObject:selectedObject]; + } + else if ([object isKindOfClass:[FSCNKeywordMessage class]]) { + FSCNKeywordMessage* o = object; + [view addObjects:[NSArray arrayWithObjects:o->arguments count:o->argumentCount] withLabel:(o->argumentCount > 1 ? @"Arguments" : @"Argument")toMatrix:m classLabel:@"" selectedClassLabel:selectedClassLabel selectedLabel:selectedLabel selectedObject:selectedObject]; + } + } + else if ([object isKindOfClass:[FSCNPrecomputedObject class]]) { + FSCNPrecomputedObject* o = object; + [view addObject:o->object withLabel:@"Precomputed object" toMatrix:m classLabel:@"" selectedClassLabel:selectedClassLabel selectedLabel:selectedLabel selectedObject:selectedObject]; + } + else if ([object isKindOfClass:[FSCNStatementList class]]) { + FSCNStatementList* o = object; + [view addObject:[NSNumber numberWithUnsignedInteger:o->statementCount] withLabel:@"Number of statements" toMatrix:m classLabel:@"" selectedClassLabel:selectedClassLabel selectedLabel:selectedLabel selectedObject:selectedObject]; + [view addObjects:[NSArray arrayWithObjects:o->statements count:o->statementCount] withLabel:@"Statements" toMatrix:m classLabel:@"" selectedClassLabel:selectedClassLabel selectedLabel:selectedLabel selectedObject:selectedObject]; + } + else if ([object isKindOfClass:[FSCNReturn class]]) { + FSCNReturn* o = object; + [view addObject:o->expression withLabel:@"Expression" toMatrix:m classLabel:@"" selectedClassLabel:selectedClassLabel selectedLabel:selectedLabel selectedObject:selectedObject]; + } + } -static id objectFromTableViewSelectionHighlightStyle(NSTableViewSelectionHighlightStyle tableViewSelectionHighlightStyle) -{ - switch (tableViewSelectionHighlightStyle) - { - case NSTableViewSelectionHighlightStyleRegular: return [FSNamedNumber namedNumberWithDouble:tableViewSelectionHighlightStyle name:@"NSTableViewSelectionHighlightStyleRegular"]; - case NSTableViewSelectionHighlightStyleSourceList: return [FSNamedNumber namedNumberWithDouble:tableViewSelectionHighlightStyle name:@"NSTableViewSelectionHighlightStyleSourceList"]; - default: return [FSNumber numberWithDouble:tableViewSelectionHighlightStyle]; - } -} + /////////////////// Objective-C 2.0 declared properties /////////////////// + if ([[NSUserDefaults standardUserDefaults] boolForKey:@"FScriptAutomaticallyIntrospectDeclaredProperties"]) { + [self introspectPropertiesOfObject:object]; + } -static id objectFromSliderType(NSSliderType sliderType) -{ - switch (sliderType) - { - case NSLinearSlider: return [FSNamedNumber namedNumberWithDouble:sliderType name:@"NSLinearSlider"]; - case NSCircularSlider: return [FSNamedNumber namedNumberWithDouble:sliderType name:@"NSCircularSlider"]; - default: return [FSNumber numberWithDouble:sliderType]; - } + /////////////////// Bindings /////////////////// + if ([object respondsToSelector:@selector(exposedBindings)] && [object respondsToSelector:@selector(infoForBinding:)]) { + NSUInteger i, count; + NSArray* exposedBindings = nil; + + // Several Cocoa objects have a buggy implementation of the exposedBindings method (e.g. NSTextView), + // which leads to an exception being thrown when the method is called on certain *class* objects. + // We work around these bugs here by preventing the buggy exception to interupt the current method. + // Note: I'm writing this in Mac OS X 10.4.6. + // Update for 10.5: the exposedBindings method now crash for certain class objects. I work around this + // bellow by not calling it at all on class objects. + @try { + if ([object class] != object) + exposedBindings = [object exposedBindings]; + } + @catch (id exeption) + { + } + + if (exposedBindings) { + for (i = 0, count = [exposedBindings count]; i < count; i++) + if ([object infoForBinding:[exposedBindings objectAtIndex:i]]) + break; + + if (i < count && count > 0) { + classLabel = @"Bindings"; + [view addClassLabel:classLabel toMatrix:m color:[NSColor colorWithCalibratedRed:0 green:0.7098 blue:1 alpha:1]]; + + for (i = 0, count = [exposedBindings count]; i < count; i++) { + [view addBindingForObject:object withName:[exposedBindings objectAtIndex:i] toMatrix:m classLabel:classLabel selectedClassLabel:selectedClassLabel selectedLabel:selectedLabel selectedObject:selectedObject]; + } + + ADD_OBJECT_RO(exposedBindings, @"Exposed Bindings"); + } + } + } + [self populateModelWithObject:object]; } -static id objectFromStatusItemLength(CGFloat statusItemLength) +-(void)_resetRootNodeWithObject:(id)object { - if (statusItemLength == NSVariableStatusItemLength) return [FSNamedNumber namedNumberWithDouble:statusItemLength name:@"NSVariableStatusItemLength"]; - else if (statusItemLength == NSSquareStatusItemLength) return [FSNamedNumber namedNumberWithDouble:statusItemLength name:@"NSSquareStatusItemLength"]; - else return [FSNumber numberWithDouble:statusItemLength]; + self.rootViewModelItem = [FSObjectInspectorViewModelItem treeNodeWithRepresentedObject:object]; + self.currentViewModelItem = self.rootViewModelItem; + self.rootViewModelItem.value = object; } -static id objectFromStringEncoding(NSStringEncoding stringEncoding) +- (void)populateModelWithObject:(id)object { - switch (stringEncoding) - { - case NSASCIIStringEncoding: return [FSNamedNumber namedNumberWithDouble:stringEncoding name:@"NSASCIIStringEncoding"]; - case NSNEXTSTEPStringEncoding: return [FSNamedNumber namedNumberWithDouble:stringEncoding name:@"NSNEXTSTEPStringEncoding"]; - case NSJapaneseEUCStringEncoding: return [FSNamedNumber namedNumberWithDouble:stringEncoding name:@"NSJapaneseEUCStringEncoding"]; - case NSUTF8StringEncoding: return [FSNamedNumber namedNumberWithDouble:stringEncoding name:@"NSUTF8StringEncoding"]; - case NSISOLatin1StringEncoding: return [FSNamedNumber namedNumberWithDouble:stringEncoding name:@"NSISOLatin1StringEncoding"]; - case NSSymbolStringEncoding: return [FSNamedNumber namedNumberWithDouble:stringEncoding name:@"NSSymbolStringEncoding"]; - case NSNonLossyASCIIStringEncoding: return [FSNamedNumber namedNumberWithDouble:stringEncoding name:@"NSNonLossyASCIIStringEncoding"]; - case NSShiftJISStringEncoding: return [FSNamedNumber namedNumberWithDouble:stringEncoding name:@"NSShiftJISStringEncoding"]; - case NSISOLatin2StringEncoding: return [FSNamedNumber namedNumberWithDouble:stringEncoding name:@"NSISOLatin2StringEncoding"]; - case NSUnicodeStringEncoding: return [FSNamedNumber namedNumberWithDouble:stringEncoding name:@"NSUnicodeStringEncoding"]; - case NSWindowsCP1251StringEncoding: return [FSNamedNumber namedNumberWithDouble:stringEncoding name:@"NSWindowsCP1251StringEncoding"]; - case NSWindowsCP1252StringEncoding: return [FSNamedNumber namedNumberWithDouble:stringEncoding name:@"NSWindowsCP1252StringEncoding"]; - case NSWindowsCP1253StringEncoding: return [FSNamedNumber namedNumberWithDouble:stringEncoding name:@"NSWindowsCP1253StringEncoding"]; - case NSWindowsCP1254StringEncoding: return [FSNamedNumber namedNumberWithDouble:stringEncoding name:@"NSWindowsCP1254StringEncoding"]; - case NSWindowsCP1250StringEncoding: return [FSNamedNumber namedNumberWithDouble:stringEncoding name:@"NSWindowsCP1250StringEncoding"]; - case NSISO2022JPStringEncoding: return [FSNamedNumber namedNumberWithDouble:stringEncoding name:@"NSISO2022JPStringEncoding"]; - case NSMacOSRomanStringEncoding: return [FSNamedNumber namedNumberWithDouble:stringEncoding name:@"NSMacOSRomanStringEncoding"]; - default: return [FSNumber numberWithDouble:stringEncoding]; - } + [self _resetRootNodeWithObject:object]; + if (!view && [object isKindOfClass:NSView.class]) { + self.rootViewModelItem.valueClass = NSView.class; + [self populateModelWithAssociatedViews:object]; + } + // For each documented base class the object inherits from, populate the matrix with 'interesting' values + // declared as members of that base class + for (Class baseClass in FSObjectBrowserViewObjectHelper.baseClasses) { + if ([object isKindOfClass:baseClass]) { + NSString* method = [NSString stringWithFormat:@"add%@:", [baseClass className]]; + SEL selector = NSSelectorFromString(method); + + NSAssert([self respondsToSelector:selector], @"Missing base class method"); + + [self performSelector:selector withObject:object]; + break; + } + } } -static id objectFromTableColumnResizingMask(NSUInteger mask) +-(void)populateModelWithAssociatedViews:(id)object { - if (mask & ~(NSTableColumnAutoresizingMask | NSTableColumnUserResizingMask)) return [FSNumber numberWithDouble:mask]; - else if (mask == 0) return [FSNamedNumber namedNumberWithDouble:mask name:@"NSTableColumnNoResizing"]; - else - { - NSMutableString *str = [NSMutableString string]; - - if (mask & NSTableColumnNoResizing) [str appendString:@"NSTableColumnAutoresizingMask"]; - if (mask & NSTableColumnUserResizingMask) [str appendString:[str length] == 0 ? @"NSTableColumnUserResizingMask" : @" + NSTableColumnUserResizingMask"]; - return [FSNamedNumber namedNumberWithDouble:mask name:str]; - } -} + NSView* o = object; -static id objectFromTableViewColumnAutoresizingStyle(NSTableViewColumnAutoresizingStyle tableViewColumnAutoresizingStyle) -{ - switch (tableViewColumnAutoresizingStyle) - { - case NSTableViewNoColumnAutoresizing: return [FSNamedNumber namedNumberWithDouble:tableViewColumnAutoresizingStyle name:@"NSTableViewNoColumnAutoresizing"]; - case NSTableViewUniformColumnAutoresizingStyle: return [FSNamedNumber namedNumberWithDouble:tableViewColumnAutoresizingStyle name:@"NSTableViewUniformColumnAutoresizingStyle"]; - case NSTableViewSequentialColumnAutoresizingStyle: return [FSNamedNumber namedNumberWithDouble:tableViewColumnAutoresizingStyle name:@"NSTableViewSequentialColumnAutoresizingStyle"]; - case NSTableViewReverseSequentialColumnAutoresizingStyle: return [FSNamedNumber namedNumberWithDouble:tableViewColumnAutoresizingStyle name:@"NSTableViewReverseSequentialColumnAutoresizingStyle"]; - case NSTableViewLastColumnOnlyAutoresizingStyle: return [FSNamedNumber namedNumberWithDouble:tableViewColumnAutoresizingStyle name:@"NSTableViewLastColumnOnlyAutoresizingStyle"]; - case NSTableViewFirstColumnOnlyAutoresizingStyle: return [FSNamedNumber namedNumberWithDouble:tableViewColumnAutoresizingStyle name:@"NSTableViewFirstColumnOnlyAutoresizingStyle"]; - default: return [FSNumber numberWithDouble:tableViewColumnAutoresizingStyle]; - } + ADD_OBJECT(o, superview, NSView.class, YES); + + if (o.subviews.count) { + [self addGroup:@"Subviews"]; + NSUInteger idx = 0; + for (NSView *subview in o.subviews) { + ADD_OBJECT_RO(subview, ([NSString stringWithFormat:@"Subviews[%lu]",idx]), NSView.class) + ++idx; + } + [self endGroup]; + } } -static id objectFromTabState(NSTabState tabState) -{ - switch (tabState) - { - case NSBackgroundTab: return [FSNamedNumber namedNumberWithDouble:tabState name:@"NSBackgroundTab"]; - case NSPressedTab: return [FSNamedNumber namedNumberWithDouble:tabState name:@"NSPressedTab"]; - case NSSelectedTab: return [FSNamedNumber namedNumberWithDouble:tabState name:@"NSSelectedTab"]; - default: return [FSNumber numberWithDouble:tabState]; - } +-(void)introspectPropertiesOfObject:(id)object +{ + Class cls = [object classOrMetaclass]; + while (cls) { + unsigned int i, count; + objc_property_t* properties = class_copyPropertyList(cls, &count); + if (properties != NULL && !(cls == [NSView class])) // Second part of condition is a quick fix to avoid bloating display for the NSView class with a "one property" section (10.5.0) or spurious properties (10.6). TODO: revise this. + { + classLabel = [NSString stringWithFormat:@"%@ Properties", [cls printString]]; + [view addClassLabel:classLabel toMatrix:m color:[NSColor magentaColor]]; + + for (i = 0; i < count; i++) { + NSString* propertyName = [NSString stringWithUTF8String:property_getName(properties[i])]; + NSString* propertyEncoding = [NSString stringWithUTF8String:property_getAttributes(properties[i])]; + NSError* error = nil; + NSRegularExpression* customGetterRegexp = [NSRegularExpression regularExpressionWithPattern:@"(?:^G|,G)([^,]+)" options:0 error:&error]; + NSTextCheckingResult* customGetterMatch = [customGetterRegexp firstMatchInString:propertyEncoding options:0 range:NSMakeRange(0, propertyEncoding.length)]; + NSString* getter = propertyName; + if (customGetterMatch) { + getter = [propertyEncoding substringWithRange:[customGetterMatch rangeAtIndex:1]]; + } + + id propertyValue = nil; // initialized to nil in order to shut down a spurious warning + NSString* errorMessage = nil; + + @try { + propertyValue = [[[[@"[:object| object " stringByAppendingString:getter] stringByAppendingString:@"]"] asBlock] value:object]; + } + @catch (id exception) + { + errorMessage = [@"F-Script can't display the value of this property. " stringByAppendingString:FSErrorMessageFromException(exception)]; + [view addObject:errorMessage withLabel:propertyName toMatrix:m leaf:YES classLabel:classLabel selectedClassLabel:selectedClassLabel selectedLabel:selectedLabel selectedObject:selectedObject indentationLevel:0]; + } + if (!errorMessage) + ADD_OBJECT_RO(propertyValue, propertyName) + } + free(properties); + } + if (cls == [cls superclass]) // Defensive programming against flawed class hierarchies with infinite loops. + cls = nil; + else + cls = [cls superclass]; + } + } -static id objectFromTabViewType(NSTabViewType tabViewType) -{ - switch (tabViewType) - { - case NSTopTabsBezelBorder: return [FSNamedNumber namedNumberWithDouble:tabViewType name:@"NSTopTabsBezelBorder"]; - case NSLeftTabsBezelBorder: return [FSNamedNumber namedNumberWithDouble:tabViewType name:@"NSLeftTabsBezelBorder"]; - case NSBottomTabsBezelBorder: return [FSNamedNumber namedNumberWithDouble:tabViewType name:@"NSBottomTabsBezelBorder"]; - case NSRightTabsBezelBorder: return [FSNamedNumber namedNumberWithDouble:tabViewType name:@"NSRightTabsBezelBorder"]; - case NSNoTabsBezelBorder: return [FSNamedNumber namedNumberWithDouble:tabViewType name:@"NSNoTabsBezelBorder"]; - case NSNoTabsLineBorder: return [FSNamedNumber namedNumberWithDouble:tabViewType name:@"NSNoTabsLineBorder"]; - case NSNoTabsNoBorder: return [FSNamedNumber namedNumberWithDouble:tabViewType name:@"NSNoTabsNoBorder"]; - default: return [FSNumber numberWithDouble:tabViewType]; - } ++ (NSArray*)baseClasses +{ + static NSArray *sBaseClasses = nil; + if (!sBaseClasses) { + sBaseClasses = [[NSArray alloc] initWithObjects: + [FSGenericPointer class], + [FSObjectPointer class], + [NSAffineTransform class], + [NSAlert class], + [NSAnimation class], + [NSAnimationContext class], + [NSAttributedString class], + [NSBezierPath class], + [NSCell class], + [NSCollectionViewItem class], + [NSComparisonPredicate class], + [NSCompoundPredicate class], + [NSController class], + [NSCursor class], + [NSDockTile class], + [NSDocument class], + [NSDocumentController class], + [NSEntityDescription class], + [NSEvent class], + [NSExpression class], + [NSFetchRequest class], + [NSFileWrapper class], + [NSFont class], + [NSFontDescriptor class], + [NSFontManager class], + [NSGlyphInfo class], + [NSGlyphGenerator class], + [NSGradient class], + [NSGraphicsContext class], + [NSImage class], + [NSImageRep class], + [NSLayoutManager class], + [NSManagedObjectContext class], + [NSManagedObjectID class], + [NSManagedObjectModel class], + [NSMenu class], + [NSMenuItem class], + [NSOpenGLContext class], + [NSOpenGLPixelBuffer class], + [NSOpenGLPixelFormat class], + [NSPageLayout class], + [NSParagraphStyle class], + [NSPersistentStoreCoordinator class], + [NSPredicateEditorRowTemplate class], + [NSPropertyDescription class], + [NSResponder class], + [NSRulerMarker class], + [NSScreen class], + [NSShadow class], + [NSStatusBar class], + [NSStatusItem class], + [NSTabViewItem class], + [NSTableColumn class], + [NSTextAttachment class], + [NSTextBlock class], + [NSTextContainer class], + [NSTextList class], + [NSTextTab class], + [NSToolbar class], + [NSToolbarItem class], + [NSTrackingArea class], + [NSUndoManager class], + [NSATSTypesetter class], + nil]; + } + return sBaseClasses; } - -static id objectFromTextAlignment(NSTextAlignment alignment) +- (void)addFSGenericPointer:(id)object { - switch (alignment) - { - case NSLeftTextAlignment: return [FSNamedNumber namedNumberWithDouble:alignment name:@"NSLeftTextAlignment"]; - case NSRightTextAlignment: return [FSNamedNumber namedNumberWithDouble:alignment name:@"NSRightTextAlignment"]; - case NSCenterTextAlignment: return [FSNamedNumber namedNumberWithDouble:alignment name:@"NSCenterTextAlignment"]; - case NSJustifiedTextAlignment: return [FSNamedNumber namedNumberWithDouble:alignment name:@"NSJustifiedTextAlignment"]; - case NSNaturalTextAlignment: return [FSNamedNumber namedNumberWithDouble:alignment name:@"NSNaturalTextAlignment"]; - default: return [FSNumber numberWithDouble:alignment]; - } -} + FSGenericPointer* o = object; + NSArray* memoryContent = [o memoryContent]; -static id objectFromTextBlockValueType(NSTextBlockValueType valueType) -{ - switch (valueType) - { - case NSTextBlockAbsoluteValueType: return [FSNamedNumber namedNumberWithDouble:valueType name:@"NSTextBlockAbsoluteValueType"]; - case NSTextBlockPercentageValueType: return [FSNamedNumber namedNumberWithDouble:valueType name:@"NSTextBlockPercentageValueType"]; - default: return [FSNumber numberWithDouble:valueType]; - } + if (memoryContent) { + ADD_CLASS_LABEL(@"FSGenericPointer Info"); + ADD_OBJECT_RO(memoryContent, @"Memory content") + ADD_OBJECT_NOT_NIL(o, memoryContentUTF8) + } } -static id objectFromTextBlockVerticalAlignment(NSTextBlockVerticalAlignment verticalAlignment) +- (void)addFSObjectPointer:(id)object { - switch (verticalAlignment) - { - case NSTextBlockTopAlignment: return [FSNamedNumber namedNumberWithDouble:verticalAlignment name:@"NSTextBlockAbsoluteValueType"]; - case NSTextBlockMiddleAlignment: return [FSNamedNumber namedNumberWithDouble:verticalAlignment name:@"NSTextBlockPercentageValueType"]; - case NSTextBlockBottomAlignment: return [FSNamedNumber namedNumberWithDouble:verticalAlignment name:@"NSTextBlockAbsoluteValueType"]; - case NSTextBlockBaselineAlignment: return [FSNamedNumber namedNumberWithDouble:verticalAlignment name:@"NSTextBlockPercentageValueType"]; - default: return [FSNumber numberWithDouble:verticalAlignment]; - } -} + FSObjectPointer* o = object; + NSArray* memoryContent = [o memoryContent]; -static id objectFromTextFieldBezelStyle(NSTextFieldBezelStyle textFielBezelStyle) -{ - switch (textFielBezelStyle) - { - case NSTextFieldSquareBezel: return [FSNamedNumber namedNumberWithDouble:textFielBezelStyle name:@"NSTextFieldSquareBezel"]; - case NSTextFieldRoundedBezel: return [FSNamedNumber namedNumberWithDouble:textFielBezelStyle name:@"NSTextFieldRoundedBezel"]; - default: return [FSNumber numberWithDouble:textFielBezelStyle]; - } + if (memoryContent) { + ADD_CLASS_LABEL(@"FSObjectPointer Info"); + ADD_OBJECT_RO(memoryContent, @"Memory content") + } } -static id objectFromTextListOptionsMask(NSUInteger mask) +- (void)addNSAffineTransform:(id)object { - if (mask == 0 || (mask & ~(NSTextListPrependEnclosingMarker))) return [FSNumber numberWithDouble:mask]; - else - { - NSMutableString *str = [NSMutableString string]; - - if (mask & NSTextListPrependEnclosingMarker) [str appendString:@"NSTextListPrependEnclosingMarker"]; - return [FSNamedNumber namedNumberWithDouble:mask name:str]; - } + NSAffineTransform* o = object; + ADD_CLASS_LABEL(@"NSAffineTransform Info"); + ADD_NUMBER_GETSET(o, {NSAffineTransform *o = obj; return o.transformStruct.m11; }, { ; }, @"m11") + ADD_NUMBER_GETSET(o, {NSAffineTransform *o = obj; return o.transformStruct.m12; }, { ;}, @"m12") + ADD_NUMBER_GETSET(o, {NSAffineTransform *o = obj; return o.transformStruct.m21; }, { ;}, @"m21") + ADD_NUMBER_GETSET(o, {NSAffineTransform *o = obj; return o.transformStruct.m22; }, { ;}, @"m22") + ADD_NUMBER_GETSET(o, {NSAffineTransform *o = obj; return o.transformStruct.tX; }, { ;}, @"tX") + ADD_NUMBER_GETSET(o, {NSAffineTransform *o = obj; return o.transformStruct.tY; }, { ;}, @"tY") } -static id objectFromTextStorageEditedMask(NSUInteger mask) +- (void)addNSAlert:(id)object { - if (mask == 0 || (mask & ~(NSTextStorageEditedAttributes | NSTextStorageEditedAttributes))) return [FSNumber numberWithDouble:mask]; - else - { - NSMutableString *str = [NSMutableString string]; - - if (mask & NSTextStorageEditedAttributes) [str appendString:@"NSTextStorageEditedAttributes"]; - if (mask & NSTextStorageEditedCharacters) [str appendString:[str length] == 0 ? @"NSTextStorageEditedCharacters" : @" + NSTextStorageEditedCharacters"]; - return [FSNamedNumber namedNumberWithDouble:mask name:str]; - } + NSAlert* o = object; + ADD_CLASS_LABEL(@"NSAlert Info"); + ADD_OBJECT(o, accessoryView) + ADD_ENUM(o, alertStyle, AlertStyle) + ADD_OBJECTS(o, buttons) + ADD_OBJECT(o, delegate, NSObject.class, YES) + ADD_OBJECT_NOT_NIL(o, helpAnchor) + ADD_OBJECT(o, icon) + ADD_STRING(o, informativeText) + ADD_STRING(o, messageText) + ADD_BOOL(o, showsHelp) + ADD_BOOL(o, showsSuppressionButton) + ADD_OBJECT(o, suppressionButton) + ADD_OBJECT(o, window) } -static id objectFromTextTableLayoutAlgorithm(NSTextTableLayoutAlgorithm layoutAlgorithm) +- (void)addNSAnimation:(id)object { - switch (layoutAlgorithm) - { - case NSTextTableAutomaticLayoutAlgorithm: return [FSNamedNumber namedNumberWithDouble:layoutAlgorithm name:@"NSTextTableAutomaticLayoutAlgorithm"]; - case NSTextTableFixedLayoutAlgorithm: return [FSNamedNumber namedNumberWithDouble:layoutAlgorithm name:@"NSTextTableFixedLayoutAlgorithm"]; - default: return [FSNumber numberWithDouble:layoutAlgorithm]; - } -} + if ([object isKindOfClass:[NSViewAnimation class]]) { + NSViewAnimation* o = object; -static id objectFromTextTabType(NSTextTabType textTabType) -{ - switch (textTabType) - { - case NSLeftTabStopType: return [FSNamedNumber namedNumberWithDouble:textTabType name:@"NSLeftTabStopType"]; - case NSRightTabStopType: return [FSNamedNumber namedNumberWithDouble:textTabType name:@"NSRightTabStopType"]; - case NSCenterTabStopType: return [FSNamedNumber namedNumberWithDouble:textTabType name:@"NSCenterTabStopType"]; - case NSDecimalTabStopType: return [FSNamedNumber namedNumberWithDouble:textTabType name:@"NSDecimalTabStopType"]; - default: return [FSNumber numberWithDouble:textTabType]; - } -} + if ([o viewAnimations] != nil) { + ADD_CLASS_LABEL(@"NSViewAnimation Info"); + ADD_OBJECTS(o, viewAnimations) + } + } -static id objectFromTickMarkPosition(NSTickMarkPosition tickMarkPosition, BOOL isVertical) -{ - switch (tickMarkPosition) - { - case NSTickMarkBelow: return [FSNamedNumber namedNumberWithDouble:tickMarkPosition name: isVertical ? @"NSTickMarkRight" : @"NSTickMarkBelow"]; - case NSTickMarkAbove: return [FSNamedNumber namedNumberWithDouble:tickMarkPosition name: isVertical ? @"NSTickMarkLeft" : @"NSTickMarkAbove"]; - //case NSTickMarkLeft: return [NamedNumber namedNumberWithDouble:tickMarkPosition name:@"NSTickMarkLeft"]; - //case NSTickMarkRight: return [NamedNumber namedNumberWithDouble:tickMarkPosition name:@"NSTickMarkRight"]; - default: return [FSNumber numberWithDouble:tickMarkPosition]; - } + NSAnimation* o = object; + ADD_CLASS_LABEL(@"NSAnimation Info"); + ADD_ENUM(o, animationBlockingMode, AnimationBlockingMode) + ADD_ENUM(o, animationCurve, AnimationCurve) + ADD_NUMBER(o, currentProgress) + ADD_NUMBER(o, currentValue) + ADD_OBJECT(o, delegate, NSObject.class, YES) + ADD_NUMBER(o, duration) + ADD_NUMBER(o, frameRate) + ADD_BOOL(o, isAnimating) + ADD_OBJECTS(o, progressMarks) + ADD_OBJECT(o, runLoopModesForAnimating) } -static id objectFromTIFFCompression(NSTIFFCompression compression) +- (void)addNSAnimationContext:(id)object { - switch (compression) - { - case NSTIFFCompressionNone: return [FSNamedNumber namedNumberWithDouble:compression name:@"NSTIFFCompressionNone"]; - case NSTIFFCompressionCCITTFAX3: return [FSNamedNumber namedNumberWithDouble:compression name:@"NSTIFFCompressionCCITTFAX3"]; - case NSTIFFCompressionCCITTFAX4: return [FSNamedNumber namedNumberWithDouble:compression name:@"NSTIFFCompressionCCITTFAX4"]; - case NSTIFFCompressionLZW: return [FSNamedNumber namedNumberWithDouble:compression name:@"NSTIFFCompressionLZW"]; - case NSTIFFCompressionJPEG: return [FSNamedNumber namedNumberWithDouble:compression name:@"NSTIFFCompressionJPEG"]; - case NSTIFFCompressionNEXT: return [FSNamedNumber namedNumberWithDouble:compression name:@"NSTIFFCompressionNEXT"]; - case NSTIFFCompressionPackBits: return [FSNamedNumber namedNumberWithDouble:compression name:@"NSTIFFCompressionPackBits"]; - case NSTIFFCompressionOldJPEG: return [FSNamedNumber namedNumberWithDouble:compression name:@"NSTIFFCompressionOldJPEG"]; - default: return [FSNumber numberWithDouble:compression]; - } + NSAnimationContext* o = object; + ADD_CLASS_LABEL(@"NSAnimationContext Info"); + ADD_NUMBER(o, duration) } -static id objectFromTitlePosition(NSTitlePosition titlePosition) +- (void)addNSAttributedString:(id)object { - switch (titlePosition) - { - case NSNoTitle: return [FSNamedNumber namedNumberWithDouble:titlePosition name:@"NSNoTitle"]; - case NSAboveTop: return [FSNamedNumber namedNumberWithDouble:titlePosition name:@"NSAboveTop"]; - case NSAtTop: return [FSNamedNumber namedNumberWithDouble:titlePosition name:@"NSAtTop"]; - case NSBelowTop: return [FSNamedNumber namedNumberWithDouble:titlePosition name:@"NSBelowTop"]; - case NSAboveBottom: return [FSNamedNumber namedNumberWithDouble:titlePosition name:@"NSAboveBottom"]; - case NSAtBottom: return [FSNamedNumber namedNumberWithDouble:titlePosition name:@"NSAtBottom"]; - case NSBelowBottom: return [FSNamedNumber namedNumberWithDouble:titlePosition name:@"NSBelowBottom"]; - default: return [FSNumber numberWithDouble:titlePosition]; - } + if ([object isKindOfClass:[NSMutableAttributedString class]]) { + if ([object isKindOfClass:[NSTextStorage class]]) { + NSTextStorage* o = object; + ADD_CLASS_LABEL(@"NSTextStorage Info"); + //ADD_OBJECT( [o attributeRuns] ,@"Attribute runs") + ADD_NUMBER(o, changeInLength) + ADD_OBJECT(o, delegate, NSObject.class, YES) + ADD_OPTIONS(o, editedMask, TextStorageEditedOptions) + ADD_RANGE(o, editedRange) + ADD_BOOL(o, fixesAttributesLazily) + ADD_OBJECT(o, font) + ADD_COLOR(o, foregroundColor) + ADD_OBJECTS(o, layoutManagers) + // Note: invoking "paragraphs" and retaining the result cause the result of "layoutManager" to become trash ! + } + } } -static id objectFromTokenStyle(NSTokenStyle tokenStyle) +- (void)addNSBezierPath:(id)object { - switch (tokenStyle) - { - case NSDefaultTokenStyle: return [FSNamedNumber namedNumberWithDouble:tokenStyle name:@"NSDefaultTokenStyle"]; - case NSPlainTextTokenStyle: return [FSNamedNumber namedNumberWithDouble:tokenStyle name:@"NSPlainTextTokenStyle"]; - case NSRoundedTokenStyle: return [FSNamedNumber namedNumberWithDouble:tokenStyle name:@"NSRoundedTokenStyle"]; - default: return [FSNumber numberWithDouble:tokenStyle]; - } + NSBezierPath* o = object; + ADD_CLASS_LABEL(@"NSBezierPath Info"); + ADD_RECT(o, bounds) + ADD_RECT(o, controlPointBounds) + if (![o isEmpty]) + ADD_POINT(o, currentPoint) + ADD_NUMBER(o, elementCount) + ADD_NUMBER(o, flatness) + ADD_BOOL(o, isEmpty) + ADD_ENUM(o, lineCapStyle, LineCapStyle) + ADD_ENUM(o, lineJoinStyle, LineJoinStyle) + ADD_NUMBER(o, lineWidth) + ADD_NUMBER(o, miterLimit) + ADD_ENUM(o, windingRule, WindingRule) } -static id objectFromToolbarDisplayMode(NSToolbarDisplayMode toolbarDisplayMode) +- (void)addNSCell:(id)object { - switch (toolbarDisplayMode) - { - case NSToolbarDisplayModeDefault: return [FSNamedNumber namedNumberWithDouble:toolbarDisplayMode name:@"NSToolbarDisplayModeDefault"]; - case NSToolbarDisplayModeIconAndLabel: return [FSNamedNumber namedNumberWithDouble:toolbarDisplayMode name:@"NSToolbarDisplayModeIconAndLabel"]; - case NSToolbarDisplayModeIconOnly: return [FSNamedNumber namedNumberWithDouble:toolbarDisplayMode name:@"NSToolbarDisplayModeIconOnly"]; - case NSToolbarDisplayModeLabelOnly: return [FSNamedNumber namedNumberWithDouble:toolbarDisplayMode name:@"NSToolbarDisplayModeLabelOnly"]; - default: return [FSNumber numberWithDouble:toolbarDisplayMode]; - } -} + if ([object isKindOfClass:[NSActionCell class]]) { + if ([object isKindOfClass:[NSButtonCell class]]) { + if ([object isKindOfClass:[NSMenuItemCell class]]) { + if ([object isKindOfClass:[NSPopUpButtonCell class]]) { + NSPopUpButtonCell* o = object; + ADD_CLASS_LABEL(@"NSPopUpButtonCell Info"); + ADD_BOOL(o, altersStateOfSelectedItem) + ADD_ENUM(o, arrowPosition, PopUpArrowPosition) + ADD_BOOL(o, autoenablesItems) + ADD_NUMBER(o, indexOfSelectedItem) + ADD_OBJECTS(o, itemArray) + ADD_NUMBER(o, numberOfItems) + ADD_OBJECT(o, objectValue) + ADD_ENUM(o, preferredEdge, RectEdge) + ADD_BOOL(o, pullsDown) + ADD_OBJECT(o, selectedItem) + ADD_BOOL(o, usesItemFromMenu) + } + + NSMenuItemCell* o = object; + ADD_CLASS_LABEL(@"NSMenuItemCell Info"); + if ([[o menuItem] image]) + ADD_NUMBER(o, imageWidth) + ADD_BOOL(o, isHighlighted) + if (![[[o menuItem] keyEquivalent] isEqualToString:@""]) + ADD_NUMBER(o, keyEquivalentWidth) + ADD_OBJECT(o, menuItem) + ADD_BOOL(o, needsDisplay) + ADD_BOOL(o, needsSizing) + ADD_NUMBER(o, stateImageWidth) + ADD_NUMBER(o, titleWidth) + } + + NSButtonCell* o = object; + ADD_CLASS_LABEL(@"NSButtonCell Info"); + ADD_OBJECT_NOT_NIL(o, alternateImage) + ADD_STRING(o, alternateTitle) + ADD_OBJECT(o, attributedAlternateTitle) + ADD_OBJECT(o, attributedTitle) + ADD_COLOR(o, backgroundColor) + ADD_ENUM(o, bezelStyle, BezelStyle) + ADD_ENUM(o, gradientType, GradientType) + ADD_OPTIONS(o, highlightsBy, CellStyleMask) + ADD_BOOL(o, imageDimsWhenDisabled) + ADD_ENUM(o, imagePosition, CellImagePosition) + ADD_ENUM(o, imageScaling, ImageScaling) + ADD_BOOL(o, isTransparent) + ADD_OBJECT_NOT_NIL(o, keyEquivalentFont) + ADD_OPTIONS( o, keyEquivalentModifierMask, EventModifierFlags) + ADD_BOOL(o, showsBorderOnlyWhileMouseInside) + ADD_OPTIONS(o, showsStateBy, CellStyleMask) + ADD_OBJECT_NOT_NIL(o, sound) + ADD_STRING(o, title) + } + else if ([object isKindOfClass:[NSDatePickerCell class]]) { + NSDatePickerCell* o = object; + ADD_CLASS_LABEL(@"NSDatePickerCell Info"); + ADD_COLOR(o, backgroundColor) + ADD_OBJECT(o, calendar) + ADD_OPTIONS(o, datePickerElements, DatePickerElementFlags) + ADD_ENUM(o, datePickerMode, DatePickerMode) + ADD_ENUM(o, datePickerStyle, DatePickerStyle) + ADD_OBJECT(o, dateValue) + ADD_OBJECT(o, delegate, NSObject.class, YES) + ADD_BOOL(o, drawsBackground) + ADD_OBJECT_NOT_NIL(o, locale) + ADD_OBJECT(o, maxDate) + ADD_OBJECT(o, minDate) + ADD_COLOR(o, textColor) + ADD_NUMBER(o, timeInterval) + ADD_OBJECT(o, timeZone) + } + else if ([object isKindOfClass:[NSFormCell class]]) { + NSFormCell* o = object; + ADD_CLASS_LABEL(@"NSFormCell Info"); + ADD_OBJECT(o, attributedTitle) + ADD_OBJECT_NOT_NIL(o, placeholderAttributedString) + ADD_STRING_NOT_NIL(o, placeholderString) + ADD_ENUM(o, titleAlignment, TextAlignment) + ADD_ENUM(o, titleBaseWritingDirection, WritingDirection) + ADD_OBJECT(o, titleFont) + ADD_NUMBER(o, titleWidth) + } + else if ([object isKindOfClass:[NSLevelIndicatorCell class]]) { + NSLevelIndicatorCell* o = object; + ADD_CLASS_LABEL(@"NSLevelIndicatorCell Info"); + ADD_NUMBER(o, criticalValue) + ADD_ENUM(o, levelIndicatorStyle, LevelIndicatorStyle) + ADD_NUMBER(o, maxValue) + ADD_NUMBER(o, minValue) + ADD_NUMBER(o, numberOfMajorTickMarks) + ADD_NUMBER(o, numberOfTickMarks) + ADD_OBJECT_RO(objectFromTickMarkPosition([o tickMarkPosition],NO), @"Tick mark position") + ADD_NUMBER(o, warningValue) + } + else if ([object isKindOfClass:[NSPathCell class]]) { + NSPathCell* o = object; + ADD_CLASS_LABEL(@"NSPathCell Info"); + ADD_OBJECTS(o, allowedTypes) + ADD_COLOR_NOT_NIL(o, backgroundColor) + ADD_OBJECT(o, delegate, NSObject.class) + ADD_SEL(o, doubleAction) + ADD_OBJECTS(o, pathComponentCells) + ADD_ENUM(o, pathStyle, PathStyle) + ADD_OBJECT_NOT_NIL(o, placeholderAttributedString) + ADD_STRING_NOT_NIL(o, placeholderString) + ADD_OBJECT_NOT_NIL(o, URL) + } + else if ([object isKindOfClass:[NSSegmentedCell class]]) { + NSSegmentedCell* o = object; + ADD_CLASS_LABEL(@"NSSegmentedCell Info"); + + ADD_NUMBER(o, segmentCount) + ADD_NUMBER(o, selectedSegment) + ADD_ENUM(o, trackingMode, SegmentSwitchTracking) + + [self processSegmentedItem:o]; + } + else if ([object isKindOfClass:[NSSliderCell class]]) { + NSSliderCell* o = object; + ADD_CLASS_LABEL(@"NSSliderCell Info"); + ADD_BOOL(o, allowsTickMarkValuesOnly) + ADD_NUMBER(o, altIncrementValue) +#if MAC_OS_X_VERSION_MIN_REQUIRED < MAC_OS_X_VERSION_10_10 + ADD_BOOL(o, isVertical) + ADD_NUMBER(o, knobThickness) +#endif + ADD_NUMBER(o, maxValue) + ADD_NUMBER(o, minValue) + ADD_NUMBER(o, numberOfTickMarks) + ADD_ENUM(o, sliderType, SliderType) + ADD_OBJECT_RO(objectFromTickMarkPosition([o tickMarkPosition], [(NSSliderCell*)o isVertical] == 1), @"Tick mark position") + ADD_RECT(o, trackRect) + } + else if ([object isKindOfClass:[NSStepperCell class]]) { + NSStepperCell* o = object; + ADD_CLASS_LABEL(@"NSStepperCell Info"); + ADD_BOOL(o, autorepeat) + ADD_NUMBER(o, increment) + ADD_NUMBER(o, maxValue) + ADD_NUMBER(o, minValue) + ADD_BOOL(o, valueWraps) + } + else if ([object isKindOfClass:[NSTextFieldCell class]]) { + if ([object isKindOfClass:[NSComboBoxCell class]]) { + NSComboBoxCell* o = object; + ADD_CLASS_LABEL(@"NSComboBoxCell Info"); + if ([o usesDataSource]) + ADD_OBJECT(o, dataSource) + ADD_BOOL(o, hasVerticalScroller) + ADD_NUMBER(o, indexOfSelectedItem) + ADD_SIZE(o, intercellSpacing) + ADD_BOOL(o, isButtonBordered) + ADD_NUMBER(o, itemHeight) + ADD_NUMBER(o, numberOfItems) + ADD_NUMBER(o, numberOfVisibleItems) + if (![o usesDataSource] && [o indexOfSelectedItem] != -1) + ADD_OBJECT(o, objectValueOfSelectedItem) + if (![o usesDataSource]) + ADD_OBJECTS(o, objectValues) + ADD_BOOL(o, usesDataSource) + } + else if ([object isKindOfClass:[NSPathComponentCell class]]) { + NSPathComponentCell* o = object; + ADD_CLASS_LABEL(@"NSPathComponentCell Info"); + ADD_OBJECT_NOT_NIL(o, image) + ADD_OBJECT_NOT_NIL(o, URL) + } + else if ([object isKindOfClass:[NSSearchFieldCell class]]) { + NSSearchFieldCell* o = object; + ADD_CLASS_LABEL(@"NSSearchFieldCell Info"); + ADD_OBJECT(o, cancelButtonCell) + ADD_NUMBER(o, maximumRecents) + ADD_OBJECTS(o, recentSearches) + ADD_OBJECT_NOT_NIL(o, recentsAutosaveName) + ADD_OBJECT(o, searchButtonCell) + ADD_OBJECT_NOT_NIL(o, searchMenuTemplate) + ADD_BOOL(o, sendsSearchStringImmediately) + ADD_BOOL(o, sendsWholeSearchString) + } + else if ([object isKindOfClass:[NSTokenFieldCell class]]) { + NSTokenField* o = object; + ADD_CLASS_LABEL(@"NSTokenField Info"); + ADD_NUMBER(o, completionDelay) + ADD_OBJECT(o, delegate, NSObject.class, YES) + ADD_OBJECT(o, tokenizingCharacterSet) + ADD_ENUM(o, tokenStyle, TokenStyle) + } + + NSTextFieldCell* o = object; + ADD_CLASS_LABEL(@"NSTextFieldCell Info"); + ADD_OBJECTS(o, allowedInputSourceLocales) + ADD_COLOR(o, backgroundColor) + ADD_ENUM(o, bezelStyle, TextFieldBezelStyle) + ADD_BOOL(o, drawsBackground) + ADD_OBJECT_NOT_NIL(o, placeholderAttributedString) + ADD_STRING_NOT_NIL(o, placeholderString) + ADD_COLOR(o, textColor) + } + } + else if ([object isKindOfClass:[NSBrowserCell class]]) { + NSBrowserCell* o = object; + ADD_CLASS_LABEL(@"NSBrowserCell Info"); + ADD_OBJECT_NOT_NIL(o, alternateImage) + ADD_BOOL(o, isLeaf) + ADD_BOOL(o, isLoaded) + } + else if ([object isKindOfClass:[NSImageCell class]]) { + NSImageCell* o = object; + ADD_CLASS_LABEL(@"NSImageCell Info"); + ADD_ENUM(o, imageAlignment, ImageAlignment) + ADD_ENUM(o, imageScaling, ImageScaling) + } + else if ([object isKindOfClass:[NSTextAttachmentCell class]]) { + NSTextAttachmentCell* o = object; + ADD_CLASS_LABEL(@"NSTextAttachmentCell Info"); + ADD_OBJECT(o, attachment) + ADD_POINT(o, cellBaselineOffset) + ADD_SIZE(o, cellSize) + ADD_BOOL(o, wantsToTrackMouse) + } -static id objectFromToolbarItemVisibilityPriority(NSInteger priority) -{ - switch (priority) - { - case NSToolbarItemVisibilityPriorityStandard: return [FSNamedNumber namedNumberWithDouble:priority name:@"NSToolbarItemVisibilityPriorityStandard"]; - case NSToolbarItemVisibilityPriorityLow: return [FSNamedNumber namedNumberWithDouble:priority name:@"NSToolbarItemVisibilityPriorityLow"]; - case NSToolbarItemVisibilityPriorityHigh: return [FSNamedNumber namedNumberWithDouble:priority name:@"NSToolbarItemVisibilityPriorityHigh"]; - case NSToolbarItemVisibilityPriorityUser: return [FSNamedNumber namedNumberWithDouble:priority name:@"NSToolbarItemVisibilityPriorityUser"]; - default: return [FSNumber numberWithDouble:priority]; - } + NSCell* o = object; + ADD_CLASS_LABEL(@"NSCell Info"); + ADD_BOOL(o, acceptsFirstResponder) + ADD_SEL_NOT_NULL([o action], @"Action") + ADD_ENUM(o, alignment, TextAlignment) + ADD_BOOL(o, allowsEditingTextAttributes) + ADD_BOOL(o, allowsMixedState) + ADD_BOOL(o, allowsUndo) + //ADD_OBJECT( [o attributedStringValue] ,@"Attributed string value") + ADD_ENUM(o, backgroundStyle, BackgroundStyle) + ADD_ENUM(o, baseWritingDirection, WritingDirection) + ADD_SIZE(o, cellSize) + ADD_ENUM(o, controlSize, ControlSize) + ADD_ENUM(o, controlTint, ControlTint) + ADD_OBJECT_NOT_NIL(o, controlView) + ADD_ENUM(o, focusRingType, FocusRingType) + ADD_OBJECT(o, font) + ADD_OBJECT_NOT_NIL(o, formatter) + ADD_OBJECT_NOT_NIL(o, image) + if ([(NSCell*)o type] == NSTextCellType) + ADD_BOOL(o, importsGraphics) + ADD_ENUM(o, interiorBackgroundStyle, BackgroundStyle) + ADD_BOOL(o, isBezeled) + ADD_BOOL(o, isBordered) + ADD_BOOL(o, isContinuous) + ADD_BOOL(o, isEditable) + ADD_BOOL(o, isEnabled) + ADD_BOOL(o, isHighlighted) + ADD_BOOL(o, isOpaque) + ADD_BOOL(o, isScrollable) + ADD_BOOL(o, isSelectable) + if ([[o keyEquivalent] length] != 0) + ADD_STRING(o, keyEquivalent) + ADD_ENUM(o, lineBreakMode, LineBreakMode) + ADD_OBJECT_NOT_NIL(o, menu) + if ([[o mnemonic] length] != 0) + ADD_STRING(o, mnemonic) + if ([o mnemonicLocation] != NSNotFound) + ADD_NUMBER(o, mnemonicLocation) + ADD_ENUM(o, nextState, CellStateValue) + //ADD_OBJECT( [o objectValue] ,@"Object value") + ADD_BOOL(o, refusesFirstResponder) + ADD_OBJECT_NOT_NIL(o, representedObject) + ADD_BOOL(o, sendsActionOnEndEditing) + ADD_BOOL(o, showsFirstResponder) + ADD_ENUM(o, state, CellStateValue) + ADD_NUMBER(o, tag) + ADD_OBJECT_NOT_NIL(o, target) + ADD_OPTIONS(o, type, CellType) + ADD_BOOL(o, wantsNotificationForMarkedText) + ADD_BOOL(o, wraps) } -static id objectFromToolbarSizeMode(NSToolbarSizeMode toolbarSizeMode) +- (void)addNSCollectionViewItem:(id)object { - switch (toolbarSizeMode) - { - case NSToolbarSizeModeDefault: return [FSNamedNumber namedNumberWithDouble:toolbarSizeMode name:@"NSToolbarSizeModeDefault"]; - case NSToolbarSizeModeRegular: return [FSNamedNumber namedNumberWithDouble:toolbarSizeMode name:@"NSToolbarSizeModeRegular"]; - case NSToolbarSizeModeSmall: return [FSNamedNumber namedNumberWithDouble:toolbarSizeMode name:@"NSToolbarSizeModeSmall"]; - default: return [FSNumber numberWithDouble:toolbarSizeMode]; - } + NSCollectionViewItem* o = object; + ADD_CLASS_LABEL(@"NSCollectionViewItem Info"); + ADD_OBJECT(o, collectionView) + ADD_BOOL(o, isSelected) + ADD_OBJECT(o, representedObject) + ADD_OBJECT_NOT_NIL(o, view) } -static id objectFromTrackingAreaOptions(NSTrackingAreaOptions mask) +- (void)addNSComparisonPredicate:(id)object { - if (mask & ~(NSTrackingMouseEnteredAndExited | NSTrackingMouseMoved | NSTrackingCursorUpdate | NSTrackingActiveWhenFirstResponder | - NSTrackingActiveInKeyWindow | NSTrackingActiveInActiveApp | NSTrackingActiveAlways | NSTrackingAssumeInside | - NSTrackingInVisibleRect | NSTrackingEnabledDuringMouseDrag)) return [FSNumber numberWithDouble:mask]; - else - { - NSMutableString *str = [NSMutableString string]; - if (mask & NSTrackingMouseEnteredAndExited) [str appendString:@"NSTrackingMouseEnteredAndExited"]; - if (mask & NSTrackingMouseMoved) [str appendString:[str length] == 0 ? @"NSTrackingMouseMoved" : @" + NSTrackingMouseMoved"]; - if (mask & NSTrackingCursorUpdate) [str appendString:[str length] == 0 ? @"NSTrackingCursorUpdate" : @" + NSTrackingCursorUpdate"]; - if (mask & NSTrackingActiveWhenFirstResponder) [str appendString:[str length] == 0 ? @"NSTrackingActiveWhenFirstResponder" : @" + NSTrackingActiveWhenFirstResponder"]; - if (mask & NSTrackingActiveInKeyWindow) [str appendString:[str length] == 0 ? @"NSTrackingActiveInKeyWindow" : @" + NSTrackingActiveInKeyWindow"]; - if (mask & NSTrackingActiveInActiveApp) [str appendString:[str length] == 0 ? @"NSTrackingActiveInActiveApp" : @" + NSTrackingActiveInActiveApp"]; - if (mask & NSTrackingActiveAlways) [str appendString:[str length] == 0 ? @"NSTrackingActiveAlways" : @" + NSTrackingActiveAlways"]; - if (mask & NSTrackingAssumeInside) [str appendString:[str length] == 0 ? @"NSTrackingAssumeInside" : @" + NSTrackingAssumeInside"]; - if (mask & NSTrackingInVisibleRect) [str appendString:[str length] == 0 ? @"NSTrackingInVisibleRect" : @" + NSTrackingInVisibleRect"]; - if (mask & NSTrackingEnabledDuringMouseDrag) [str appendString:[str length] == 0 ? @"NSTrackingEnabledDuringMouseDrag" : @" + NSTrackingEnabledDuringMouseDrag"]; - - return ([str length] == 0 ? [FSNumber numberWithDouble:mask] : [FSNamedNumber namedNumberWithDouble:mask name:str]); - } + NSComparisonPredicate* o = object; + ADD_CLASS_LABEL(@"NSComparisonPredicate Info"); + ADD_ENUM(o, comparisonPredicateModifier, ComparisonPredicateModifier) + ADD_SEL_NOT_NULL([o customSelector], @"Custom selector") + ADD_OBJECT(o, leftExpression) + ADD_ENUM(o, predicateOperatorType, PredicateOperatorType) + ADD_OBJECT(o, rightExpression) } -static id objectFromTypesetterBehavior(NSTypesetterBehavior typesetterBehavior) +- (void)addNSCompoundPredicate:(id)object { - switch (typesetterBehavior) - { - case NSTypesetterLatestBehavior: return [FSNamedNumber namedNumberWithDouble:typesetterBehavior name:@"NSTypesetterLatestBehavior"]; - case NSTypesetterOriginalBehavior: return [FSNamedNumber namedNumberWithDouble:typesetterBehavior name:@"NSTypesetterOriginalBehavior"]; - case NSTypesetterBehavior_10_2_WithCompatibility: return [FSNamedNumber namedNumberWithDouble:typesetterBehavior name:@"NSTypesetterBehavior_10_2_WithCompatibility"]; - case NSTypesetterBehavior_10_2: return [FSNamedNumber namedNumberWithDouble:typesetterBehavior name:@"NSTypesetterBehavior_10_2"]; - case NSTypesetterBehavior_10_3: return [FSNamedNumber namedNumberWithDouble:typesetterBehavior name:@"NSTypesetterBehavior_10_3"]; - case NSTypesetterBehavior_10_4: return [FSNamedNumber namedNumberWithDouble:typesetterBehavior name:@"NSTypesetterBehavior_10_4"]; - default: return [FSNumber numberWithDouble:typesetterBehavior]; - } + NSCompoundPredicate* o = object; + ADD_CLASS_LABEL(@"NSCompoundPredicate Info") + ADD_ENUM(o, compoundPredicateType, CompoundPredicateType) + ADD_OBJECTS(o, subpredicates) } -static id objectFromUsableScrollerParts(NSUsableScrollerParts usableScrollerParts) -{ - switch (usableScrollerParts) - { - case NSNoScrollerParts: return [FSNamedNumber namedNumberWithDouble:usableScrollerParts name:@"NSNoScrollerParts"]; - case NSOnlyScrollerArrows: return [FSNamedNumber namedNumberWithDouble:usableScrollerParts name:@"NSOnlyScrollerArrows"]; - case NSAllScrollerParts: return [FSNamedNumber namedNumberWithDouble:usableScrollerParts name:@"NSAllScrollerParts"]; - default: return [FSNumber numberWithDouble:usableScrollerParts]; - } -} - -static id objectFromWindingRule(NSWindingRule windingRule) +- (void)addNSController:(id)object { - switch (windingRule) - { - case NSNonZeroWindingRule: return [FSNamedNumber namedNumberWithDouble:windingRule name:@"NSNonZeroWindingRule"]; - case NSEvenOddWindingRule: return [FSNamedNumber namedNumberWithDouble:windingRule name:@"NSEvenOddWindingRule"]; - default: return [FSNumber numberWithDouble:windingRule]; - } -} + if ([object isKindOfClass:[NSObjectController class]]) { + if ([object isKindOfClass:[NSArrayController class]]) { + if ([object isKindOfClass:[NSDictionaryController class]]) { + NSDictionaryController* o = object; + ADD_CLASS_LABEL(@"NSDictionaryController Info"); + ADD_OBJECTS(o, excludedKeys) + ADD_OBJECTS(o, includedKeys) + ADD_OBJECT(o, initialKey) + ADD_OBJECT(o, initialValue) + ADD_DICTIONARY(o, localizedKeyDictionary) + ADD_OBJECT_NOT_NIL(o, localizedKeyTable) + } + + NSArrayController* o = object; + ADD_CLASS_LABEL(@"NSArrayController Info"); + ADD_BOOL(o, alwaysUsesMultipleValuesMarker) + ADD_BOOL(o, automaticallyRearrangesObjects) + ADD_OBJECTS(o, automaticRearrangementKeyPaths) + ADD_BOOL(o, avoidsEmptySelection) + ADD_BOOL(o, clearsFilterPredicateOnInsertion) + ADD_BOOL(o, canInsert) + ADD_BOOL(o, canSelectNext) + ADD_BOOL(o, canSelectPrevious) + ADD_OBJECT_NOT_NIL(o, filterPredicate) + ADD_BOOL(o, preservesSelection) + if ([o selectionIndex] != NSNotFound) + ADD_NUMBER(o, selectionIndex) + ADD_OBJECT(o, selectionIndexes) + ADD_BOOL(o, selectsInsertedObjects) + ADD_OBJECTS(o, sortDescriptors) + } + else if ([object isKindOfClass:[NSTreeController class]]) { + NSTreeController* o = object; + ADD_CLASS_LABEL(@"NSTreeController Info"); + ADD_BOOL(o, alwaysUsesMultipleValuesMarker) + ADD_BOOL(o, avoidsEmptySelection) + ADD_BOOL(o, canAddChild) + ADD_BOOL(o, canInsert) + ADD_BOOL(o, canInsertChild) + ADD_OBJECT(o, childrenKeyPath) + ADD_OBJECT(o, countKeyPath) + ADD_OBJECT(o, leafKeyPath) + ADD_BOOL(o, preservesSelection) + ADD_OBJECTS(o, selectedNodes) + ADD_OBJECTS(o, selectedObjects) + ADD_OBJECTS(o, selectionIndexPaths) + ADD_BOOL(o, selectsInsertedObjects) + ADD_OBJECTS(o, sortDescriptors) + } + + NSObjectController* o = object; + ADD_CLASS_LABEL(@"NSObjectController Info"); + ADD_BOOL(o, automaticallyPreparesContent) + ADD_BOOL(o, canAdd) + ADD_BOOL(o, canRemove) + ADD_OBJECT(o, content) + if ([o managedObjectContext] != nil) // Do not work when there is no managedObjectContext associated with the object + ADD_OBJECT_NOT_NIL(o, defaultFetchRequest) + ADD_OBJECT_NOT_NIL(o, entityName) + ADD_OBJECT_NOT_NIL(o, fetchPredicate) + ADD_BOOL(o, isEditable) + ADD_OBJECT_NOT_NIL(o, managedObjectContext) + ADD_OBJECT(o, objectClass) + ADD_OBJECTS(o, selectedObjects) + ADD_OBJECT(o, selection) + ADD_BOOL(o, usesLazyFetching) + } + else if ([object isKindOfClass:[NSUserDefaultsController class]]) { + NSUserDefaultsController* o = object; + ADD_CLASS_LABEL(@"NSUserDefaultsController Info"); + ADD_BOOL(o, appliesImmediately) + ADD_OBJECT(o, defaults) + ADD_BOOL(o, hasUnappliedChanges) + ADD_OBJECT(o, initialValues) + ADD_OBJECT(o, values) + } -static id objectFromWindowLevel(NSInteger windowLevel) -{ - if (windowLevel == NSNormalWindowLevel) return [FSNamedNumber namedNumberWithDouble:windowLevel name:@"NSNormalWindowLevel"]; - else if (windowLevel == NSFloatingWindowLevel) return [FSNamedNumber namedNumberWithDouble:windowLevel name:@"NSFloatingWindowLevel"]; - else if (windowLevel == NSSubmenuWindowLevel) return [FSNamedNumber namedNumberWithDouble:windowLevel name:@"NSSubmenuWindowLevel"]; - else if (windowLevel == NSTornOffMenuWindowLevel) return [FSNamedNumber namedNumberWithDouble:windowLevel name:@"NSTornOffMenuWindowLevel"]; - else if (windowLevel == NSModalPanelWindowLevel) return [FSNamedNumber namedNumberWithDouble:windowLevel name:@"NSModalPanelWindowLevel"]; - else if (windowLevel == NSMainMenuWindowLevel) return [FSNamedNumber namedNumberWithDouble:windowLevel name:@"NSMainMenuWindowLevel"]; - else if (windowLevel == NSStatusWindowLevel) return [FSNamedNumber namedNumberWithDouble:windowLevel name:@"NSStatusWindowLevel"]; - else if (windowLevel == NSPopUpMenuWindowLevel) return [FSNamedNumber namedNumberWithDouble:windowLevel name:@"NSPopUpMenuWindowLevel"]; - else if (windowLevel == NSScreenSaverWindowLevel) return [FSNamedNumber namedNumberWithDouble:windowLevel name:@"NSScreenSaverWindowLevel"]; - else return [FSNumber numberWithDouble:windowLevel]; + NSController* o = object; + ADD_CLASS_LABEL(@"NSController Info"); + ADD_BOOL(o, isEditing) } -static id objectFromWindowMask(NSUInteger mask) +- (void)addNSCursor:(id)object { - if (mask & ~(NSTitledWindowMask | NSClosableWindowMask | NSMiniaturizableWindowMask | NSResizableWindowMask | NSTexturedBackgroundWindowMask | NSUnifiedTitleAndToolbarWindowMask | NSUnscaledWindowMask)) return [FSNumber numberWithDouble:mask]; - else if (mask == 0) return [FSNamedNumber namedNumberWithDouble:mask name:@"NSBorderlessWindowMask"]; - else - { - NSMutableString *str = [NSMutableString string]; - - if (mask & NSTitledWindowMask) [str appendString:@"NSTitledWindowMask"]; - if (mask & NSClosableWindowMask) [str appendString:[str length] == 0 ? @"NSClosableWindowMask" : @" + NSClosableWindowMask"]; - if (mask & NSMiniaturizableWindowMask) [str appendString:[str length] == 0 ? @"NSMiniaturizableWindowMask" : @" + NSMiniaturizableWindowMask"]; - if (mask & NSResizableWindowMask) [str appendString:[str length] == 0 ? @"NSResizableWindowMask" : @" + NSResizableWindowMask"]; - if (mask & NSTexturedBackgroundWindowMask) [str appendString:[str length] == 0 ? @"NSTexturedBackgroundWindowMask" : @" + NSTexturedBackgroundWindowMask"]; - if (mask & NSUnifiedTitleAndToolbarWindowMask) [str appendString:[str length] == 0 ? @"NSUnifiedTitleAndToolbarWindowMask" : @" + NSUnifiedTitleAndToolbarWindowMask"]; - if (mask & NSUnscaledWindowMask) [str appendString:[str length] == 0 ? @"NSUnscaledWindowMask" : @" + NSUnscaledWindowMask"]; - - return [FSNamedNumber namedNumberWithDouble:mask name:str]; - } + NSCursor* o = object; + ADD_CLASS_LABEL(@"NSCursor Info"); + ADD_POINT(o, hotSpot) + ADD_OBJECT(o, image) + ADD_BOOL(o, isSetOnMouseEntered) + ADD_BOOL(o, isSetOnMouseExited) } -static id objectFromWindowBackingLocation(NSWindowBackingLocation windowBackingLocation) +- (void)addNSDockTile:(id)object { - switch (windowBackingLocation) - { - case NSWindowBackingLocationDefault: return [FSNamedNumber namedNumberWithDouble:windowBackingLocation name:@"NSBackingStoreBuffered"]; - case NSWindowBackingLocationVideoMemory: return [FSNamedNumber namedNumberWithDouble:windowBackingLocation name:@"NSBackingStoreRetained"]; - case NSWindowBackingLocationMainMemory: return [FSNamedNumber namedNumberWithDouble:windowBackingLocation name:@"NSBackingStoreNonretained"]; - default: return [FSNumber numberWithDouble:windowBackingLocation]; - } + NSDockTile* o = object; + ADD_CLASS_LABEL(@"NSDockTile Info"); + ADD_OBJECT(o, badgeLabel) + ADD_OBJECT(o, contentView) + ADD_OBJECT(o, owner) + ADD_BOOL(o, showsApplicationBadge) + ADD_SIZE(o, size) } -static id objectFromWindowCollectionBehavior(NSWindowCollectionBehavior windowCollectionBehavior) +- (void)addNSDocument:(id)object { - switch (windowCollectionBehavior) - { - case NSWindowCollectionBehaviorDefault: return [FSNamedNumber namedNumberWithDouble:windowCollectionBehavior name:@"NSWindowCollectionBehaviorDefault"]; - case NSWindowCollectionBehaviorCanJoinAllSpaces: return [FSNamedNumber namedNumberWithDouble:windowCollectionBehavior name:@"NSWindowCollectionBehaviorCanJoinAllSpaces"]; - case NSWindowCollectionBehaviorMoveToActiveSpace: return [FSNamedNumber namedNumberWithDouble:windowCollectionBehavior name:@"NSWindowCollectionBehaviorMoveToActiveSpace"]; - default: return [FSNumber numberWithDouble:windowCollectionBehavior]; - } + NSDocument* o = object; + ADD_CLASS_LABEL(@"NSDocument Info"); + ADD_OBJECT_NOT_NIL(o, autosavedContentsFileURL) + ADD_OBJECT(o, autosavingFileType) + ADD_OBJECT(o, displayName) + ADD_OBJECT(o, fileModificationDate) + ADD_BOOL(o, fileNameExtensionWasHiddenInLastRunSavePanel) + ADD_OBJECT(o, fileType) + ADD_OBJECT(o, fileTypeFromLastRunSavePanel) + ADD_OBJECT_NOT_NIL(o, fileURL) + ADD_BOOL(o, hasUnautosavedChanges) + ADD_BOOL(o, hasUndoManager) + ADD_BOOL(o, isDocumentEdited) + ADD_BOOL(o, keepBackupFile) + ADD_OBJECT(o, fileTypeFromLastRunSavePanel) + ADD_OBJECT(o, printInfo) + ADD_BOOL(o, shouldRunSavePanelWithAccessoryView) + ADD_OBJECTS(o, windowControllers) + ADD_OBJECT(o, windowForSheet) + ADD_OBJECT(o, windowNibName) } -static id objectFromWindowSharingType(NSWindowSharingType windowSharingType) +- (void)addNSDocumentController:(id)object { - switch (windowSharingType) - { - case NSWindowSharingNone: return [FSNamedNumber namedNumberWithDouble:windowSharingType name:@"NSWindowSharingNone"]; - case NSWindowSharingReadOnly: return [FSNamedNumber namedNumberWithDouble:windowSharingType name:@"NSWindowSharingReadOnly"]; - case NSWindowSharingReadWrite: return [FSNamedNumber namedNumberWithDouble:windowSharingType name:@"NSWindowSharingReadWrite"]; - default: return [FSNumber numberWithDouble:windowSharingType]; - } + NSDocumentController* o = object; + ADD_CLASS_LABEL(@"NSDocumentController Info"); + ADD_NUMBER(o, autosavingDelay) + ADD_OBJECT(o, currentDirectory) + ADD_OBJECT(o, currentDocument) + ADD_OBJECT(o, defaultType) + ADD_OBJECTS(o, documentClassNames) + ADD_OBJECTS(o, documents) + ADD_BOOL(o, hasEditedDocuments) + ADD_NUMBER(o, maximumRecentDocumentCount) + ADD_OBJECT(o, recentDocumentURLs) } -/*static id objectFromWindowOrderingMode(NSWindowOrderingMode orderingMode) -{ - switch (orderingMode) - { - case NSWindowAbove: return [NamedNumber namedNumberWithDouble:orderingMode name:@"NSWindowAbove"]; - case NSWindowBelow: return [NamedNumber namedNumberWithDouble:orderingMode name:@"NSWindowBelow"]; - case NSWindowOut: return [NamedNumber namedNumberWithDouble:orderingMode name:@"NSWindowOut"]; - default: return [Number numberWithDouble:orderingMode]; - } -}*/ - -static id objectFromWritingDirection(NSWritingDirection writingDirection) +- (void)addNSEntityDescription:(id)object { - switch (writingDirection) - { - case NSWritingDirectionNatural: return [FSNamedNumber namedNumberWithDouble:writingDirection name:@"NSWritingDirectionNatural"]; - case NSWritingDirectionLeftToRight: return [FSNamedNumber namedNumberWithDouble:writingDirection name:@"NSWritingDirectionLeftToRight"]; - case NSWritingDirectionRightToLeft: return [FSNamedNumber namedNumberWithDouble:writingDirection name:@"NSWritingDirectionRightToLeft"]; - default: return [FSNumber numberWithDouble:writingDirection]; - } + NSEntityDescription* o = object; + ADD_CLASS_LABEL(@"NSEntityDescription Info"); + ADD_DICTIONARY(o, attributesByName) + ADD_BOOL(o, isAbstract) + ADD_OBJECT(o, managedObjectClassName) + ADD_OBJECT(o, managedObjectModel) + ADD_OBJECT(o, name) + ADD_DICTIONARY(o, relationshipsByName) + if ([[o subentities] count] != 0) { + ADD_DICTIONARY(o, subentitiesByName) + } + ADD_OBJECT(o, superentity) + ADD_DICTIONARY(o, userInfo) } -@implementation FSObjectBrowserView (FSObjectBrowserViewObjectInfo) - - -- (void)fillMatrix:(NSMatrix *)m withObject:(id)object +- (void)addNSEvent:(id)object { - - FSObjectBrowserViewObjectHelper *objectHelper = [[FSObjectBrowserViewObjectHelper alloc] initWithObjectBrowserView:self]; - [objectHelper fillMatrix:m withObject:object]; - - [self addBlankRowToMatrix:m]; - [self fillMatrix:m withMethodsForObject:object]; - - [m sizeToCells]; - //[m scrollCellToVisibleAtRow:[matrix selectedRow] column:0]; - [m setNeedsDisplay]; - - [objectHelper release]; -} - -@end + NSEvent* o = object; + NSEventType type = [o type]; + ADD_CLASS_LABEL(@"NSEvent Info"); + if (type == NSTabletPoint || ((type == NSLeftMouseDown || type == NSLeftMouseUp || type == NSRightMouseDown || type == NSRightMouseUp || type == NSOtherMouseDown || type == NSOtherMouseUp || type == NSMouseMoved || type == NSLeftMouseDragged || type == NSRightMouseDragged || type == NSOtherMouseDragged || type == NSScrollWheel) && [object subtype] == NSTabletPointEventSubtype)) { + ADD_NUMBER(o, absoluteX) + ADD_NUMBER(o, absoluteY) + ADD_NUMBER(o, absoluteZ) + ADD_OPTIONS(o, buttonMask, EventButtonMask) + } + if (type == NSLeftMouseDown || type == NSLeftMouseUp || type == NSRightMouseDown || type == NSRightMouseUp || type == NSOtherMouseDown || type == NSOtherMouseUp) + ADD_NUMBER(o, buttonNumber) -@implementation FSObjectBrowserViewObjectHelper - -#define ADD_OBJECT(OBJECT,LABEL) @try { [view addObject:(OBJECT) withLabel:(LABEL) toMatrix:m classLabel:classLabel selectedClassLabel:selectedClassLabel selectedLabel:selectedLabel selectedObject:selectedObject]; } @catch (id exception) { NSLog(@"%@",exception); } - -#define ADD_OBJECT_NOT_NIL(OBJECT,LABEL) @try { id object = (OBJECT); if (object) [view addObject:object withLabel:(LABEL) toMatrix:m classLabel:classLabel selectedClassLabel:selectedClassLabel selectedLabel:selectedLabel selectedObject:selectedObject]; } @catch (id exception) { NSLog(@"%@",exception); } - -#define ADD_DICTIONARY(OBJECTS,LABEL) @try { if ([(OBJECTS) count] <= 20) [view addDictionary:(OBJECTS) withLabel:(LABEL) toMatrix:m classLabel:classLabel selectedClassLabel:selectedClassLabel selectedLabel:selectedLabel selectedObject:selectedObject]; else [view addObject:(OBJECTS) withLabel:(LABEL) toMatrix:m classLabel:classLabel selectedClassLabel:selectedClassLabel selectedLabel:selectedLabel selectedObject:selectedObject]; } @catch (id exception) { NSLog(@"%@",exception); } - -#define ADD_OBJECTS(OBJECTS,LABEL) @try { if ([(OBJECTS) count] <= 20) [view addObjects:(OBJECTS) withLabel:(LABEL) toMatrix:m classLabel:classLabel selectedClassLabel:selectedClassLabel selectedLabel:selectedLabel selectedObject:selectedObject]; else [view addObject:(OBJECTS) withLabel:(LABEL) toMatrix:m classLabel:classLabel selectedClassLabel:selectedClassLabel selectedLabel:selectedLabel selectedObject:selectedObject]; } @catch (id exception) { NSLog(@"%@",exception); } - -#define ADD_BOOL(B,LABEL) @try { [view addObject:[FSBoolean booleanWithBool:(B)] withLabel:(LABEL) toMatrix:m classLabel:classLabel selectedClassLabel:selectedClassLabel selectedLabel:selectedLabel selectedObject:selectedObject]; } @catch (id exception) { NSLog(@"%@",exception); } - -#define ADD_NUMBER(NUMBER,LABEL) @try { [view addObject:[FSNumber numberWithDouble:(NUMBER)] withLabel:(LABEL) toMatrix:m classLabel:classLabel selectedClassLabel:selectedClassLabel selectedLabel:selectedLabel selectedObject:selectedObject]; } @catch (id exception) { NSLog(@"%@",exception); } - -#define ADD_SEL(S,LABEL) @try { [view addObject:[FSBlock blockWithSelector:(S)] withLabel:(LABEL) toMatrix:m leaf:YES classLabel:classLabel selectedClassLabel:selectedClassLabel selectedLabel:selectedLabel selectedObject:selectedObject indentationLevel:0]; } @catch (id exception) { NSLog(@"%@",exception); } - -#define ADD_SEL_NOT_NULL(S,LABEL) @try { {SEL selector = (S); if (selector != (SEL)0) [view addObject:[FSBlock blockWithSelector:selector] withLabel:(LABEL) toMatrix:m leaf:YES classLabel:classLabel selectedClassLabel:selectedClassLabel selectedLabel:selectedLabel selectedObject:selectedObject indentationLevel:0]; } } @catch (id exception) { NSLog(@"%@",exception); } - -#define ADD_SIZE(SIZE,LABEL) @try { [view addObject:[NSValue valueWithSize:(SIZE)] withLabel:(LABEL) toMatrix:m classLabel:classLabel selectedClassLabel:selectedClassLabel selectedLabel:selectedLabel selectedObject:selectedObject]; } @catch (id exception) { NSLog(@"%@",exception); } - -#define ADD_RECT(RECT,LABEL) @try { [view addObject:[NSValue valueWithRect:(RECT)] withLabel:(LABEL) toMatrix:m classLabel:classLabel selectedClassLabel:selectedClassLabel selectedLabel:selectedLabel selectedObject:selectedObject]; } @catch (id exception) { NSLog(@"%@",exception); } - -#define ADD_POINT(POINT,LABEL) @try { [view addObject:[NSValue valueWithPoint:(POINT)] withLabel:(LABEL) toMatrix:m classLabel:classLabel selectedClassLabel:selectedClassLabel selectedLabel:selectedLabel selectedObject:selectedObject]; } @catch (id exception) { NSLog(@"%@",exception); } - -#define ADD_POINTER(POINTER,LABEL) @try { if (POINTER == NULL) ADD_OBJECT(nil,LABEL) else [view addObject:[[[FSGenericPointer alloc] initWithCPointer:(POINTER) freeWhenDone:NO type:@encode(void)] autorelease] withLabel:(LABEL) toMatrix:m classLabel:classLabel selectedClassLabel:selectedClassLabel selectedLabel:selectedLabel selectedObject:selectedObject]; } @catch (id exception) { NSLog(@"%@",exception); } - -#define ADD_RANGE(RANGE,LABEL) @try { [view addObject:[NSValue valueWithRange:(RANGE)] withLabel:(LABEL) toMatrix:m classLabel:classLabel selectedClassLabel:selectedClassLabel selectedLabel:selectedLabel selectedObject:selectedObject]; } @catch (id exception) { NSLog(@"%@",exception); } - -#define ADD_CLASS_LABEL(LABEL) {classLabel = (LABEL); [view addClassLabel:classLabel toMatrix:m];} - -@synthesize baseClasses; - -- (id)init -{ - return [self initWithObjectBrowserView:nil]; -} - -- (id)initWithObjectBrowserView:(FSObjectBrowserView *)theView -{ - self = [super init]; - if (self) { - - if (!theView) { - return nil; - } - - view = [[theView retain] autorelease]; - } - - return self; -} + if (type == NSTabletProximity || ((type == NSLeftMouseDown || type == NSLeftMouseUp || type == NSRightMouseDown || type == NSRightMouseUp || type == NSOtherMouseDown || type == NSOtherMouseUp || type == NSMouseMoved || type == NSLeftMouseDragged || type == NSRightMouseDragged || type == NSOtherMouseDragged || type == NSScrollWheel) && [object subtype] == NSTabletProximityEventSubtype)) + ADD_NUMBER(o, capabilityMask) -- (void)dealloc -{ - [baseClasses release]; - [super dealloc]; -} + if (type == NSKeyDown || type == NSKeyUp) { + ADD_OBJECT(o, characters) + ADD_OBJECT(o, charactersIgnoringModifiers) + } + if (type == NSLeftMouseDown || type == NSLeftMouseUp || type == NSRightMouseDown || type == NSRightMouseUp || type == NSOtherMouseDown || type == NSOtherMouseUp) + ADD_NUMBER(o, clickCount) + if (type == NSAppKitDefined || type == NSSystemDefined || type == NSApplicationDefined) { + ADD_NUMBER(o, data1) + ADD_NUMBER(o, data2) + } + if (type == NSMouseMoved || type == NSLeftMouseDragged || type == NSRightMouseDragged || type == NSOtherMouseDragged || type == NSScrollWheel) { + ADD_NUMBER(o, deltaX) + ADD_NUMBER(o, deltaY) + ADD_NUMBER(o, deltaZ) + } -- (void)fillMatrix:(NSMatrix *)theMatrix withObject:(id)object -{ - - [object retain]; // (1) To be sure object will not be deallocated as a side effect of the removing of rows - - m = theMatrix; - selectedCell = [[[m selectedCell] retain] autorelease]; // retain and autorelease in order to avoid premature deallocation as a side effect of the removing of rows - selectedClassLabel = [[[selectedCell classLabel] copy] autorelease]; // copy and autorelease in order to avoid premature invalidation as a side effect of the removing of rows - selectedLabel = [[[selectedCell label] copy] autorelease]; // copy and autorelease in order to avoid premature invalidation as a side effect of the removing of rows - selectedObject = [selectedCell representedObject]; - classLabel = @""; - - //for (int j = [m numberOfRows]-1; j >= 0; j--) [m removeRow:j]; // Remove all rows. As a side effect, this will supress the selection. - [m renewRows:0 columns:1]; - - [view addObject:object toMatrix:m label:@"" classLabel:@"" indentationLevel:0 leaf:YES]; - [object release]; // It's now safe to match the retain in instruction (1) - - if (selectedObject == object && [selectedClassLabel isEqualToString:@""] && [selectedLabel isEqualToString:@""]) - [m selectCellAtRow:[m numberOfRows]-1 column:0]; - - if (object != nil && object == [object class]) // object is a class - { - NSMutableArray *classNames = [NSMutableArray array]; - NSUInteger count, i; - Class *classes = allClasses(&count); - - @try - { - for (i = 0; i < count; i++) - { -#ifdef __LP64__ - if (class_getSuperclass(classes[i]) == object) [classNames addObject:NSStringFromClass(classes[i])]; -#else - if (classes[i]->super_class == object) [classNames addObject:NSStringFromClass(classes[i])]; -#endif - } - } - @finally - { - free(classes); - } - [classNames sortUsingFunction:FSCompareClassNamesForAlphabeticalOrder context:NULL]; - - [view addBlankRowToMatrix:m]; - -#ifdef __LP64__ - if (class_getSuperclass(object) == nil) [view addLabelAlone:@"This class is a root class" toMatrix:m]; - else [view addObject:class_getSuperclass((Class)object) withLabel:@"Superclass" toMatrix:m classLabel:@"" selectedClassLabel:selectedClassLabel selectedLabel:selectedLabel selectedObject:selectedObject]; -#else - if (((Class)object)->super_class == nil) [view addLabelAlone:@"This class is a root class" toMatrix:m]; - else [view addObject:((Class)object)->super_class withLabel:@"Superclass" toMatrix:m classLabel:@"" selectedClassLabel:selectedClassLabel selectedLabel:selectedLabel selectedObject:selectedObject]; -#endif - - if ([classNames count] == 0) [view addLabelAlone:@"No subclasses" toMatrix:m]; - [view addClassesWithNames:classNames withLabel:@"Direct subclasses" toMatrix:m classLabel:@"" selectedClassLabel:selectedClassLabel selectedLabel:selectedLabel selectedObject:selectedObject]; - } - else if ([object isKindOfClass:[NSManagedObject class]]) - { - NSManagedObject *o = object; - classLabel = @"NSManagedObject Properties"; - NSArray *attributeKeys = [[[[o entity] attributesByName] allKeys] sortedArrayUsingSelector:@selector(compare:)]; - [view addPropertyLabel:@"Attributes" toMatrix:m]; - for (NSUInteger i = 0, count = [attributeKeys count]; i < count; i++) - { - NSString *key = [attributeKeys objectAtIndex:i]; - ADD_OBJECT([o valueForKey:key], key) - } - - NSArray *relationshipKeys = [[[[o entity] relationshipsByName] allKeys] sortedArrayUsingSelector:@selector(compare:)]; - [view addPropertyLabel:@"Relationships" toMatrix:m]; - for (NSUInteger i = 0, count = [relationshipKeys count]; i < count; i++) - { - NSString *key = [relationshipKeys objectAtIndex:i]; - ADD_OBJECT([o valueForKey:key], key) - } - - ADD_CLASS_LABEL(@"NSManagedObject Info"); - ADD_OBJECT( [o entity] ,@"Entity") - ADD_BOOL( [o isDeleted] ,@"Is deleted") - ADD_BOOL( [o isInserted] ,@"Is inserted") - ADD_BOOL( [o isUpdated] ,@"Is updated") - ADD_OBJECT( [o managedObjectContext] ,@"Managed object context") - ADD_OBJECT( [o objectID] ,@"Object ID") - } - else if (([object isKindOfClass:[NSArray class]] || [object isKindOfClass:[NSDictionary class]] || [object isKindOfClass:[NSSet class]]) - && [object count] < 500 ) // We display the elements only if there is less than a certain number of them - { - [view addBlankRowToMatrix:m]; - if ([object isKindOfClass:[NSArray class]]) - { - NSArray *o = object; - if ([o count] == 0) [view addLabelAlone:@"This array is empty" toMatrix:m]; - [view addObjects:o withLabel:@"Elements" toMatrix:m classLabel:@"" selectedClassLabel:selectedClassLabel selectedLabel:selectedLabel selectedObject:selectedObject]; - } - else if ([object isKindOfClass:[NSDictionary class]]) - { - NSDictionary *o = object; - if ([o count] == 0) [view addLabelAlone:@"This dictionary is empty" toMatrix:m]; - [view addDictionary:o withLabel:@"Entries" toMatrix:m classLabel:@"" selectedClassLabel:selectedClassLabel selectedLabel:selectedLabel selectedObject:selectedObject]; - } - else if ([object isKindOfClass:[NSSet class]]) - { - NSSet *o = object; - if ([o count] == 0) [view addLabelAlone:@"This set is empty" toMatrix:m]; - [view addObjects:[object allObjects] withLabel:@"Elements" toMatrix:m classLabel:@"" selectedClassLabel:selectedClassLabel selectedLabel:selectedLabel selectedObject:selectedObject]; - } - } - else if ([object isKindOfClass:[FSAssociation class]]) - { - FSAssociation *o = object; - [view addBlankRowToMatrix:m]; - [view addObject:[o key] withLabel:@"Key" toMatrix:m classLabel:@"" selectedClassLabel:selectedClassLabel selectedLabel:selectedLabel selectedObject:selectedObject]; - [view addObject:[o value] withLabel:@"Value" toMatrix:m classLabel:@"" selectedClassLabel:selectedClassLabel selectedLabel:selectedLabel selectedObject:selectedObject]; - } - else if ([object isKindOfClass:[NSView class]]) - { - NSView *o = object; - [view addBlankRowToMatrix:m]; - - [view addObject:[o superview] withLabel:@"Superview" toMatrix:m classLabel:@"" selectedClassLabel:selectedClassLabel selectedLabel:selectedLabel selectedObject:selectedObject]; - - if ([[o subviews] count] == 0) [view addLabelAlone:@"No subviews" toMatrix:m]; - else [view addObjects:[o subviews] withLabel:@"Subviews" toMatrix:m classLabel:@"" selectedClassLabel:selectedClassLabel selectedLabel:selectedLabel selectedObject:selectedObject]; - } - else if ([object isKindOfClass:[FSCNBase class]]) - { - [view addBlankRowToMatrix:m]; - - if ([object isKindOfClass:[FSCNArray class]]) - { - FSCNArray *o = object; - if (o->count == 0) [view addLabelAlone:@"An empty array" toMatrix:m]; - else [view addObjects:[NSArray arrayWithObjects:o->elements count:o->count] withLabel:@"Elements" toMatrix:m classLabel:@"" selectedClassLabel:selectedClassLabel selectedLabel:selectedLabel selectedObject:selectedObject]; - } - else if ([object isKindOfClass:[FSCNAssignment class]]) - { - FSCNAssignment *o = object; - [view addObject:o->left withLabel:@"lvalue" toMatrix:m classLabel:@"" selectedClassLabel:selectedClassLabel selectedLabel:selectedLabel selectedObject:selectedObject]; - [view addObject:o->right withLabel:@"rvalue" toMatrix:m classLabel:@"" selectedClassLabel:selectedClassLabel selectedLabel:selectedLabel selectedObject:selectedObject]; - } - else if ([object isKindOfClass:[FSCNBlock class]]) - { - FSCNBlock *o = object; - [view addObject:[o->blockRep ast] withLabel:@"Abstract syntax tree" toMatrix:m classLabel:@"" selectedClassLabel:selectedClassLabel selectedLabel:selectedLabel selectedObject:selectedObject]; - } - else if ([object isKindOfClass:[FSCNCascade class]]) - { - FSCNCascade *o = object; - [view addObject:o->receiver withLabel:@"Receiver" toMatrix:m classLabel:@"" selectedClassLabel:selectedClassLabel selectedLabel:selectedLabel selectedObject:selectedObject]; - [view addObjects:[NSArray arrayWithObjects:o->messages count:o->messageCount] withLabel:@"Message sends" toMatrix:m classLabel:@"" selectedClassLabel:selectedClassLabel selectedLabel:selectedLabel selectedObject:selectedObject]; - } - else if ([object isKindOfClass:[FSCNCategory class]]) - { - FSCNCategory *o = object; - [view addObject:o->className withLabel:@"Class name" toMatrix:m classLabel:@"" selectedClassLabel:selectedClassLabel selectedLabel:selectedLabel selectedObject:selectedObject]; - [view addObjects:o->methods withLabel:@"Methods" toMatrix:m classLabel:@"" selectedClassLabel:selectedClassLabel selectedLabel:selectedLabel selectedObject:selectedObject]; - } - else if ([object isKindOfClass:[FSCNClassDefinition class]]) - { - FSCNClassDefinition *o = object; - [view addObject:o->className withLabel:@"Class name" toMatrix:m classLabel:@"" selectedClassLabel:selectedClassLabel selectedLabel:selectedLabel selectedObject:selectedObject]; - [view addObject:o->superclassName withLabel:@"Superclass name" toMatrix:m classLabel:@"" selectedClassLabel:selectedClassLabel selectedLabel:selectedLabel selectedObject:selectedObject]; - [view addObjects:o->civarNames withLabel:@"Class instance variables names" toMatrix:m classLabel:@"" selectedClassLabel:selectedClassLabel selectedLabel:selectedLabel selectedObject:selectedObject]; - [view addObjects:o->ivarNames withLabel:@"Instance variables names" toMatrix:m classLabel:@"" selectedClassLabel:selectedClassLabel selectedLabel:selectedLabel selectedObject:selectedObject]; - [view addObjects:o->methods withLabel:@"Methods" toMatrix:m classLabel:@"" selectedClassLabel:selectedClassLabel selectedLabel:selectedLabel selectedObject:selectedObject]; - } - else if ([object isKindOfClass:[FSCNDictionary class]]) - { - FSCNDictionary *o = object; - if (o->count == 0) [view addLabelAlone:@"An empty dictionary" toMatrix:m]; - else [view addObjects:[NSArray arrayWithObjects:o->entries count:o->count] withLabel:@"Entries" toMatrix:m classLabel:@"" selectedClassLabel:selectedClassLabel selectedLabel:selectedLabel selectedObject:selectedObject]; - } - else if ([object isKindOfClass:[FSCNMethod class]]) - { - FSCNMethod *o = object; - [view addObject:o->method->code withLabel:@"Abstract syntax tree" toMatrix:m classLabel:@"" selectedClassLabel:selectedClassLabel selectedLabel:selectedLabel selectedObject:selectedObject]; - } - else if ([object isKindOfClass:[FSCNMessage class]]) - { - FSCNMessage *o = object; - [view addObject:o->receiver withLabel:@"Receiver" toMatrix:m classLabel:@"" selectedClassLabel:selectedClassLabel selectedLabel:selectedLabel selectedObject:selectedObject]; - - if ([object isKindOfClass:[FSCNBinaryMessage class]]) - { - FSCNBinaryMessage *o = object; - [view addObject:o->argument withLabel:@"Argument" toMatrix:m classLabel:@"" selectedClassLabel:selectedClassLabel selectedLabel:selectedLabel selectedObject:selectedObject]; - } - else if ([object isKindOfClass:[FSCNKeywordMessage class]]) - { - FSCNKeywordMessage *o = object; - [view addObjects:[NSArray arrayWithObjects:o->arguments count:o->argumentCount] withLabel:(o->argumentCount > 1 ? @"Arguments" : @"Argument") toMatrix:m classLabel:@"" selectedClassLabel:selectedClassLabel selectedLabel:selectedLabel selectedObject:selectedObject]; - } - } - else if ([object isKindOfClass:[FSCNPrecomputedObject class]]) - { - FSCNPrecomputedObject *o = object; - [view addObject:o->object withLabel:@"Precomputed object" toMatrix:m classLabel:@"" selectedClassLabel:selectedClassLabel selectedLabel:selectedLabel selectedObject:selectedObject]; - } - else if ([object isKindOfClass:[FSCNStatementList class]]) - { - FSCNStatementList *o = object; - [view addObject:[NSNumber numberWithUnsignedInteger:o->statementCount] withLabel:@"Number of statements" toMatrix:m classLabel:@"" selectedClassLabel:selectedClassLabel selectedLabel:selectedLabel selectedObject:selectedObject]; - [view addObjects:[NSArray arrayWithObjects:o->statements count:o->statementCount] withLabel:@"Statements" toMatrix:m classLabel:@"" selectedClassLabel:selectedClassLabel selectedLabel:selectedLabel selectedObject:selectedObject]; - } - else if ([object isKindOfClass:[FSCNReturn class]]) - { - FSCNReturn *o = object; - [view addObject:o->expression withLabel:@"Expression" toMatrix:m classLabel:@"" selectedClassLabel:selectedClassLabel selectedLabel:selectedLabel selectedObject:selectedObject]; - } - - //FSCNBase *o = object; - //[self addObject:[NSNumber numberWithInteger:o->firstCharIndex] withLabel:@"Index of first character in source code" toMatrix:m classLabel:@"" selectedClassLabel:selectedClassLabel selectedLabel:selectedLabel selectedObject:selectedObject]; - //[self addObject:[NSNumber numberWithInteger:o->lastCharIndex] withLabel:@"Index of last character in source code" toMatrix:m classLabel:@"" selectedClassLabel:selectedClassLabel selectedLabel:selectedLabel selectedObject:selectedObject]; - } - - /////////////////// Objective-C 2.0 declared properties /////////////////// - if ([[NSUserDefaults standardUserDefaults] boolForKey:@"FScriptAutomaticallyIntrospectDeclaredProperties"]) - { - Class cls = [object classOrMetaclass]; - while (cls) - { - unsigned int i, count; - objc_property_t *properties = class_copyPropertyList(cls, &count); - if (properties != NULL && !(cls == [NSView class]) ) // Second part of condition is a quick fix to avoid bloating display for the NSView class with a "one property" section (10.5.0) or spurious properties (10.6). TODO: revise this. - { - classLabel = [NSString stringWithFormat:@"%@ Properties", [cls printString]]; - [view addClassLabel:classLabel toMatrix:m color:[NSColor magentaColor]]; - - for (i = 0; i < count; i++) - { - NSString *propertyName = [NSString stringWithUTF8String:property_getName(properties[i])]; - id propertyValue = nil; // initialized to nil in order to shut down a spurious warning - NSString *errorMessage = nil; - - @try - { - propertyValue = [[[[@"[:object| object " stringByAppendingString:propertyName] stringByAppendingString:@"]"] asBlock] value:object]; - } - @catch (id exception) - { - errorMessage = [@"F-Script can't display the value of this property. " stringByAppendingString:FSErrorMessageFromException(exception)]; - [view addObject:errorMessage withLabel:propertyName toMatrix:m leaf:YES classLabel:classLabel selectedClassLabel:selectedClassLabel selectedLabel:selectedLabel selectedObject:selectedObject indentationLevel:0]; - } - if (!errorMessage) ADD_OBJECT(propertyValue, propertyName) - } - free(properties); - } - if (cls == [cls superclass]) // Defensive programming against flawed class hierarchies with infinite loops. - cls = nil; - else - cls = [cls superclass]; - } - } - - /////////////////// Bindings /////////////////// - if ([object respondsToSelector:@selector(exposedBindings)] && [object respondsToSelector:@selector(infoForBinding:)]) - { - NSUInteger i, count; - NSArray *exposedBindings = nil; - - // Several Cocoa objects have a buggy implementation of the exposedBindings method (e.g. NSTextView), - // which leads to an exception being thrown when the method is called on certain *class* objects. - // We work around these bugs here by preventing the buggy exception to interupt the current method. - // Note: I'm writing this in Mac OS X 10.4.6. - // Update for 10.5: the exposedBindings method now crash for certain class objects. I work around this - // bellow by not calling it at all on class objects. - @try - { - if ([object class] != object) - exposedBindings = [object exposedBindings]; - } - @catch (id exeption) - {} - - if (exposedBindings) - { - for (i = 0, count = [exposedBindings count]; i < count; i++) - if ([object infoForBinding:[exposedBindings objectAtIndex:i]]) - break; - - if (i < count && count > 0) - { - classLabel = @"Bindings"; - [view addClassLabel:classLabel toMatrix:m color:[NSColor colorWithCalibratedRed:0 green:0.7098 blue:1 alpha:1]]; - - for (i = 0, count = [exposedBindings count]; i < count; i++) - { - [view addBindingForObject:object withName:[exposedBindings objectAtIndex:i] toMatrix:m classLabel:classLabel selectedClassLabel:selectedClassLabel selectedLabel:selectedLabel selectedObject:selectedObject]; - } - - ADD_OBJECT(exposedBindings, @"Exposed Bindings"); - } - } - } - - for (Class baseClass in self.baseClasses) { - if ([object isKindOfClass:baseClass]) { - NSString *method = [NSString stringWithFormat:@"add%@:", [baseClass className]]; - SEL selector = NSSelectorFromString(method); - - NSAssert([self respondsToSelector:selector], @"Missing base class method"); - - [self performSelector:selector withObject:object]; - - break; - } - } -} - -- (NSMutableArray *)baseClasses -{ - if (!baseClasses) { - baseClasses = [[NSMutableArray alloc] initWithObjects: - [FSGenericPointer class], - [FSObjectPointer class], - [NSAffineTransform class], - [NSAlert class], - [NSAnimation class], - [NSAnimationContext class], - [NSAttributedString class], - [NSBezierPath class], - [NSCell class], - [NSCollectionViewItem class], - [NSComparisonPredicate class], - [NSCompoundPredicate class], - [NSController class], - [NSCursor class], - [NSDockTile class], - [NSDocument class], - [NSDocumentController class], - [NSEntityDescription class], - [NSEvent class], - [NSExpression class], - [NSFetchRequest class], - [NSFileWrapper class], - [NSFont class], - [NSFontDescriptor class], - [NSFontManager class], - [NSGlyphInfo class], - [NSGlyphGenerator class], - [NSGradient class], - [NSGraphicsContext class], - [NSImage class], - [NSImageRep class], - [NSLayoutManager class], - [NSManagedObjectContext class], - [NSManagedObjectID class], - [NSManagedObjectModel class], - [NSMenu class], - [NSMenuItem class], - [NSOpenGLContext class], - [NSOpenGLPixelBuffer class], - [NSOpenGLPixelFormat class], - [NSPageLayout class], - [NSParagraphStyle class], - [NSPersistentStoreCoordinator class], - [NSPredicateEditorRowTemplate class], - [NSPropertyDescription class], - [NSResponder class], - [NSRulerMarker class], - [NSScreen class], - [NSShadow class], - [NSStatusBar class], - [NSStatusItem class], - [NSTabViewItem class], - [NSTableColumn class], - [NSTextAttachment class], - [NSTextBlock class], - [NSTextContainer class], - [NSTextList class], - [NSTextTab class], - [NSToolbar class], - [NSToolbarItem class], - [NSTrackingArea class], - [NSUndoManager class], - [NSATSTypesetter class], - nil]; - } - return baseClasses; -} -- (void)addFSGenericPointer:(id)object -{ - FSGenericPointer *o = object; - NSArray *memoryContent = [o memoryContent]; - - if (memoryContent) - { - ADD_CLASS_LABEL(@"FSGenericPointer Info"); - ADD_OBJECT( memoryContent ,@"Memory content") - ADD_OBJECT_NOT_NIL( [o memoryContentUTF8] ,@"Memory content as UTF8 string") - } -} - -- (void)addFSObjectPointer:(id)object -{ - FSObjectPointer *o = object; - NSArray *memoryContent = [o memoryContent]; - - if (memoryContent) - { - ADD_CLASS_LABEL(@"FSObjectPointer Info"); - ADD_OBJECT( memoryContent ,@"Memory content") - } -} - -- (void)addNSAffineTransform:(id)object -{ - NSAffineTransform *o = object; - NSAffineTransformStruct s = [o transformStruct]; - ADD_CLASS_LABEL(@"NSAffineTransform Info"); - ADD_NUMBER( s.m11 ,@"m11") - ADD_NUMBER( s.m12 ,@"m12") - ADD_NUMBER( s.m21 ,@"m21") - ADD_NUMBER( s.m22 ,@"m22") - ADD_NUMBER( s.tX ,@"tX") - ADD_NUMBER( s.tY ,@"tY") -} - -- (void)addNSAlert:(id)object -{ - NSAlert *o = object; - ADD_CLASS_LABEL(@"NSAlert Info"); - ADD_OBJECT( [o accessoryView] ,@"Accessory view") - ADD_OBJECT( objectFromAlertStyle([o alertStyle]) ,@"Alert style") - ADD_OBJECTS( [o buttons] ,@"Buttons") - ADD_OBJECT_NOT_NIL( [o delegate] ,@"Delegate") - ADD_OBJECT_NOT_NIL( [o helpAnchor] ,@"Help anchor") - ADD_OBJECT( [o icon] ,@"Icon") - ADD_OBJECT( [o informativeText] ,@"Informative text") - ADD_OBJECT( [o messageText] ,@"Message text") - ADD_BOOL( [o showsHelp] ,@"Shows help") - ADD_BOOL( [o showsSuppressionButton] ,@"Shows suppression button") - ADD_OBJECT( [o suppressionButton] ,@"Suppression button") - ADD_OBJECT( [o window] ,@"Window") -} - -- (void)addNSAnimation:(id)object -{ - if ([object isKindOfClass:[NSViewAnimation class]]) - { - NSViewAnimation *o = object; - - if ([o viewAnimations] != nil) - { - ADD_CLASS_LABEL(@"NSViewAnimation Info"); - ADD_OBJECTS( [o viewAnimations] ,@"View animations") - } - } - - NSAnimation *o = object; - ADD_CLASS_LABEL(@"NSAnimation Info"); - ADD_OBJECT(objectFromAnimationBlockingMode([o animationBlockingMode]),@"Animation blocking mode") - ADD_OBJECT(objectFromAnimationCurve([o animationCurve]) ,@"Animation curve") - ADD_NUMBER( [o currentProgress] ,@"Current progress") - ADD_NUMBER( [o currentValue] ,@"Current value") - ADD_OBJECT( [o delegate] ,@"Delegate") - ADD_NUMBER( [o duration] ,@"Duration (in seconds)") - ADD_NUMBER( [o frameRate] ,@"Frame rate") - ADD_BOOL( [o isAnimating] ,@"Is animating") - ADD_OBJECTS( [o progressMarks] ,@"Progress marks") - ADD_OBJECT( [o runLoopModesForAnimating] ,@"Run loop modes for animating") -} - -- (void)addNSAnimationContext:(id)object -{ - NSAnimationContext *o = object; - ADD_CLASS_LABEL(@"NSAnimationContext Info"); - ADD_NUMBER( [o duration] ,@"Duration (in seconds)") -} - -- (void)addNSAttributedString:(id)object -{ - if ([object isKindOfClass:[NSMutableAttributedString class]]) - { - if ([object isKindOfClass:[NSTextStorage class]]) - { - NSTextStorage *o = object; - ADD_CLASS_LABEL(@"NSTextStorage Info"); - //ADD_OBJECT( [o attributeRuns] ,@"Attribute runs") - ADD_NUMBER( [o changeInLength] ,@"Change in length") - ADD_OBJECT_NOT_NIL( [o delegate] ,@"Delegate") - ADD_OBJECT(objectFromTextStorageEditedMask([o editedMask]) ,@"Edited mask") - ADD_RANGE( [o editedRange] ,@"Edited range") - ADD_BOOL( [o fixesAttributesLazily] ,@"Fixes attributes lazily") - ADD_OBJECT( [o font] ,@"Font") - ADD_OBJECT( [o foregroundColor] ,@"Foreground color") - ADD_OBJECTS( [o layoutManagers] ,@"Layout managers") - //ADD_OBJECT( [o paragraphs] ,@"Paragraphs") // Note: invoking "paragraphs" and retaining the result cause the result of "layoutManager" to become trash ! - //ADD_OBJECT( [o words] ,@"Words") - } - //NSMutableAttributedString *o = object; - //[self addClassLabel:@"NSMutableAttributedString Info" toMatrix:m]; - } - - //NSAttributedString *o = object; - //[self addClassLabel:@"NSAttributedString Info" toMatrix:m]; -} - -- (void)addNSBezierPath:(id)object -{ - NSBezierPath *o = object; - ADD_CLASS_LABEL(@"NSBezierPath Info"); - ADD_RECT( [o bounds] ,@"Bounds") - ADD_RECT( [o controlPointBounds] ,@"Control point bounds") - if (![o isEmpty]) ADD_POINT([o currentPoint] ,@"Current point") - ADD_NUMBER( [o elementCount] ,@"Element count") - ADD_NUMBER( [o flatness] ,@"Flatness") - ADD_BOOL( [o isEmpty] ,@"Is empty") - ADD_OBJECT(objectFromLineCapStyle([o lineCapStyle]) ,@"Line cap style") - ADD_OBJECT(objectFromLineJoinStyle([o lineJoinStyle]) ,@"Line join style") - ADD_NUMBER( [o lineWidth] ,@"Line width") - ADD_NUMBER( [o miterLimit] ,@"Miter limit") - ADD_OBJECT(objectFromWindingRule([o windingRule]) ,@"Winding rule") -} - -- (void)addNSCell:(id)object -{ - if ([object isKindOfClass:[NSActionCell class]]) - { - if ([object isKindOfClass:[NSButtonCell class]]) - { - if ([object isKindOfClass:[NSMenuItemCell class]]) - { - if ([object isKindOfClass:[NSPopUpButtonCell class]]) - { - NSPopUpButtonCell *o = object; - ADD_CLASS_LABEL(@"NSPopUpButtonCell Info"); - ADD_BOOL( [o altersStateOfSelectedItem] ,@"Alters state of selected item") - ADD_OBJECT(objectFromPopUpArrowPosition([o arrowPosition]),@"Arrow position") - ADD_BOOL( [o autoenablesItems] ,@"Autoenables Items") - ADD_NUMBER( [o indexOfSelectedItem] ,@"Index of selected item") - ADD_OBJECTS( [o itemArray] ,@"Item array") - ADD_NUMBER( [o numberOfItems] ,@"Number of items") - ADD_OBJECT( [o objectValue] ,@"Object value") - ADD_OBJECT(objectFromRectEdge([o preferredEdge]) ,@"Preferred edge") - ADD_BOOL( [o pullsDown] ,@"Pulls down") - ADD_OBJECT( [o selectedItem] ,@"Selected item") - ADD_BOOL( [o usesItemFromMenu] ,@"Uses item from menu") + if (type == NSTabletPoint || type == NSTabletProximity || ((type == NSLeftMouseDown || type == NSLeftMouseUp || type == NSRightMouseDown || type == NSRightMouseUp || type == NSOtherMouseDown || type == NSOtherMouseUp || type == NSMouseMoved || type == NSLeftMouseDragged || type == NSRightMouseDragged || type == NSOtherMouseDragged || type == NSScrollWheel) && ([object subtype] == NSTabletProximityEventSubtype || [object subtype] == NSTabletPointEventSubtype))) + ADD_NUMBER(o, deviceID) + if (type == NSLeftMouseDown || type == NSLeftMouseUp || type == NSRightMouseDown || type == NSRightMouseUp || type == NSOtherMouseDown || type == NSOtherMouseUp || type == NSMouseMoved || type == NSLeftMouseDragged || type == NSRightMouseDragged || type == NSOtherMouseDragged || type == NSScrollWheel || type == NSMouseEntered || type == NSMouseExited || type == NSCursorUpdate) + ADD_NUMBER(o, eventNumber) + if (type == NSKeyDown) + ADD_BOOL(o, isARepeat) + if (type == NSTabletProximity || ((type == NSLeftMouseDown || type == NSLeftMouseUp || type == NSRightMouseDown || type == NSRightMouseUp || type == NSOtherMouseDown || type == NSOtherMouseUp || type == NSMouseMoved || type == NSLeftMouseDragged || type == NSRightMouseDragged || type == NSOtherMouseDragged || type == NSScrollWheel) && [object subtype] == NSTabletProximityEventSubtype)) + ADD_BOOL(o, isEnteringProximity) + if (type == NSKeyDown || type == NSKeyUp) + ADD_NUMBER(o, keyCode) + if (type == NSLeftMouseDown || type == NSLeftMouseUp || type == NSRightMouseDown || type == NSRightMouseUp || type == NSOtherMouseDown || type == NSOtherMouseUp || type == NSMouseMoved || type == NSLeftMouseDragged || type == NSRightMouseDragged || type == NSOtherMouseDragged || type == NSScrollWheel) + ADD_POINT(o, locationInWindow) + ADD_OPTIONS(o, modifierFlags, EventModifierFlags) + if (type == NSTabletProximity || ((type == NSLeftMouseDown || type == NSLeftMouseUp || type == NSRightMouseDown || type == NSRightMouseUp || type == NSOtherMouseDown || type == NSOtherMouseUp || type == NSMouseMoved || type == NSLeftMouseDragged || type == NSRightMouseDragged || type == NSOtherMouseDragged || type == NSScrollWheel) && [object subtype] == NSTabletProximityEventSubtype)) { + ADD_NUMBER(o, pointingDeviceID) + ADD_NUMBER(o, pointingDeviceSerialNumber) + ADD_ENUM(o, pointingDeviceType, PointingDeviceType) } - - NSMenuItemCell *o = object; - ADD_CLASS_LABEL(@"NSMenuItemCell Info"); - if ([[o menuItem] image]) - ADD_NUMBER( [o imageWidth] ,@"Image width") - ADD_BOOL( [o isHighlighted] ,@"Is highlighted") - if (![[[o menuItem] keyEquivalent] isEqualToString:@""]) - ADD_NUMBER( [o keyEquivalentWidth] ,@"Key equivalent width") - ADD_OBJECT( [o menuItem] ,@"Menu item") - ADD_BOOL( [o needsDisplay] ,@"Needs display") - ADD_BOOL( [o needsSizing] ,@"Needs sizing") - ADD_NUMBER( [o stateImageWidth] ,@"State image width") - ADD_NUMBER( [o titleWidth] ,@"Title width") - } - - NSButtonCell *o = object; - ADD_CLASS_LABEL(@"NSButtonCell Info"); - ADD_OBJECT_NOT_NIL( [o alternateImage] ,@"Alternate image") - ADD_OBJECT( [o alternateTitle] ,@"Alternate title") - ADD_OBJECT( [o attributedAlternateTitle] ,@"Attributed alternate title") - ADD_OBJECT( [o attributedTitle] ,@"Attributed title") - ADD_OBJECT( [o backgroundColor] ,@"Background color") - ADD_OBJECT(objectFromBezelStyle([o bezelStyle]) ,@"Bezel style") - ADD_OBJECT(objectFromGradientType([o gradientType]) ,@"Gradient type") - ADD_OBJECT(objectFromCellMask([o highlightsBy]) ,@"Highlights by") - ADD_BOOL( [o imageDimsWhenDisabled] ,@"Image dims when disabled") - ADD_OBJECT(objectFromCellImagePosition([o imagePosition]) ,@"Image position") - ADD_OBJECT(objectFromImageScaling([o imageScaling]) ,@"Image scaling") - ADD_BOOL( [o isTransparent] ,@"Is transparent") - ADD_OBJECT_NOT_NIL( [o keyEquivalentFont] ,@"Key equivalent font") - ADD_OBJECT(objectFromKeyModifierMask([o keyEquivalentModifierMask]) , @"Key equivalent modifier mask") - ADD_BOOL( [o showsBorderOnlyWhileMouseInside] ,@"Shows border only while mouse inside") - ADD_OBJECT(objectFromCellMask([o showsStateBy]) ,@"Shows state by") - ADD_OBJECT_NOT_NIL( [o sound] ,@"Sound") - ADD_OBJECT( [o title] ,@"Title") - } - else if ([object isKindOfClass:[NSDatePickerCell class]]) - { - NSDatePickerCell *o = object; - ADD_CLASS_LABEL(@"NSDatePickerCell Info"); - ADD_OBJECT( [o backgroundColor] ,@"Background color") - ADD_OBJECT( [o calendar] ,@"Calendar") - ADD_OBJECT(objectFromDatePickerElementFlags([o datePickerElements]),@"Date picker elements") - ADD_OBJECT(objectFromDatePickerMode([o datePickerMode]) ,@"Date picker mode") - ADD_OBJECT(objectFromDatePickerStyle([o datePickerStyle]) ,@"Date picker style") - ADD_OBJECT( [o dateValue] ,@"Date value") - ADD_OBJECT_NOT_NIL([o delegate] ,@"Delegate") - ADD_BOOL( [o drawsBackground] ,@"Draws background" ) - ADD_OBJECT_NOT_NIL([o locale] ,@"Locale") - ADD_OBJECT( [o maxDate] ,@"Max date") - ADD_OBJECT( [o minDate] ,@"Min date") - ADD_OBJECT( [o textColor] ,@"Text Color") - ADD_NUMBER( [o timeInterval] ,@"Time interval") - ADD_OBJECT( [o timeZone] ,@"Time zone") - } - else if ([object isKindOfClass:[NSFormCell class]]) - { - NSFormCell *o = object; - ADD_CLASS_LABEL(@"NSFormCell Info"); - ADD_OBJECT( [o attributedTitle] ,@"Attributed title") - ADD_OBJECT_NOT_NIL( [o placeholderAttributedString] ,@"Placeholder attributed string") - ADD_OBJECT_NOT_NIL( [o placeholderString] ,@"Placeholder string") - ADD_OBJECT(objectFromTextAlignment([o titleAlignment]) ,@"Title alignment") - ADD_OBJECT(objectFromWritingDirection([o titleBaseWritingDirection]),@"Title base writing direction") - ADD_OBJECT( [o titleFont] ,@"Title font") - ADD_NUMBER( [o titleWidth] ,@"Title width") - } - else if ([object isKindOfClass:[NSLevelIndicatorCell class]]) - { - NSLevelIndicatorCell *o = object; - ADD_CLASS_LABEL(@"NSLevelIndicatorCell Info"); - ADD_NUMBER( [o criticalValue] ,@"Critical value") - ADD_OBJECT(objectFromLevelIndicatorStyle([o levelIndicatorStyle]),@"Level indicator style") - ADD_NUMBER( [o maxValue] ,@"Max value") - ADD_NUMBER( [o minValue] ,@"Min value") - ADD_NUMBER( [o numberOfMajorTickMarks] ,@"Number of major tick marks") - ADD_NUMBER( [o numberOfTickMarks] ,@"Number of tick marks") - ADD_OBJECT(objectFromTickMarkPosition([o tickMarkPosition], NO),@"Tick mark position") - ADD_NUMBER( [o warningValue] ,@"Warning value") - } - else if ([object isKindOfClass:[NSPathCell class]]) - { - NSPathCell *o = object; - ADD_CLASS_LABEL(@"NSPathCell Info"); - ADD_OBJECTS( [o allowedTypes] ,@"Allowed types") - ADD_OBJECT_NOT_NIL([o backgroundColor] ,@"Background color") - ADD_OBJECT( [o delegate] ,@"Delegate") - ADD_SEL( [o doubleAction] ,@"Double action") - ADD_OBJECTS( [o pathComponentCells] ,@"Path component cells") - ADD_OBJECT(objectFromPathStyle([o pathStyle]) ,@"Path style") - ADD_OBJECT_NOT_NIL([o placeholderAttributedString] ,@"Placeholder attributed string") - ADD_OBJECT_NOT_NIL([o placeholderString] ,@"Placeholder string") - ADD_OBJECT_NOT_NIL([o URL] ,@"URL") - } - else if ([object isKindOfClass:[NSSegmentedCell class]]) - { - NSSegmentedCell *o = object; - NSInteger segmentCount = [o segmentCount]; - ADD_CLASS_LABEL(@"NSSegmentedCell Info"); - - ADD_NUMBER( segmentCount ,@"Segment count") - ADD_NUMBER( [o selectedSegment] ,@"Selected segment") - ADD_OBJECT(objectFromSegmentSwitchTracking([o trackingMode]),@"Tracking mode") - - for (NSInteger i = 0; i < segmentCount; i++) - { - ADD_OBJECT_NOT_NIL([o imageForSegment:i] ,([NSString stringWithFormat:@"Image for segment %ld",(long)i])) - ADD_OBJECT(objectFromImageScaling([o imageScalingForSegment:i]),([NSString stringWithFormat:@"Image scaling for segment %ld",(long)i])) - ADD_BOOL( [o isEnabledForSegment:i] ,([NSString stringWithFormat:@"Is enabled for segment %ld",(long)i])) - ADD_BOOL( [o isSelectedForSegment:i] ,([NSString stringWithFormat:@"Is selected for segment %ld",(long)i])) - ADD_OBJECT_NOT_NIL([o labelForSegment:i] ,([NSString stringWithFormat:@"Label for segment %ld",(long)i])) - ADD_OBJECT_NOT_NIL([o menuForSegment:i] ,([NSString stringWithFormat:@"Menu for segment %ld",(long)i])) - ADD_NUMBER( [o tagForSegment:i] ,([NSString stringWithFormat:@"Tag for segment %ld",(long)i])) - ADD_OBJECT_NOT_NIL([o toolTipForSegment:i] ,([NSString stringWithFormat:@"Tool tip for segment %ld",(long)i])) - ADD_NUMBER( [o widthForSegment:i] ,([NSString stringWithFormat:@"Width for segment %ld",(long)i])) - } - } - else if ([object isKindOfClass:[NSSliderCell class]]) - { - NSSliderCell *o = object; - ADD_CLASS_LABEL(@"NSSliderCell Info"); - ADD_BOOL( [o allowsTickMarkValuesOnly] ,@"Allows tick mark values only") - ADD_NUMBER( [o altIncrementValue] ,@"Alt increment value") - ADD_NUMBER( [(NSSliderCell*)o isVertical] ,@"Is vertical") - ADD_NUMBER( [o knobThickness] ,@"Knob thickness") - ADD_NUMBER( [o maxValue] ,@"Max value") - ADD_NUMBER( [o minValue] ,@"Min value") - ADD_NUMBER( [o numberOfTickMarks] ,@"Number of tick marks") - ADD_OBJECT( objectFromSliderType([o sliderType]) ,@"Slider type") - ADD_OBJECT(objectFromTickMarkPosition([o tickMarkPosition], [(NSSliderCell*)o isVertical] == 1),@"Tick mark position") - ADD_RECT( [o trackRect] ,@"Track rect") - } - else if ([object isKindOfClass:[NSStepperCell class]]) - { - NSStepperCell *o = object; - ADD_CLASS_LABEL(@"NSStepperCell Info"); - ADD_BOOL( [o autorepeat] ,@"Autorepeat") - ADD_NUMBER( [o increment] ,@"Increment") - ADD_NUMBER( [o maxValue] ,@"Max value") - ADD_NUMBER( [o minValue] ,@"Min value") - ADD_BOOL( [o valueWraps] ,@"Value wraps") - } - else if ([object isKindOfClass:[NSTextFieldCell class]]) - { - if ([object isKindOfClass:[NSComboBoxCell class]]) - { - NSComboBoxCell *o = object; - ADD_CLASS_LABEL(@"NSComboBoxCell Info"); - if ([o usesDataSource]) ADD_OBJECT([o dataSource] ,@"Data source") - ADD_BOOL( [o hasVerticalScroller] ,@"Has vertical scroller") - ADD_NUMBER( [o indexOfSelectedItem] ,@"Index of selected item") - ADD_SIZE( [o intercellSpacing] ,@"Intercell spacing") - ADD_BOOL( [o isButtonBordered] ,@"Is button bordered") - ADD_NUMBER( [o itemHeight] ,@"Item height") - ADD_NUMBER( [o numberOfItems] ,@"Number of items") - ADD_NUMBER( [o numberOfVisibleItems] ,@"Number of visible items") - if (![o usesDataSource] && [o indexOfSelectedItem] != -1) - ADD_OBJECT( [o objectValueOfSelectedItem] ,@"Object value of selected item") - if (![o usesDataSource]) - ADD_OBJECTS( [o objectValues] ,@"Object values") - ADD_BOOL( [o usesDataSource] ,@"Uses data source") - } - else if ([object isKindOfClass:[NSPathComponentCell class]]) - { - NSPathComponentCell *o = object; - ADD_CLASS_LABEL(@"NSPathComponentCell Info"); - ADD_OBJECT_NOT_NIL([o image] ,@"Image") - ADD_OBJECT_NOT_NIL([o URL] ,@"URL") - } - else if ([object isKindOfClass:[NSSearchFieldCell class]]) - { - NSSearchFieldCell *o = object; - ADD_CLASS_LABEL(@"NSSearchFieldCell Info"); - ADD_OBJECT( [o cancelButtonCell] ,@"Cancel button cell") - ADD_NUMBER( [o maximumRecents] ,@"Maximum recents") - ADD_OBJECTS( [o recentSearches] ,@"Recent searches") - ADD_OBJECT_NOT_NIL([o recentsAutosaveName] ,@"Recents autosave name") - ADD_OBJECT( [o searchButtonCell] ,@"Search button cell") - ADD_OBJECT_NOT_NIL([o searchMenuTemplate] ,@"Search menu template") - ADD_BOOL( [o sendsSearchStringImmediately] ,@"Sends search string immediately") - ADD_BOOL( [o sendsWholeSearchString] ,@"Sends whole search string") - } - else if ([object isKindOfClass:[NSTokenFieldCell class]]) - { - NSTokenField *o = object; - ADD_CLASS_LABEL(@"NSTokenField Info"); - ADD_NUMBER( [o completionDelay] ,@"Completion delay") - ADD_OBJECT_NOT_NIL([o delegate] ,@"Delegate") - ADD_OBJECT( [o tokenizingCharacterSet] ,@"Tokenizing character set") - ADD_OBJECT(objectFromTokenStyle([o tokenStyle]) ,@"Token style") - } - - NSTextFieldCell *o = object; - ADD_CLASS_LABEL(@"NSTextFieldCell Info"); - ADD_OBJECTS( [o allowedInputSourceLocales] ,@"Allowed input source locales") - ADD_OBJECT( [o backgroundColor] ,@"Background color") - ADD_OBJECT(objectFromTextFieldBezelStyle([o bezelStyle]) ,@"Bezel style") - ADD_BOOL( [o drawsBackground] ,@"Draws background") - ADD_OBJECT_NOT_NIL([o placeholderAttributedString] ,@"Placeholder attributed string") - ADD_OBJECT_NOT_NIL([o placeholderString] ,@"Placeholder string") - ADD_OBJECT( [o textColor] ,@"Text color") - } - } - else if ([object isKindOfClass:[NSBrowserCell class]]) - { - NSBrowserCell *o = object; - ADD_CLASS_LABEL(@"NSBrowserCell Info"); - ADD_OBJECT_NOT_NIL( [o alternateImage] ,@"Alternate image") - ADD_BOOL( [o isLeaf] ,@"Is leaf") - ADD_BOOL( [o isLoaded] ,@"Is loaded") - } - else if ([object isKindOfClass:[NSImageCell class]]) - { - NSImageCell *o = object; - ADD_CLASS_LABEL(@"NSImageCell Info"); - ADD_OBJECT(objectFromImageAlignment([o imageAlignment]) ,@"Image alignment") - ADD_OBJECT(objectFromImageScaling([o imageScaling]) ,@"Image scaling") - } - else if ([object isKindOfClass:[NSTextAttachmentCell class]]) - { - NSTextAttachmentCell *o = object; - ADD_CLASS_LABEL(@"NSTextAttachmentCell Info"); - ADD_OBJECT( [o attachment] ,@"Attachment") - ADD_POINT( [o cellBaselineOffset] ,@"Cell baseline offset") - ADD_SIZE( [o cellSize] ,@"Cell size") - ADD_BOOL( [o wantsToTrackMouse] ,@"Wants to track mouse") - } - - NSCell *o = object; - ADD_CLASS_LABEL(@"NSCell Info"); - ADD_BOOL( [o acceptsFirstResponder] ,@"Accepts first responder") - ADD_SEL_NOT_NULL( [o action] ,@"Action") - ADD_OBJECT( objectFromTextAlignment([o alignment]) ,@"Alignment") - ADD_BOOL( [o allowsEditingTextAttributes] ,@"Allows editing text attributes") - ADD_BOOL( [o allowsMixedState] ,@"Allows mixed state") - ADD_BOOL( [o allowsUndo] ,@"Allows undo") - //ADD_OBJECT( [o attributedStringValue] ,@"Attributed string value") - ADD_OBJECT(objectFromBackgroundStyle([o backgroundStyle]) ,@"Background style") - ADD_OBJECT(objectFromWritingDirection([o baseWritingDirection]) ,@"Base writing direction") - ADD_SIZE( [o cellSize] ,@"Cell size") - ADD_OBJECT(objectFromControlSize([o controlSize]) ,@"Control size") - ADD_OBJECT(objectFromControlTint([o controlTint]) ,@"Control tint") - ADD_OBJECT_NOT_NIL( [o controlView] ,@"Control view") - ADD_OBJECT(objectFromFocusRingType([o focusRingType]) ,@"Focus ring type") - ADD_OBJECT( [o font] ,@"Font") - ADD_OBJECT_NOT_NIL( [o formatter] ,@"Formatter") - ADD_OBJECT_NOT_NIL( [o image] ,@"Image") - if ([(NSCell *)o type] == NSTextCellType) ADD_BOOL([o importsGraphics] ,@"Imports graphics") - ADD_OBJECT(objectFromBackgroundStyle([o interiorBackgroundStyle]),@"Interior background style") - ADD_BOOL( [o isBezeled] ,@"Is bezeled") - ADD_BOOL( [o isBordered] ,@"Is bordered") - ADD_BOOL( [o isContinuous] ,@"Is continuous") - ADD_BOOL( [o isEditable] ,@"Is editable") - ADD_BOOL( [o isEnabled] ,@"Is enabled") - ADD_BOOL( [o isHighlighted] ,@"Is highlighted") - ADD_BOOL( [o isOpaque] ,@"Is opaque") - ADD_BOOL( [o isScrollable] ,@"Is scrollable") - ADD_BOOL( [o isSelectable] ,@"Is selectable") - if ([[o keyEquivalent] length]!=0) ADD_OBJECT([o keyEquivalent] ,@"Key equivalent") - ADD_OBJECT(objectFromLineBreakMode([o lineBreakMode]) ,@"Line break mode") - ADD_OBJECT_NOT_NIL( [o menu] ,@"Menu") - if ([[o mnemonic] length]!=0) ADD_OBJECT([o mnemonic] ,@"Mnemonic") - if ([o mnemonicLocation]!=NSNotFound) ADD_NUMBER([o mnemonicLocation],@"Mnemonic location") - ADD_OBJECT(objectFromCellStateValue([o nextState]) ,@"Next state") - //ADD_OBJECT( [o objectValue] ,@"Object value") - ADD_BOOL( [o refusesFirstResponder] ,@"Refuses first responder") - ADD_OBJECT_NOT_NIL( [o representedObject] ,@"Represented object") - ADD_BOOL( [o sendsActionOnEndEditing] ,@"Sends action on end editing") - ADD_BOOL( [o showsFirstResponder] ,@"Shows first responder") - ADD_OBJECT(objectFromCellStateValue([o state]) ,@"State") - ADD_NUMBER( [o tag] ,@"Tag") - ADD_OBJECT_NOT_NIL( [o target] ,@"Target") - ADD_OBJECT(objectFromCellType([(NSCell *)o type]) ,@"Type") - ADD_BOOL( [o wantsNotificationForMarkedText] ,@"Wants notification for marked text") - ADD_BOOL( [o wraps] ,@"Wraps") - } - -- (void)addNSCollectionViewItem:(id)object -{ - NSCollectionViewItem *o = object; - ADD_CLASS_LABEL(@"NSCollectionViewItem Info"); - ADD_OBJECT( [o collectionView] ,@"Collection view") - ADD_BOOL( [o isSelected] ,@"Is selected") - ADD_OBJECT( [o representedObject] ,@"Represented object") - ADD_OBJECT_NOT_NIL( [o view] ,@"View") -} - -- (void)addNSComparisonPredicate:(id)object -{ - NSComparisonPredicate *o = object; - ADD_CLASS_LABEL(@"NSComparisonPredicate Info"); - ADD_OBJECT(objectFromComparisonPredicateModifier([o comparisonPredicateModifier]), @"Comparison predicate modifier") - ADD_SEL_NOT_NULL( [o customSelector] ,@"Custom selector") - ADD_OBJECT( [o leftExpression] ,@"Left expression") - ADD_OBJECT(objectFromPredicateOperatorType([o predicateOperatorType]), @"Predicate operator type") - ADD_OBJECT( [o rightExpression] ,@"Right expression") -} - -- (void)addNSCompoundPredicate:(id)object -{ - NSCompoundPredicate *o = object; - ADD_CLASS_LABEL(@"NSCompoundPredicate Info") - ADD_OBJECT(objectFromCompoundPredicateType([o compoundPredicateType]) ,@"Compound predicate type") - ADD_OBJECTS( [o subpredicates] ,@"Subpredicates") -} - -- (void)addNSController:(id)object -{ - if ([object isKindOfClass:[NSObjectController class]]) - { - if ([object isKindOfClass:[NSArrayController class]]) - { - if ([object isKindOfClass:[NSDictionaryController class]]) - { - NSDictionaryController *o = object; - ADD_CLASS_LABEL(@"NSDictionaryController Info"); - ADD_OBJECTS( [o excludedKeys] ,@"Excluded keys") - ADD_OBJECTS( [o includedKeys] ,@"Included keys") - ADD_OBJECT( [o initialKey] ,@"Initial key") - ADD_OBJECT( [o initialValue] ,@"Initial value") - ADD_DICTIONARY( [o localizedKeyDictionary] ,@"Localized key dictionary") - ADD_OBJECT_NOT_NIL( [o localizedKeyTable] ,@"Localized key table") - } - - NSArrayController *o = object; - ADD_CLASS_LABEL(@"NSArrayController Info"); - ADD_BOOL( [o alwaysUsesMultipleValuesMarker] ,@"Always uses multiple values marker") - ADD_BOOL( [o automaticallyRearrangesObjects] ,@"Automatically rearranges objects") - ADD_OBJECTS( [o automaticRearrangementKeyPaths] ,@"Automatic rearrangement key paths") - ADD_BOOL( [o avoidsEmptySelection] ,@"Avoids empty selection") - ADD_BOOL( [o clearsFilterPredicateOnInsertion] ,@"Clears filter predicate on insertion") - ADD_BOOL( [o canInsert] ,@"Can insert") - ADD_BOOL( [o canSelectNext] ,@"Can select next") - ADD_BOOL( [o canSelectPrevious] ,@"Can select previous") - ADD_OBJECT_NOT_NIL( [o filterPredicate] ,@"Filter predicate") - ADD_BOOL( [o preservesSelection] ,@"Preserves selection") - if ([o selectionIndex] != NSNotFound) ADD_NUMBER([o selectionIndex], @"Selection index") - ADD_OBJECT( [o selectionIndexes] ,@"Selection indexes") - ADD_BOOL( [o selectsInsertedObjects] ,@"Selects inserted Objects") - ADD_OBJECTS( [o sortDescriptors] ,@"Sort descriptors") + if (type == NSLeftMouseDown || type == NSLeftMouseUp || type == NSRightMouseDown || type == NSRightMouseUp || type == NSOtherMouseDown || type == NSOtherMouseUp || type == NSMouseMoved || type == NSLeftMouseDragged || type == NSRightMouseDragged || type == NSOtherMouseDragged || type == NSScrollWheel) + ADD_NUMBER(o, pressure) + if (type == NSTabletPoint || ((type == NSLeftMouseDown || type == NSLeftMouseUp || type == NSRightMouseDown || type == NSRightMouseUp || type == NSOtherMouseDown || type == NSOtherMouseUp || type == NSMouseMoved || type == NSLeftMouseDragged || type == NSRightMouseDragged || type == NSOtherMouseDragged || type == NSScrollWheel) && [object subtype] == NSTabletPointEventSubtype)) + ADD_NUMBER(o, rotation) + if (type == NSAppKitDefined || type == NSSystemDefined || type == NSApplicationDefined || type == NSLeftMouseDown || type == NSLeftMouseUp || type == NSRightMouseDown || type == NSRightMouseUp || type == NSOtherMouseDown || type == NSOtherMouseUp || type == NSMouseMoved || type == NSLeftMouseDragged || type == NSRightMouseDragged || type == NSOtherMouseDragged || type == NSScrollWheel) + ADD_ENUM(o, subtype, EventSubtype) + if (type == NSTabletProximity || ((type == NSLeftMouseDown || type == NSLeftMouseUp || type == NSRightMouseDown || type == NSRightMouseUp || type == NSOtherMouseDown || type == NSOtherMouseUp || type == NSMouseMoved || type == NSLeftMouseDragged || type == NSRightMouseDragged || type == NSOtherMouseDragged || type == NSScrollWheel) && [object subtype] == NSTabletProximityEventSubtype)) { + ADD_NUMBER(o, systemTabletID) + ADD_NUMBER(o, tabletID) } - else if ([object isKindOfClass:[NSTreeController class]]) - { - NSTreeController *o = object; - ADD_CLASS_LABEL(@"NSTreeController Info"); - ADD_BOOL( [o alwaysUsesMultipleValuesMarker] ,@"Always uses multiple values marker") - ADD_BOOL( [o avoidsEmptySelection] ,@"Avoids empty selection") - ADD_BOOL( [o canAddChild] ,@"Can add child") - ADD_BOOL( [o canInsert] ,@"Can insert") - ADD_BOOL( [o canInsertChild] ,@"Can insert child") - ADD_OBJECT( [o childrenKeyPath] ,@"Children key path") - ADD_OBJECT( [o countKeyPath] ,@"Count key path") - ADD_OBJECT( [o leafKeyPath] ,@"Leaf key path") - ADD_BOOL( [o preservesSelection] ,@"Preserves selection") - ADD_OBJECTS( [o selectedNodes] ,@"Selected nodes") - ADD_OBJECTS( [o selectedObjects] ,@"Selected objects") - ADD_OBJECTS( [o selectionIndexPaths] ,@"Selection index paths") - ADD_BOOL( [o selectsInsertedObjects] ,@"Selects inserted Objects") - ADD_OBJECTS( [o sortDescriptors] ,@"Sort descriptors") - } - - NSObjectController *o = object; - ADD_CLASS_LABEL(@"NSObjectController Info"); - ADD_BOOL( [o automaticallyPreparesContent] ,@"Automatically prepares content") - ADD_BOOL( [o canAdd] ,@"Can add") - ADD_BOOL( [o canRemove] ,@"Can remove") - ADD_OBJECT( [o content] ,@"Content") - if ([o managedObjectContext] != nil) // Do not work when there is no managedObjectContext associated with the object - ADD_OBJECT_NOT_NIL( [o defaultFetchRequest] ,@"Default fetch request") - ADD_OBJECT_NOT_NIL( [o entityName] ,@"Entity name") - ADD_OBJECT_NOT_NIL( [o fetchPredicate] ,@"Fetch predicate") - ADD_BOOL( [o isEditable] ,@"Is editable") - ADD_OBJECT_NOT_NIL( [o managedObjectContext] ,@"Managed object context") - ADD_OBJECT( [o objectClass] ,@"Object class") - ADD_OBJECTS( [o selectedObjects] ,@"Selected objects") - ADD_OBJECT( [o selection] ,@"Selection") - ADD_BOOL( [o usesLazyFetching] ,@"Uses lazy fetching") - - } - else if ([object isKindOfClass:[NSUserDefaultsController class]]) - { - NSUserDefaultsController *o = object; - ADD_CLASS_LABEL(@"NSUserDefaultsController Info"); - ADD_BOOL( [o appliesImmediately] ,@"Applies immediately") - ADD_OBJECT( [o defaults] ,@"Defaults") - ADD_BOOL( [o hasUnappliedChanges] ,@"Has unapplied changes") - ADD_OBJECT( [o initialValues] ,@"Initial values") - ADD_OBJECT( [o values] ,@"Values") - } - - NSController *o = object; - ADD_CLASS_LABEL(@"NSController Info"); - ADD_BOOL( [o isEditing] ,@"Is editing") -} - -- (void)addNSCursor:(id)object -{ - NSCursor *o = object; - ADD_CLASS_LABEL(@"NSCursor Info"); - ADD_POINT( [o hotSpot] ,@"HotSpot") - ADD_OBJECT( [o image] ,@"Image") - ADD_BOOL( [o isSetOnMouseEntered] ,@"Is set on mouse entered") - ADD_BOOL( [o isSetOnMouseExited] ,@"Is set on mouse exited") -} - -- (void)addNSDockTile:(id)object -{ - NSDockTile *o = object; - ADD_CLASS_LABEL(@"NSDockTile Info"); - ADD_OBJECT( [o badgeLabel] ,@"Badge label") - ADD_OBJECT( [o contentView] ,@"Content view") - ADD_OBJECT( [o owner] ,@"Owner") - ADD_BOOL( [o showsApplicationBadge] ,@"Shows application badge") - ADD_SIZE( [o size] ,@"Size") -} - -- (void)addNSDocument:(id)object -{ - /* - if ([object isKindOfClass:NSClassFromString(@"NSPersistentDocument")]) - { - NSPersistentDocument *o = object; - ADD_CLASS_LABEL(@"NSPersistentDocument Info"); - } - */ - - NSDocument *o = object; - ADD_CLASS_LABEL(@"NSDocument Info"); - ADD_OBJECT_NOT_NIL( [o autosavedContentsFileURL] ,@"Autosaved contents file URL") - ADD_OBJECT( [o autosavingFileType] ,@"Autosaving file type") - ADD_OBJECT( [o displayName] ,@"Display name") - ADD_OBJECT( [o fileModificationDate] ,@"File modification date") - ADD_BOOL( [o fileNameExtensionWasHiddenInLastRunSavePanel],@"File name extension was hidden in last run save panel") - ADD_OBJECT( [o fileType] ,@"File type") - ADD_OBJECT( [o fileTypeFromLastRunSavePanel] ,@"File type from last run save panel") - ADD_OBJECT_NOT_NIL( [o fileURL] ,@"File URL") - ADD_BOOL( [o hasUnautosavedChanges] ,@"Has unautosaved changes") - ADD_BOOL( [o hasUndoManager] ,@"Has undo manager") - ADD_BOOL( [o isDocumentEdited] ,@"Is document edited") - ADD_BOOL( [o keepBackupFile] ,@"Keep backup file") - ADD_OBJECT( [o fileTypeFromLastRunSavePanel] ,@"File type from last run save panel") - ADD_OBJECT( [o printInfo] ,@"Print info") - ADD_BOOL( [o shouldRunSavePanelWithAccessoryView] ,@"Should run save panel with accessory view") - ADD_OBJECTS( [o windowControllers] ,@"Window controllers") - ADD_OBJECT( [o windowForSheet] ,@"Window for sheet") - ADD_OBJECT( [o windowNibName] ,@"Window nib name") -} - -- (void)addNSDocumentController:(id)object -{ - NSDocumentController *o = object; - ADD_CLASS_LABEL(@"NSDocumentController Info"); - ADD_NUMBER( [o autosavingDelay] ,@"Autosaving delay") - ADD_OBJECT( [o currentDirectory] ,@"Current directory") - ADD_OBJECT( [o currentDocument] ,@"Current document") - ADD_OBJECT( [o defaultType] ,@"Default type") - ADD_OBJECTS( [o documentClassNames] ,@"Document class names") - ADD_OBJECTS( [o documents] ,@"Documents") - ADD_BOOL( [o hasEditedDocuments] ,@"Has edited documents") - ADD_NUMBER( [o maximumRecentDocumentCount] ,@"Maximum recent document count") - ADD_OBJECT( [o recentDocumentURLs] ,@"Recent document URLs") -} - -- (void)addNSEntityDescription:(id)object -{ - NSEntityDescription *o = object; - ADD_CLASS_LABEL(@"NSEntityDescription Info"); - ADD_DICTIONARY( [o attributesByName] ,@"Attributes by name") - ADD_BOOL( [o isAbstract] ,@"Is abstract") - ADD_OBJECT( [o managedObjectClassName] ,@"Managed object class name") - ADD_OBJECT( [o managedObjectModel] ,@"Managed object model") - ADD_OBJECT( [o name] ,@"Name") - ADD_DICTIONARY( [o relationshipsByName] ,@"Relationships by name") - if ([[o subentities] count] != 0) - { - ADD_DICTIONARY( [o subentitiesByName] ,@"Subentities by Name") - } - ADD_OBJECT( [o superentity] ,@"Superentity") - ADD_DICTIONARY( [o userInfo] ,@"User info") -} - -- (void)addNSEvent:(id)object -{ - NSEvent *o = object; - NSEventType type = [o type]; - ADD_CLASS_LABEL(@"NSEvent Info"); - - if (type == NSTabletPoint || ((type == NSLeftMouseDown || type == NSLeftMouseUp || type == NSRightMouseDown || type == NSRightMouseUp || type == NSOtherMouseDown || type == NSOtherMouseUp || type == NSMouseMoved || type == NSLeftMouseDragged || type == NSRightMouseDragged || type == NSOtherMouseDragged || type == NSScrollWheel) && [object subtype] == NSTabletPointEventSubtype) ) - { - ADD_NUMBER( [o absoluteX] ,@"Absolute x") - ADD_NUMBER( [o absoluteY] ,@"Absolute y") - ADD_NUMBER( [o absoluteZ] ,@"Absolute z") - ADD_OBJECT(objectFromButtonMask([o buttonMask]) ,@"Button mask") - } - if (type == NSLeftMouseDown || type == NSLeftMouseUp || type == NSRightMouseDown || type == NSRightMouseUp || type == NSOtherMouseDown || type == NSOtherMouseUp) - ADD_NUMBER( [o buttonNumber] ,@"Button number") - - if (type == NSTabletProximity || ((type == NSLeftMouseDown || type == NSLeftMouseUp || type == NSRightMouseDown || type == NSRightMouseUp || type == NSOtherMouseDown || type == NSOtherMouseUp || type == NSMouseMoved || type == NSLeftMouseDragged || type == NSRightMouseDragged || type == NSOtherMouseDragged || type == NSScrollWheel) && [object subtype] == NSTabletProximityEventSubtype) ) - ADD_NUMBER( [o capabilityMask] ,@"Capability mask") - - if (type == NSKeyDown || type == NSKeyUp) - { - ADD_OBJECT( [(NSEvent *)o characters] ,@"Characters") - ADD_OBJECT( [o charactersIgnoringModifiers] ,@"Characters ignoring modifiers") - } - if (type == NSLeftMouseDown || type == NSLeftMouseUp || type == NSRightMouseDown || type == NSRightMouseUp || type == NSOtherMouseDown || type == NSOtherMouseUp) - ADD_NUMBER( [o clickCount] ,@"Click count") - if (type == NSAppKitDefined || type == NSSystemDefined || type == NSApplicationDefined) - { - ADD_NUMBER( [o data1] ,@"Data1") - ADD_NUMBER( [o data2] ,@"Data2") - } - if (type == NSMouseMoved || type == NSLeftMouseDragged || type == NSRightMouseDragged || type == NSOtherMouseDragged || type == NSScrollWheel) - { - ADD_NUMBER( [o deltaX] ,@"Delta x") - ADD_NUMBER( [o deltaY] ,@"Delta y") - ADD_NUMBER( [o deltaZ] ,@"Delta z") - } - - if (type == NSTabletPoint || type == NSTabletProximity || ((type == NSLeftMouseDown || type == NSLeftMouseUp || type == NSRightMouseDown || type == NSRightMouseUp || type == NSOtherMouseDown || type == NSOtherMouseUp || type == NSMouseMoved || type == NSLeftMouseDragged || type == NSRightMouseDragged || type == NSOtherMouseDragged || type == NSScrollWheel) && ([object subtype] == NSTabletProximityEventSubtype || [object subtype] == NSTabletPointEventSubtype)) ) - ADD_NUMBER( [o deviceID] ,@"Device ID") - if (type == NSLeftMouseDown || type == NSLeftMouseUp || type == NSRightMouseDown || type == NSRightMouseUp || type == NSOtherMouseDown || type == NSOtherMouseUp || type == NSMouseMoved || type == NSLeftMouseDragged || type == NSRightMouseDragged || type == NSOtherMouseDragged || type == NSScrollWheel || type == NSMouseEntered || type == NSMouseExited || type == NSCursorUpdate) - ADD_NUMBER( [o eventNumber] ,@"Event number") - if (type == NSKeyDown) - ADD_BOOL( [o isARepeat] ,@"Is a repeat") - if (type == NSTabletProximity || ((type == NSLeftMouseDown || type == NSLeftMouseUp || type == NSRightMouseDown || type == NSRightMouseUp || type == NSOtherMouseDown || type == NSOtherMouseUp || type == NSMouseMoved || type == NSLeftMouseDragged || type == NSRightMouseDragged || type == NSOtherMouseDragged || type == NSScrollWheel) && [object subtype] == NSTabletProximityEventSubtype) ) - ADD_BOOL( [o isEnteringProximity] ,@"Is entering proximity") - if (type == NSKeyDown || type == NSKeyUp) - ADD_NUMBER( [o keyCode] ,@"Key code") - if (type == NSLeftMouseDown || type == NSLeftMouseUp || type == NSRightMouseDown || type == NSRightMouseUp || type == NSOtherMouseDown || type == NSOtherMouseUp || type == NSMouseMoved || type == NSLeftMouseDragged || type == NSRightMouseDragged || type == NSOtherMouseDragged || type == NSScrollWheel) - ADD_POINT( [o locationInWindow] ,@"Location in window") - ADD_OBJECT(objectFromKeyModifierMask([o modifierFlags]) ,@"Modifier flags") - if (type == NSTabletProximity || ((type == NSLeftMouseDown || type == NSLeftMouseUp || type == NSRightMouseDown || type == NSRightMouseUp || type == NSOtherMouseDown || type == NSOtherMouseUp || type == NSMouseMoved || type == NSLeftMouseDragged || type == NSRightMouseDragged || type == NSOtherMouseDragged || type == NSScrollWheel) && [object subtype] == NSTabletProximityEventSubtype) ) - { - ADD_NUMBER( [o pointingDeviceID] ,@"Pointing device ID") - ADD_NUMBER( [o pointingDeviceSerialNumber] ,@"Pointing device serial number") - ADD_OBJECT(objectFromPointingDeviceType([o pointingDeviceType]),@"Pointing device type") - } - if (type == NSLeftMouseDown || type == NSLeftMouseUp || type == NSRightMouseDown || type == NSRightMouseUp || type == NSOtherMouseDown || type == NSOtherMouseUp || type == NSMouseMoved || type == NSLeftMouseDragged || type == NSRightMouseDragged || type == NSOtherMouseDragged || type == NSScrollWheel) - ADD_NUMBER( [o pressure] ,@"Pressure") - if (type == NSTabletPoint || ((type == NSLeftMouseDown || type == NSLeftMouseUp || type == NSRightMouseDown || type == NSRightMouseUp || type == NSOtherMouseDown || type == NSOtherMouseUp || type == NSMouseMoved || type == NSLeftMouseDragged || type == NSRightMouseDragged || type == NSOtherMouseDragged || type == NSScrollWheel) && [object subtype] == NSTabletPointEventSubtype) ) - ADD_NUMBER( [o rotation] ,@"Rotation") - if (type == NSAppKitDefined || type == NSSystemDefined || type == NSApplicationDefined || type == NSLeftMouseDown || type == NSLeftMouseUp || type == NSRightMouseDown || type == NSRightMouseUp || type == NSOtherMouseDown || type == NSOtherMouseUp || type == NSMouseMoved || type == NSLeftMouseDragged || type == NSRightMouseDragged || type == NSOtherMouseDragged || type == NSScrollWheel) - ADD_OBJECT(objectFromEventSubtype([o subtype]) ,@"Subtype") - if (type == NSTabletProximity || ((type == NSLeftMouseDown || type == NSLeftMouseUp || type == NSRightMouseDown || type == NSRightMouseUp || type == NSOtherMouseDown || type == NSOtherMouseUp || type == NSMouseMoved || type == NSLeftMouseDragged || type == NSRightMouseDragged || type == NSOtherMouseDragged || type == NSScrollWheel) && [object subtype] == NSTabletProximityEventSubtype) ) - { - ADD_NUMBER( [o systemTabletID] ,@"System tablet ID") - ADD_NUMBER( [o tabletID] ,@"Tablet ID") + if (type == NSTabletPoint || ((type == NSLeftMouseDown || type == NSLeftMouseUp || type == NSRightMouseDown || type == NSRightMouseUp || type == NSOtherMouseDown || type == NSOtherMouseUp || type == NSMouseMoved || type == NSLeftMouseDragged || type == NSRightMouseDragged || type == NSOtherMouseDragged || type == NSScrollWheel) && [object subtype] == NSTabletPointEventSubtype)) { + ADD_NUMBER(o, tangentialPressure) + ADD_POINT(o, tilt) + } + ADD_NUMBER(o, timestamp) + if (type == NSMouseEntered || type == NSMouseExited || type == NSCursorUpdate) { + ADD_OBJECT(o, trackingArea) + ADD_NUMBER(o, trackingNumber) } - if (type == NSTabletPoint || ((type == NSLeftMouseDown || type == NSLeftMouseUp || type == NSRightMouseDown || type == NSRightMouseUp || type == NSOtherMouseDown || type == NSOtherMouseUp || type == NSMouseMoved || type == NSLeftMouseDragged || type == NSRightMouseDragged || type == NSOtherMouseDragged || type == NSScrollWheel) && [object subtype] == NSTabletPointEventSubtype) ) - { - ADD_NUMBER( [o tangentialPressure] ,@"Tangential pressure") - ADD_POINT( [o tilt] ,@"Tilt") - } - ADD_NUMBER( [o timestamp] ,@"Timestamp") - if (type == NSMouseEntered || type == NSMouseExited || type == NSCursorUpdate) - { - ADD_OBJECT( [o trackingArea] ,@"Tracking area") - ADD_NUMBER( [o trackingNumber] ,@"Tracking number") - } - ADD_OBJECT(objectFromEventType([(NSEvent *)o type]) ,@"Type") - if (type == NSTabletProximity || ((type == NSLeftMouseDown || type == NSLeftMouseUp || type == NSRightMouseDown || type == NSRightMouseUp || type == NSOtherMouseDown || type == NSOtherMouseUp || type == NSMouseMoved || type == NSLeftMouseDragged || type == NSRightMouseDragged || type == NSOtherMouseDragged || type == NSScrollWheel) && [object subtype] == NSTabletProximityEventSubtype) ) - ADD_NUMBER( [o uniqueID] ,@"Unique ID") - if (type == NSMouseEntered || type == NSMouseExited || type == NSCursorUpdate) - { - void *userData = [o userData]; - if (userData) - ADD_POINTER( [o userData] ,@"User data") + ADD_ENUM(o, type, EventType) + if (type == NSTabletProximity || ((type == NSLeftMouseDown || type == NSLeftMouseUp || type == NSRightMouseDown || type == NSRightMouseUp || type == NSOtherMouseDown || type == NSOtherMouseUp || type == NSMouseMoved || type == NSLeftMouseDragged || type == NSRightMouseDragged || type == NSOtherMouseDragged || type == NSScrollWheel) && [object subtype] == NSTabletProximityEventSubtype)) + ADD_NUMBER(o, uniqueID) + if (type == NSMouseEntered || type == NSMouseExited || type == NSCursorUpdate) { + void* userData = [o userData]; + if (userData) + ADD_POINTER([o userData], @"User data") } - if (type == NSTabletPoint || ((type == NSLeftMouseDown || type == NSLeftMouseUp || type == NSRightMouseDown || type == NSRightMouseUp || type == NSOtherMouseDown || type == NSOtherMouseUp || type == NSMouseMoved || type == NSLeftMouseDragged || type == NSRightMouseDragged || type == NSOtherMouseDragged || type == NSScrollWheel) && [object subtype] == NSTabletPointEventSubtype) ) - ADD_OBJECT( [o vendorDefined] ,@"Vendor defined") - if (type == NSTabletProximity || ((type == NSLeftMouseDown || type == NSLeftMouseUp || type == NSRightMouseDown || type == NSRightMouseUp || type == NSOtherMouseDown || type == NSOtherMouseUp || type == NSMouseMoved || type == NSLeftMouseDragged || type == NSRightMouseDragged || type == NSOtherMouseDragged || type == NSScrollWheel) && [object subtype] == NSTabletProximityEventSubtype) ) - { - ADD_NUMBER( [o vendorID] ,@"Vendor ID") - ADD_NUMBER( [o vendorPointingDeviceType] ,@"Vendor pointing device type") - } - if (type != NSPeriodic) - ADD_OBJECT( [o window] ,@"Window") - } - + if (type == NSTabletPoint || ((type == NSLeftMouseDown || type == NSLeftMouseUp || type == NSRightMouseDown || type == NSRightMouseUp || type == NSOtherMouseDown || type == NSOtherMouseUp || type == NSMouseMoved || type == NSLeftMouseDragged || type == NSRightMouseDragged || type == NSOtherMouseDragged || type == NSScrollWheel) && [object subtype] == NSTabletPointEventSubtype)) + ADD_OBJECT(o, vendorDefined) + if (type == NSTabletProximity || ((type == NSLeftMouseDown || type == NSLeftMouseUp || type == NSRightMouseDown || type == NSRightMouseUp || type == NSOtherMouseDown || type == NSOtherMouseUp || type == NSMouseMoved || type == NSLeftMouseDragged || type == NSRightMouseDragged || type == NSOtherMouseDragged || type == NSScrollWheel) && [object subtype] == NSTabletProximityEventSubtype)) { + ADD_NUMBER(o, vendorID) + ADD_NUMBER(o, vendorPointingDeviceType) + } + if (type != NSPeriodic) + ADD_OBJECT(o, window) +} + - (void)addNSExpression:(id)object { - NSExpression *o = object; - NSArray *arguments = nil; - id collection = nil; - id constantValue = nil; - NSExpressionType expressionType = 0; - NSString *function = nil; - NSString *keyPath = nil; - NSExpression *leftExpression = nil; - NSExpression *operand = nil; - NSPredicate *predicate = nil; - NSExpression *rightExpression = nil; - NSString *variable = nil; - - BOOL argumentsIsInitialized = NO; - BOOL collectionIsInitialized = NO; - BOOL constantValueIsInitialized = NO; - BOOL expressionTypeIsInitialized = NO; - BOOL functionIsInitialized = NO; - BOOL keyPathIsInitialized = NO; - BOOL leftExpressionIsInitialized = NO; - BOOL operandIsInitialized = NO; - BOOL predicateIsInitialized = NO; - BOOL rightExpressionIsInitialized = NO; - BOOL variableIsInitialized = NO; - - @try { arguments = [o arguments]; argumentsIsInitialized = YES; } @catch (id exception) {} - @try { collection = [o collection]; collectionIsInitialized = YES; } @catch (id exception) {} - @try { constantValue = [o constantValue]; constantValueIsInitialized = YES; } @catch (id exception) {} - @try { expressionType = [o expressionType]; expressionTypeIsInitialized = YES; } @catch (id exception) {} - @try { function = [o function]; functionIsInitialized = YES; } @catch (id exception) {} - @try { keyPath = [o keyPath]; keyPathIsInitialized = YES; } @catch (id exception) {} - @try { leftExpression = [o leftExpression]; leftExpressionIsInitialized = YES; } @catch (id exception) {} - @try { operand = [o operand]; operandIsInitialized = YES; } @catch (id exception) {} - @try { predicate = [o predicate]; predicateIsInitialized = YES; } @catch (id exception) {} - @try { rightExpression = [o rightExpression]; rightExpressionIsInitialized = YES; } @catch (id exception) {} - @try { variable = [o variable]; variableIsInitialized = YES; } @catch (id exception) {} - - ADD_CLASS_LABEL(@"NSExpression Info"); - - if (argumentsIsInitialized) ADD_OBJECTS(arguments ,@"Arguments"); - if (collectionIsInitialized) ADD_OBJECT(collection ,@"Collection"); - if (constantValueIsInitialized) ADD_OBJECT(constantValue ,@"Constant value"); - if (expressionTypeIsInitialized) ADD_OBJECT(objectFromExpressionType(expressionType) ,@"Expression type"); - if (functionIsInitialized) ADD_OBJECT(function ,@"Function"); - if (keyPathIsInitialized) ADD_OBJECT(keyPath ,@"Key path"); - if (leftExpressionIsInitialized) ADD_OBJECT(leftExpression ,@"Left expression"); - if (operandIsInitialized) ADD_OBJECT(operand ,@"Operand"); - if (predicateIsInitialized) ADD_OBJECT(predicate ,@"Predicate"); - if (rightExpressionIsInitialized) ADD_OBJECT(leftExpression ,@"Right expression"); - if (variableIsInitialized) ADD_OBJECT(variable ,@"Variable"); + ADD_CLASS_LABEL(@"NSExpression Info"); + NSExpression *o = object; + + @try { ADD_OBJECTS(o, arguments); } @catch (id exception) {} + @try { ADD_OBJECT(o, collection); } @catch (id exception) {} + @try { ADD_OBJECT(o, constantValue); } @catch (id exception) {} + @try { ADD_ENUM(o, expressionType, ExpressionType); } @catch (id exception) {} + @try { ADD_STRING(o, function); } @catch (id exception) {} + @try { ADD_STRING(o, keyPath); } @catch (id exception) {} + @try { ADD_OBJECT(o, leftExpression); } @catch (id exception) {} + @try { ADD_OBJECT(o, operand); } @catch (id exception) {} + @try { ADD_OBJECT(o, predicate); } @catch (id exception) {} + @try { ADD_OBJECT(o, rightExpression); } @catch (id exception) {} + @try { ADD_STRING(o, variable); } @catch (id exception) {} + } - + - (void)addNSFetchRequest:(id)object { - NSFetchRequest *o = object; - ADD_CLASS_LABEL(@"NSFetchRequest Info"); - ADD_OBJECTS( [o affectedStores] ,@"Affected stores") - ADD_OBJECT( [o entity] ,@"Entity") - ADD_NUMBER( [o fetchLimit] ,@"Fetch limit") - ADD_BOOL( [o includesPropertyValues] ,@"Includes property values") - ADD_BOOL( [o includesSubentities] ,@"Includes bubentities") - ADD_OBJECT( [o predicate] ,@"Predicate") - ADD_OBJECTS( [o relationshipKeyPathsForPrefetching] ,@"Relationship key paths for prefetching") - ADD_OBJECT(objectFromFetchRequestResultType([o resultType]) ,@"Result type") - ADD_BOOL( [o returnsObjectsAsFaults] ,@"Returns objects as faults") - ADD_OBJECTS( [o sortDescriptors] ,@"Sort descriptors") + NSFetchRequest* o = object; + ADD_CLASS_LABEL(@"NSFetchRequest Info"); + ADD_OBJECTS(o, affectedStores) + ADD_OBJECT(o, entity) + ADD_NUMBER(o, fetchLimit) + ADD_BOOL(o, includesPropertyValues) + ADD_BOOL(o, includesSubentities) + ADD_OBJECT(o, predicate) + ADD_OBJECTS(o, relationshipKeyPathsForPrefetching) + ADD_ENUM(o, resultType, FetchRequestResultType) + ADD_BOOL(o, returnsObjectsAsFaults) + ADD_OBJECTS(o, sortDescriptors) } - (void)addNSFileWrapper:(id)object { - NSFileWrapper *o = object; - ADD_CLASS_LABEL(@"NSFileWrapper Info"); - ADD_DICTIONARY( [o fileAttributes] ,@"File attributes") - ADD_OBJECT( [o filename] ,@"Filename") - ADD_OBJECT_NOT_NIL( [o icon] ,@"Icon") - ADD_BOOL( [o isDirectory] ,@"Is directory") - ADD_BOOL( [o isRegularFile] ,@"Is regularFile") - ADD_BOOL( [o isSymbolicLink] ,@"Is symbolic link") - ADD_OBJECT_NOT_NIL( [o preferredFilename] ,@"Preferred filename") - if ([o isSymbolicLink]) - ADD_OBJECT_NOT_NIL( [o symbolicLinkDestination] ,@"Symbolic link destination") + NSFileWrapper* o = object; + ADD_CLASS_LABEL(@"NSFileWrapper Info"); + ADD_DICTIONARY(o, fileAttributes) + ADD_OBJECT(o, filename) + ADD_OBJECT_NOT_NIL(o, icon) + ADD_BOOL(o, isDirectory) + ADD_BOOL(o, isRegularFile) + ADD_BOOL(o, isSymbolicLink) + ADD_OBJECT_NOT_NIL(o, preferredFilename) + if ([o isSymbolicLink]) + ADD_OBJECT_NOT_NIL(o, symbolicLinkDestination) } - + - (void)addNSFont:(id)object { - NSFont *o = object; - ADD_CLASS_LABEL(@"NSFont Info"); - ADD_NUMBER( [o ascender] ,@"Ascender") - ADD_RECT( [o boundingRectForFont] ,@"Bounding rect for font") - ADD_NUMBER( [o capHeight] ,@"Cap height") - ADD_OBJECT( [o coveredCharacterSet] ,@"Covered character set") - ADD_NUMBER( [o descender] ,@"Descender") - ADD_OBJECT( [o displayName] ,@"Display name") - ADD_OBJECT( [o familyName] ,@"Family name") - ADD_OBJECT( [o fontDescriptor] ,@"Font descriptor") - ADD_OBJECT( [o fontName] ,@"Font name") - ADD_BOOL( [o isFixedPitch] ,@"Is fixedPitch") - ADD_NUMBER( [o italicAngle] ,@"Italic angle") - ADD_NUMBER( [o leading] ,@"Leading") - - const CGFloat *matrix = [o matrix]; - NSString *matrixString = [NSString stringWithFormat:@"[%g %g %g %g %g %g]", (double)(matrix[0]), (double)(matrix[1]), (double)(matrix[2]), (double)(matrix[3]), (double)(matrix[4]), (double)(matrix[5])]; - [view addObject:matrixString withLabel:@"Matrix" toMatrix:m leaf:YES classLabel:classLabel selectedClassLabel:selectedClassLabel selectedLabel:selectedLabel selectedObject:selectedObject indentationLevel:0]; - - ADD_SIZE( [o maximumAdvancement] ,@"Maximum advancement") - ADD_OBJECT(objectFromStringEncoding([o mostCompatibleStringEncoding]),@"Most compatible string encoding") - ADD_NUMBER( [o numberOfGlyphs] ,@"Number of glyphs") - ADD_NUMBER( [o pointSize] ,@"Point size") - ADD_OBJECT( [o printerFont] ,@"Printer font") - ADD_OBJECT(objectFromFontRenderingMode([o renderingMode]) ,@"Rendering mode") - ADD_OBJECT_NOT_NIL( [o screenFont] ,@"Screen font") - ADD_NUMBER( [o underlinePosition] ,@"Underline position") - ADD_NUMBER( [o underlineThickness] ,@"Underline thickness") - ADD_NUMBER( [o xHeight] ,@"xHeight") -} - + NSFont* o = object; + ADD_CLASS_LABEL(@"NSFont Info"); + ADD_NUMBER(o, ascender) + ADD_RECT(o, boundingRectForFont) + ADD_NUMBER(o, capHeight) + ADD_OBJECT(o, coveredCharacterSet) + ADD_NUMBER(o, descender) + ADD_OBJECT(o, displayName) + ADD_OBJECT(o, familyName) + ADD_OBJECT(o, fontDescriptor) + ADD_OBJECT(o, fontName) + ADD_BOOL(o, isFixedPitch) + ADD_NUMBER(o, italicAngle) + ADD_NUMBER(o, leading) + + const CGFloat* matrix = [o matrix]; + NSString* matrixString = [NSString stringWithFormat:@"[%g %g %g %g %g %g]", (double)(matrix[0]), (double)(matrix[1]), (double)(matrix[2]), (double)(matrix[3]), (double)(matrix[4]), (double)(matrix[5])]; + [view addObject:matrixString withLabel:@"Matrix" toMatrix:m leaf:YES classLabel:classLabel selectedClassLabel:selectedClassLabel selectedLabel:selectedLabel selectedObject:selectedObject indentationLevel:0]; + + ADD_SIZE(o, maximumAdvancement) + ADD_ENUM(o, mostCompatibleStringEncoding, StringEncoding) + ADD_NUMBER(o, numberOfGlyphs) + ADD_NUMBER(o, pointSize) + ADD_OBJECT(o, printerFont) + ADD_ENUM(o, renderingMode, FontRenderingMode) + ADD_OBJECT_NOT_NIL(o, screenFont) + ADD_NUMBER(o, underlinePosition) + ADD_NUMBER(o, underlineThickness) + ADD_NUMBER(o, xHeight) +} + - (void)addNSFontDescriptor:(id)object { - NSFontDescriptor *o = object; - ADD_CLASS_LABEL(@"NSFontDescriptor Info"); - ADD_DICTIONARY( [o fontAttributes] ,@"Font attributes") - ADD_OBJECT( [o matrix] ,@"Matrix") - ADD_NUMBER( [o pointSize] ,@"Point size") - ADD_OBJECT( [o postscriptName] ,@"Postscript name") - ADD_NUMBER( [o symbolicTraits] ,@"Symbolic traits") + NSFontDescriptor* o = object; + ADD_CLASS_LABEL(@"NSFontDescriptor Info"); + ADD_DICTIONARY(o, fontAttributes) + ADD_OBJECT(o, matrix) + ADD_NUMBER(o, pointSize) + ADD_OBJECT(o, postscriptName) + ADD_NUMBER(o, symbolicTraits) } - + - (void)addNSFontManager:(id)object { - NSFontManager *o = object; - ADD_CLASS_LABEL(@"NSFontManager Info"); - ADD_SEL( [o action] ,@"Action") - ADD_OBJECTS( [o availableFontFamilies] ,@"Available font families") - ADD_OBJECTS( [o availableFonts] ,@"Available fonts") - ADD_OBJECTS( [o collectionNames] ,@"Collection names") - ADD_OBJECT_NOT_NIL( [o delegate] ,@"Delegate") - ADD_BOOL( [o isEnabled] ,@"Is enabled") - ADD_BOOL( [o isMultiple] ,@"IsMultiple") - ADD_OBJECT( [o selectedFont] ,@"Selected font") - ADD_OBJECT( [o target] ,@"Target") + NSFontManager* o = object; + ADD_CLASS_LABEL(@"NSFontManager Info"); + ADD_SEL(o, action) + ADD_OBJECTS(o, availableFontFamilies) + ADD_OBJECTS(o, availableFonts) + ADD_OBJECTS(o, collectionNames) + ADD_OBJECT(o, delegate, NSObject.class, YES) + ADD_BOOL(o, isEnabled) + ADD_BOOL(o, isMultiple) + ADD_OBJECT(o, selectedFont) + ADD_OBJECT(o, target) } - + - (void)addNSGlyphInfo:(id)object - { - NSGlyphInfo *o = object; +{ + NSGlyphInfo* o = object; ADD_CLASS_LABEL(@"NSGlyphInfo Info"); - ADD_OBJECT(objectFromCharacterCollection([o characterCollection]),@"Character collection") - if ([o characterIdentifier]) ADD_NUMBER( [o characterIdentifier],@"Character identifier"); - ADD_OBJECT_NOT_NIL( [o glyphName] ,@"Glyph name") - } - + ADD_ENUM(o, characterCollection, CharacterCollection) + if ([o characterIdentifier]) + ADD_NUMBER(o, characterIdentifier); + ADD_OBJECT_NOT_NIL(o, glyphName) +} + - (void)addNSGlyphGenerator:(id)object { - //NSGlyphGenerator *o = object; - //ADD_CLASS_LABEL(@"NSGlyphGenerator Info"); + //NSGlyphGenerator *o = object; + //ADD_CLASS_LABEL(@"NSGlyphGenerator Info"); } - + - (void)addNSGradient:(id)object { - NSGradient *o = object; - ADD_CLASS_LABEL(@"NSGradient Info"); - ADD_OBJECT_NOT_NIL( [o colorSpace] ,@"Color space") - ADD_NUMBER( [o numberOfColorStops] ,@"Number of color stops") + NSGradient* o = object; + ADD_CLASS_LABEL(@"NSGradient Info"); + ADD_OBJECT_NOT_NIL(o, colorSpace) + ADD_NUMBER(o, numberOfColorStops) } - - + + - (void)addNSGraphicsContext:(id)object { - NSGraphicsContext *o = object; - ADD_CLASS_LABEL(@"NSGraphicsContext Info"); - ADD_DICTIONARY( [o attributes] ,@"Attributes") - ADD_OBJECT(objectFromColorRenderingIntent([o colorRenderingIntent]),@"Color rendering intent") - ADD_OBJECT(objectFromCompositingOperation([o compositingOperation]),@"Compositing operation") - ADD_POINTER( [o graphicsPort] ,@"Graphics port") - ADD_OBJECT(objectFromImageInterpolation([o imageInterpolation]) ,@"Image interpolation") - ADD_BOOL( [o isDrawingToScreen] ,@"Is drawing to screen") - ADD_BOOL( [o isFlipped] ,@"Is flipped") - ADD_POINT( [o patternPhase] ,@"Pattern phase") - ADD_BOOL( [o shouldAntialias] ,@"Should antialias") + NSGraphicsContext* o = object; + ADD_CLASS_LABEL(@"NSGraphicsContext Info"); + ADD_DICTIONARY(o, attributes) + ADD_ENUM(o, colorRenderingIntent, ColorRenderingIntent) + ADD_ENUM(o, compositingOperation, CompositingOperation) + ADD_POINTER([o graphicsPort], @"Graphics port") + ADD_ENUM(o, imageInterpolation, ImageInterpolation) + ADD_BOOL(o, isDrawingToScreen) + ADD_BOOL(o, isFlipped) + ADD_POINT(o, patternPhase) + ADD_BOOL(o, shouldAntialias) } - + - (void)addNSImage:(id)object { - NSImage *o = object; - ADD_CLASS_LABEL(@"NSImage Info"); - ADD_RECT( [o alignmentRect] ,@"Alignment rect") - ADD_OBJECT( [o backgroundColor] ,@"Background color") - ADD_BOOL( [o cacheDepthMatchesImageDepth] ,@"Cache depth matches image depth") - ADD_OBJECT(objectFromImageCacheMode([o cacheMode]) ,@"Cache mode") - ADD_OBJECT_NOT_NIL( [o delegate] ,@"Delegate") - ADD_BOOL( [o isCachedSeparately] ,@"Is cached separately") - ADD_BOOL( [o isDataRetained] ,@"Is data retained") - ADD_BOOL( [o isFlipped] ,@"Is flipped") - ADD_BOOL( [o isTemplate] ,@"Is template") - ADD_BOOL( [o isValid] ,@"Is valid") - ADD_BOOL( [o matchesOnMultipleResolution] ,@"Matches on multiple resolution") - ADD_OBJECT_NOT_NIL( [o name] ,@"Name") - ADD_BOOL( [o prefersColorMatch] ,@"Prefers color match") - ADD_OBJECTS( [o representations] ,@"Representations") - ADD_BOOL( [o scalesWhenResized] ,@"Scales when resized") - ADD_SIZE( [o size] ,@"Size") - ADD_BOOL( [o usesEPSOnResolutionMismatch] ,@"Uses EPS on resolution mismatch") -} - + NSImage* o = object; + ADD_CLASS_LABEL(@"NSImage Info"); + ADD_RECT(o, alignmentRect) + ADD_COLOR(o, backgroundColor) + ADD_BOOL(o, cacheDepthMatchesImageDepth) + ADD_ENUM(o, cacheMode, ImageCacheMode) + ADD_OBJECT(o, delegate, NSObject.class, YES) + ADD_BOOL(o, isCachedSeparately) + ADD_BOOL(o, isDataRetained) + ADD_BOOL(o, isFlipped) + ADD_BOOL(o, isTemplate) + ADD_BOOL(o, isValid) + ADD_BOOL(o, matchesOnMultipleResolution) + ADD_OBJECT_NOT_NIL(o, name) + ADD_BOOL(o, prefersColorMatch) + ADD_OBJECTS(o, representations) + ADD_BOOL(o, scalesWhenResized) + ADD_SIZE(o, size) + ADD_BOOL(o, usesEPSOnResolutionMismatch) +} + - (void)addNSImageRep:(id)object { - if ([object isKindOfClass:[NSBitmapImageRep class]]) - { - NSBitmapImageRep *o = object; - ADD_CLASS_LABEL(@"NSBitmapImageRep Info"); - ADD_OBJECT( objectFromBitmapFormat([o bitmapFormat]),@"Bitmap format") - ADD_NUMBER( [o bitsPerPixel] ,@"Bits per pixel") - ADD_NUMBER( [o bytesPerPlane] ,@"Bytes per plane") - ADD_NUMBER( [o bytesPerRow] ,@"Bytes per row") - ADD_OBJECT_NOT_NIL([o valueForProperty:NSImageColorSyncProfileData],@"ColorSync profile data") - ADD_OBJECT_NOT_NIL([o valueForProperty:NSImageCompressionFactor],@"Compression factor") - { - id compressionMethod = [o valueForProperty:NSImageCompressionMethod]; - if ([compressionMethod isKindOfClass:[NSNumber class]]) - ADD_OBJECT(objectFromTIFFCompression([[o valueForProperty:NSImageCompressionMethod] longValue]),@"Compression method") + if ([object isKindOfClass:[NSBitmapImageRep class]]) { + NSBitmapImageRep* o = object; + ADD_CLASS_LABEL(@"NSBitmapImageRep Info"); + ADD_OPTIONS(o, bitmapFormat, BitmapFormat) + ADD_NUMBER(o, bitsPerPixel) + ADD_NUMBER(o, bytesPerPlane) + ADD_NUMBER(o, bytesPerRow) + ADD_OBJECT_GETSET(o, + { return [obj valueForProperty:NSImageColorSyncProfileData]; }, + { [obj setProperty:NSImageColorSyncProfileData withValue:val ];}, + nil, @"ColorSync profile data", YES) + ADD_OBJECT_GETSET(o, + { return [obj valueForProperty:NSImageCompressionFactor]; }, + { [obj setProperty:NSImageCompressionFactor withValue:val ];}, + nil, @"Compression factor", YES) + { + //TODO + //id compressionMethod = [o valueForProperty:NSImageCompressionMethod]; + // if ([compressionMethod isKindOfClass:[NSNumber class]]) + // ADD_ENUM(TIFFCompression, [[o valueForProperty:NSImageCompressionMethod] longValue], imageCompressionMethod, setImageCompressionMethod, @"Compression method") + } + ADD_OBJECT_GETSET(o, + { return [obj valueForProperty:NSImageCurrentFrame]; }, + { [obj setProperty:NSImageCurrentFrame withValue:val ];}, + nil, @"Current frame", YES) + ADD_OBJECT_GETSET(o, + { return [obj valueForProperty:NSImageCurrentFrameDuration]; }, + { [obj setProperty:NSImageCurrentFrameDuration withValue:val ];}, + nil, @"Current frame duration", YES) + ADD_OBJECT_GETSET(o, + { return [obj valueForProperty:NSImageDitherTransparency]; }, + { [obj setProperty:NSImageDitherTransparency withValue:val ];}, + nil, @"Dither transparency", YES) + ADD_OBJECT_GETSET(o, + { return [obj valueForProperty:NSImageEXIFData]; }, + { [obj setProperty:NSImageEXIFData withValue:val ];}, + nil, @"EXIF data", YES) + ADD_OBJECT_GETSET(o, + { return [obj valueForProperty:NSImageFallbackBackgroundColor]; }, + { [obj setProperty:NSImageFallbackBackgroundColor withValue:val ];}, + nil, @"Fallback background color", YES) + ADD_OBJECT_GETSET(o, + { return [obj valueForProperty:NSImageFrameCount]; }, + { [obj setProperty:NSImageFrameCount withValue:val ];}, + nil, @"Frame count", YES) + ADD_OBJECT_GETSET(o, + { return [obj valueForProperty:NSImageGamma]; }, + { [obj setProperty:NSImageGamma withValue:val ];}, + nil, @"Gamma", YES) + ADD_OBJECT_GETSET(o, + { return [obj valueForProperty:NSImageInterlaced]; }, + { [obj setProperty:NSImageInterlaced withValue:val ];}, + nil, @"Interlaced", YES) + ADD_BOOL(o, isPlanar) + ADD_OBJECT_GETSET(o, + { return [obj valueForProperty:NSImageLoopCount]; }, + { [obj setProperty:NSImageLoopCount withValue:val ];}, + nil, @"Loop count", YES) + ADD_NUMBER(o, numberOfPlanes) + ADD_OBJECT_GETSET(o, + { return [obj valueForProperty:NSImageProgressive]; }, + { [obj setProperty:NSImageProgressive withValue:val ];}, + nil, @"Progressive", YES) + ADD_OBJECT_GETSET(o, + { return [obj valueForProperty:NSImageRGBColorTable]; }, + { [obj setProperty:NSImageRGBColorTable withValue:val ];}, + nil, @"RGB color table", YES) + ADD_NUMBER(o, samplesPerPixel) + } + else if ([object isKindOfClass:[NSCIImageRep class]]) { + NSCIImageRep* o = object; + ADD_CLASS_LABEL(@"NSCIImageRep Info"); + ADD_OBJECT(o, CIImage) + } + else if ([object isKindOfClass:[NSCustomImageRep class]]) { + NSCustomImageRep* o = object; + ADD_CLASS_LABEL(@"NSCustomImageRep Info"); + ADD_OBJECT(o, delegate) + ADD_SEL(o, drawSelector) + } + else if ([object isKindOfClass:[NSEPSImageRep class]]) { + NSEPSImageRep* o = object; + ADD_CLASS_LABEL(@"NSEPSImageRep Info"); + ADD_RECT(o, boundingBox) + } + else if ([object isKindOfClass:[NSPDFImageRep class]]) { + NSPDFImageRep* o = object; + ADD_CLASS_LABEL(@"NSPDFImageRep Info"); + ADD_RECT(o, bounds) + ADD_NUMBER(o, currentPage) + ADD_NUMBER(o, pageCount) } - ADD_OBJECT_NOT_NIL([o valueForProperty:NSImageCurrentFrame] ,@"Current frame") - ADD_OBJECT_NOT_NIL([o valueForProperty:NSImageCurrentFrameDuration],@"Current frame duration") - ADD_OBJECT_NOT_NIL([o valueForProperty:NSImageDitherTransparency],@"Dither transparency") - ADD_OBJECT_NOT_NIL([o valueForProperty:NSImageEXIFData] ,@"EXIF data") - ADD_OBJECT_NOT_NIL([o valueForProperty:NSImageFallbackBackgroundColor],@"Fallback background color") - ADD_OBJECT_NOT_NIL([o valueForProperty:NSImageFrameCount] ,@"Frame count") - ADD_OBJECT_NOT_NIL([o valueForProperty:NSImageGamma] ,@"Gamma") - ADD_OBJECT_NOT_NIL([o valueForProperty:NSImageInterlaced] ,@"Interlaced") - ADD_BOOL( [o isPlanar] ,@"Is planar") - ADD_OBJECT_NOT_NIL([o valueForProperty:NSImageLoopCount] ,@"Loop count") - ADD_NUMBER( [o numberOfPlanes] ,@"Number of planes") - ADD_OBJECT_NOT_NIL([o valueForProperty:NSImageProgressive] ,@"Progressive") - ADD_OBJECT_NOT_NIL([o valueForProperty:NSImageRGBColorTable] ,@"RGB color table") - ADD_NUMBER( [o samplesPerPixel] ,@"Samples per pixel") - } - else if ([object isKindOfClass:[NSCIImageRep class]]) - { - NSCIImageRep *o = object; - ADD_CLASS_LABEL(@"NSCIImageRep Info"); - ADD_OBJECT( [o CIImage] ,@"CIImage") - } - else if ([object isKindOfClass:[NSCustomImageRep class]]) - { - NSCustomImageRep *o = object; - ADD_CLASS_LABEL(@"NSCustomImageRep Info"); - ADD_OBJECT( [o delegate] ,@"Delegate") - ADD_SEL( [o drawSelector] ,@"Draw selector") - } - else if ([object isKindOfClass:[NSEPSImageRep class]]) - { - NSEPSImageRep *o = object; - ADD_CLASS_LABEL(@"NSEPSImageRep Info"); - ADD_RECT( [o boundingBox] ,@"Bounding box") - } - else if ([object isKindOfClass:[NSPDFImageRep class]]) - { - NSPDFImageRep *o = object; - ADD_CLASS_LABEL(@"NSPDFImageRep Info"); - ADD_RECT( [o bounds] ,@"Bounding box") - ADD_NUMBER( [o currentPage] ,@"Current page") - ADD_NUMBER( [o pageCount] ,@"Page count") - } - else if ([object isKindOfClass:[NSPICTImageRep class]]) - { - NSPICTImageRep *o = object; - ADD_CLASS_LABEL(@"NSPICTImageRep Info"); - ADD_RECT( [o boundingBox] ,@"Bounding box") - } - - NSImageRep *o = object; - ADD_CLASS_LABEL(@"NSImageRep Info"); - ADD_NUMBER( [o bitsPerSample] ,@"Bits per sample") - ADD_OBJECT( [o colorSpaceName] ,@"Color space name") - ADD_BOOL( [o hasAlpha] ,@"Has alpha") - ADD_BOOL( [o isOpaque] ,@"Is opaque") - ADD_NUMBER( [o pixelsHigh] ,@"Pixels high") - ADD_NUMBER( [o pixelsWide] ,@"Pixels wide") - ADD_SIZE( [o size] ,@"Size") -} - + else if ([object isKindOfClass:[NSPICTImageRep class]]) { + NSPICTImageRep* o = object; + ADD_CLASS_LABEL(@"NSPICTImageRep Info"); + ADD_RECT(o, boundingBox) + } + + NSImageRep* o = object; + ADD_CLASS_LABEL(@"NSImageRep Info"); + ADD_NUMBER(o, bitsPerSample) + ADD_OBJECT(o, colorSpaceName) + ADD_BOOL(o, hasAlpha) + ADD_BOOL(o, isOpaque) + ADD_NUMBER(o, pixelsHigh) + ADD_NUMBER(o, pixelsWide) + ADD_SIZE(o, size) +} + - (void)addNSLayoutManager:(id)object { - NSLayoutManager *o = object; - ADD_CLASS_LABEL(@"NSLayoutManager Info"); - ADD_BOOL( [o allowsNonContiguousLayout] ,@"Allows non contiguous layout") - ADD_BOOL( [o backgroundLayoutEnabled] ,@"Background layout enabled") - ADD_OBJECT(objectFromImageScaling([o defaultAttachmentScaling]) ,@"Default attachment scaling") - ADD_OBJECT_NOT_NIL( [o delegate] ,@"Delegate") - ADD_RECT( [o extraLineFragmentRect] ,@"Extra line fragment rect") - ADD_OBJECT_NOT_NIL( [o extraLineFragmentTextContainer] ,@"Extra line fragment text container") - ADD_RECT( [o extraLineFragmentUsedRect] ,@"Extra line fragment used rect") - ADD_OBJECT( [o firstTextView] ,@"First text view") - ADD_NUMBER( [o firstUnlaidCharacterIndex] ,@"First unlaid character index") - ADD_NUMBER( [o firstUnlaidGlyphIndex] ,@"First unlaid glyph index") - ADD_OBJECT( [o glyphGenerator] ,@"Glyph generator") - ADD_BOOL( [o hasNonContiguousLayout] ,@"Has non contiguous layout") - ADD_NUMBER( [o hyphenationFactor] ,@"Hyphenation factor") - ADD_OBJECT(objectFromLayoutOptions([o layoutOptions]) ,@"Layout options") - ADD_BOOL( [o showsControlCharacters] ,@"Shows control characters") - ADD_BOOL( [o showsInvisibleCharacters] ,@"Shows invisible characters") - ADD_OBJECTS( [o textContainers] ,@"Text containers") - ADD_OBJECT( [o textStorage] ,@"Text storage") - ADD_OBJECT( [o textViewForBeginningOfSelection] ,@"Text view for beginning of selection") - ADD_OBJECT( [o typesetter] ,@"Typesetter") - ADD_OBJECT(objectFromTypesetterBehavior([o typesetterBehavior]) ,@"Typesetter behavior") - ADD_BOOL( [o usesFontLeading] ,@"Uses font leading") - ADD_BOOL( [o usesScreenFonts] ,@"Uses screen fonts") + NSLayoutManager* o = object; + ADD_CLASS_LABEL(@"NSLayoutManager Info"); + ADD_BOOL(o, allowsNonContiguousLayout) + ADD_BOOL(o, backgroundLayoutEnabled) + ADD_ENUM(o, defaultAttachmentScaling, ImageScaling) + ADD_OBJECT_NOT_NIL(o, delegate) + ADD_RECT(o, extraLineFragmentRect) + ADD_OBJECT_NOT_NIL(o, extraLineFragmentTextContainer) + ADD_RECT(o, extraLineFragmentUsedRect) + ADD_OBJECT(o, firstTextView) + ADD_NUMBER(o, firstUnlaidCharacterIndex) + ADD_NUMBER(o, firstUnlaidGlyphIndex) + ADD_OBJECT(o, glyphGenerator) + ADD_BOOL(o, hasNonContiguousLayout) + ADD_NUMBER(o, hyphenationFactor) + ADD_OPTIONS(o, layoutOptions, GlyphStorageLayoutOptions) + ADD_BOOL(o, showsControlCharacters) + ADD_BOOL(o, showsInvisibleCharacters) + ADD_OBJECTS(o, textContainers) + ADD_OBJECT(o, textStorage) + ADD_OBJECT(o, textViewForBeginningOfSelection) + ADD_OBJECT(o, typesetter) + ADD_ENUM(o, typesetterBehavior, TypesetterBehavior) + ADD_BOOL(o, usesFontLeading) + ADD_BOOL(o, usesScreenFonts) } - + - (void)addNSManagedObjectContext:(id)object { - NSManagedObjectContext *o = object; - ADD_CLASS_LABEL(@"NSManagedObjectContext Info"); - ADD_OBJECT( [o deletedObjects] ,@"Deleted objects" ) - ADD_BOOL( [o hasChanges] ,@"Has changes") - ADD_OBJECT( [o insertedObjects] ,@"Inserted objects" ) - ADD_OBJECT( objectFromMergePolicy([o mergePolicy]) ,@"Merge policy" ) - ADD_OBJECT( [o persistentStoreCoordinator] ,@"Persistent store coordinator" ) - ADD_BOOL( [o propagatesDeletesAtEndOfEvent] ,@"Propagates deletes at end of event") - ADD_OBJECT( [o registeredObjects] ,@"Registered objects" ) - ADD_BOOL( [o retainsRegisteredObjects] ,@"Retains registered objects") - ADD_NUMBER( [o stalenessInterval] ,@"Staleness interval") - ADD_BOOL( [o tryLock] ,@"Try lock") - ADD_OBJECT( [o undoManager] ,@"Undo manager" ) - ADD_OBJECT( [o updatedObjects] ,@"Updated objects" ) -} - -- (void)addNSManagedObjectID:(id)object -{ - NSManagedObjectID *o = object; - ADD_CLASS_LABEL(@"NSManagedObjectID Info"); - ADD_OBJECT( [o entity] ,@"Entity" ) - ADD_BOOL( [o isTemporaryID] ,@"Is temporary ID") - ADD_OBJECT( [o persistentStore] ,@"Persistent store" ) - ADD_OBJECT( [o URIRepresentation] ,@"URI representation" ) -} - -- (void)addNSManagedObjectModel:(id)object -{ - NSManagedObjectModel *o = object; - ADD_CLASS_LABEL(@"NSManagedObjectModel Info"); - ADD_OBJECTS( [o configurations] ,@"Configurations" ) - ADD_DICTIONARY( [o entitiesByName] ,@"Entities by name" ) - ADD_DICTIONARY( [o fetchRequestTemplatesByName] ,@"Fetch request templates by name") - ADD_OBJECTS( [[o versionIdentifiers] allObjects] ,@"Version identifiers") + NSManagedObjectContext* o = object; + ADD_CLASS_LABEL(@"NSManagedObjectContext Info"); + ADD_OBJECT(o, deletedObjects) + ADD_BOOL(o, hasChanges) + ADD_OBJECT(o, insertedObjects) + ADD_OPTIONS(o, mergePolicy, MergePolicyMarker) + ADD_OBJECT(o, persistentStoreCoordinator) + ADD_BOOL(o, propagatesDeletesAtEndOfEvent) + ADD_OBJECT(o, registeredObjects) + ADD_BOOL(o, retainsRegisteredObjects) + ADD_NUMBER(o, stalenessInterval) + ADD_BOOL(o, tryLock) + ADD_OBJECT(o, undoManager) + ADD_OBJECT(o, updatedObjects) +} + +- (void)addNSManagedObjectID:(id)object +{ + NSManagedObjectID* o = object; + ADD_CLASS_LABEL(@"NSManagedObjectID Info"); + ADD_OBJECT(o, entity) + ADD_BOOL(o, isTemporaryID) + ADD_OBJECT(o, persistentStore) + ADD_OBJECT(o, URIRepresentation) +} + +- (void)addNSManagedObjectModel:(id)object +{ + NSManagedObjectModel* o = object; + ADD_CLASS_LABEL(@"NSManagedObjectModel Info"); + ADD_OBJECTS(o, configurations) + ADD_DICTIONARY(o, entitiesByName) + ADD_DICTIONARY(o, fetchRequestTemplatesByName) + //TODO: ADD_OBJECTS([[o versionIdentifiers] allObjects], @"Version identifiers") +} + +- (void)addNSMenu:(id)object +{ + NSMenu* o = object; + ADD_CLASS_LABEL(@"NSMenu Info"); + ADD_BOOL(o, autoenablesItems) + ADD_OBJECT(o, delegate, NSObject.class, YES) + ADD_OBJECT_NOT_NIL(o, highlightedItem) + ADD_BOOL(o, isTornOff) + ADD_OBJECTS(o, itemArray) + ADD_BOOL(o, menuChangedMessagesEnabled) + ADD_BOOL(o, showsStateColumn) + ADD_OBJECT_NOT_NIL(o, supermenu) + ADD_STRING(o, title) +} + +- (void)addNSMenuItem:(id)object +{ + NSMenuItem* o = object; + ADD_CLASS_LABEL(@"NSMenuItem Info") + ADD_SEL(o, action) + ADD_OBJECT_NOT_NIL(o, attributedTitle) + ADD_BOOL(o, hasSubmenu) + ADD_OBJECT_NOT_NIL(o, image) + ADD_NUMBER(o, indentationLevel) + ADD_BOOL(o, isAlternate) + ADD_BOOL(o, isEnabled) + ADD_BOOL(o, isHidden) + ADD_BOOL(o, isHiddenOrHasHiddenAncestor) + ADD_BOOL(o, isHighlighted) + ADD_BOOL(o, isSeparatorItem) + ADD_OBJECT(o, keyEquivalent) + ADD_OPTIONS(o, keyEquivalentModifierMask, EventModifierFlags) + ADD_OBJECT(o, menu) + ADD_OBJECT_NOT_NIL(o, mixedStateImage) + ADD_OBJECT_NOT_NIL(o, offStateImage) + ADD_OBJECT_NOT_NIL(o, onStateImage) + ADD_OBJECT_NOT_NIL(o, representedObject) + ADD_ENUM(o, state, CellStateValue) + ADD_OBJECT_NOT_NIL(o, submenu) + ADD_NUMBER(o, tag) + ADD_OBJECT_NOT_NIL(o, target) + ADD_STRING(o, title) + ADD_OBJECT_NOT_NIL(o, toolTip) + ADD_OBJECT(o, userKeyEquivalent) + ADD_OBJECT_NOT_NIL(o, view) +} + +- (void)addNSOpenGLContext:(id)object +{ + NSOpenGLContext* o = object; + ADD_CLASS_LABEL(@"NSOpenGLContext Info"); + ADD_POINTER([o CGLContextObj], @"CGL context obj") + ADD_NUMBER(o, currentVirtualScreen) + ADD_OBJECT_NOT_NIL(o, pixelBuffer) + ADD_NUMBER(o, pixelBufferCubeMapFace) + ADD_NUMBER(o, pixelBufferMipMapLevel) + ADD_OBJECT_NOT_NIL(o, view) +} + +- (void)addNSOpenGLPixelBuffer:(id)object +{ + NSOpenGLPixelBuffer* o = object; + ADD_CLASS_LABEL(@"NSOpenGLPixelBuffer Info"); + ADD_NUMBER(o, pixelsHigh) + ADD_NUMBER(o, pixelsWide) + ADD_NUMBER(o, textureInternalFormat) + ADD_NUMBER(o, textureMaxMipMapLevel) + ADD_NUMBER(o, textureTarget) +} + +- (void)addNSOpenGLPixelFormat:(id)object +{ + NSOpenGLPixelFormat* o = object; + ADD_CLASS_LABEL(@"NSOpenGLPixelFormat Info"); + ADD_POINTER([o CGLPixelFormatObj], @"CGL pixel format obj") + ADD_NUMBER(o, numberOfVirtualScreens) } - -- (void)addNSMenu:(id)object -{ - NSMenu *o = object; - ADD_CLASS_LABEL(@"NSMenu Info"); - ADD_BOOL( [o autoenablesItems] ,@"Autoenables Items") - ADD_OBJECT_NOT_NIL( [o delegate] ,@"Delegate") - ADD_OBJECT_NOT_NIL( [o highlightedItem] ,@"Highlighted item") - ADD_BOOL( [o isTornOff] ,@"Is torn off") - ADD_OBJECTS( [o itemArray] ,@"Items" ) - ADD_BOOL( [o menuChangedMessagesEnabled] ,@"Menu changed messages enabled") - ADD_BOOL( [o showsStateColumn] ,@"Shows state column") - ADD_OBJECT_NOT_NIL( [o supermenu] ,@"Supermenu") - ADD_OBJECT( [o title] ,@"Title") -} - -- (void)addNSMenuItem:(id)object -{ - NSMenuItem *o = object; - ADD_CLASS_LABEL(@"NSMenuItem Info") - ADD_SEL( [o action] ,@"Action") - ADD_OBJECT_NOT_NIL( [o attributedTitle] ,@"Attributed title") - ADD_BOOL( [o hasSubmenu] ,@"Has submenu") - ADD_OBJECT_NOT_NIL( [o image] ,@"Image") - ADD_NUMBER( [o indentationLevel] ,@"Indentation level") - ADD_BOOL( [o isAlternate] ,@"Is alternate") - ADD_BOOL( [o isEnabled] ,@"Is enabled") - ADD_BOOL( [o isHidden] ,@"Is hidden") - ADD_BOOL( [o isHiddenOrHasHiddenAncestor] ,@"Is hidden or has hidden ancestor") - ADD_BOOL( [o isHighlighted] ,@"Is highlighted") - ADD_BOOL( [o isSeparatorItem] ,@"Is separatorItem") - ADD_OBJECT( [o keyEquivalent] ,@"Key equivalent") - ADD_OBJECT(objectFromKeyModifierMask([o keyEquivalentModifierMask]),@"Key equivalent modifier mask") - ADD_OBJECT( [o menu] ,@"Menu") - ADD_OBJECT_NOT_NIL( [o mixedStateImage] ,@"Mixed state image") - ADD_OBJECT_NOT_NIL( [o offStateImage] ,@"Off state image") - ADD_OBJECT_NOT_NIL( [o onStateImage] ,@"On state image") - ADD_OBJECT_NOT_NIL( [o representedObject] ,@"Represented object") - ADD_OBJECT(objectFromCellStateValue([o state]) ,@"State") - ADD_OBJECT_NOT_NIL( [o submenu] ,@"Submenu") - ADD_NUMBER( [o tag] ,@"Tag") - ADD_OBJECT_NOT_NIL( [o target] ,@"Target") - ADD_OBJECT( [o title] ,@"Title") - ADD_OBJECT_NOT_NIL( [o toolTip] ,@"Tool tip") - ADD_OBJECT( [o userKeyEquivalent] ,@"User key equivalent") - ADD_OBJECT_NOT_NIL( [o view] ,@"View") -} - -- (void)addNSOpenGLContext:(id)object -{ - NSOpenGLContext *o = object; - ADD_CLASS_LABEL(@"NSOpenGLContext Info"); - ADD_POINTER( [o CGLContextObj] ,@"CGL context obj") - ADD_NUMBER( [o currentVirtualScreen] ,@"Current virtual screen") - ADD_OBJECT_NOT_NIL( [o pixelBuffer] ,@"Pixel buffer") - ADD_NUMBER( [o pixelBufferCubeMapFace] ,@"Pixel buffer cube map face") - ADD_NUMBER( [o pixelBufferMipMapLevel] ,@"Pixel buffer mipmap level") - ADD_OBJECT_NOT_NIL( [o view] ,@"View") -} - -- (void)addNSOpenGLPixelBuffer:(id)object -{ - NSOpenGLPixelBuffer *o = object; - ADD_CLASS_LABEL(@"NSOpenGLPixelBuffer Info"); - ADD_NUMBER( [o pixelsHigh] ,@"Pixels high") - ADD_NUMBER( [o pixelsWide] ,@"Pixels wide") - ADD_NUMBER( [o textureInternalFormat] ,@"Texture internal format") - ADD_NUMBER( [o textureMaxMipMapLevel] ,@"Texture max mipmap level") - ADD_NUMBER( [o textureTarget] ,@"Texture target") -} - -- (void)addNSOpenGLPixelFormat:(id)object -{ - NSOpenGLPixelFormat *o = object; - ADD_CLASS_LABEL(@"NSOpenGLPixelFormat Info"); - ADD_POINTER( [o CGLPixelFormatObj] ,@"CGL pixel format obj") - ADD_NUMBER( [o numberOfVirtualScreens] ,@"Number of virtual screens") -} - + - (void)addNSPageLayout:(id)object { - NSPageLayout *o = object; - - if ([[o accessoryControllers] count] > 0 || [o printInfo] != nil) - { - ADD_CLASS_LABEL(@"NSPageLayout Info"); - ADD_OBJECTS( [o accessoryControllers] ,@"Accessory controllers") - ADD_OBJECT_NOT_NIL( [o printInfo] ,@"Print info") - } -} - + NSPageLayout* o = object; + + if ([[o accessoryControllers] count] > 0 || [o printInfo] != nil) { + ADD_CLASS_LABEL(@"NSPageLayout Info"); + ADD_OBJECTS(o, accessoryControllers) + ADD_OBJECT_NOT_NIL(o, printInfo) + } +} + - (void)addNSParagraphStyle:(id)object { - if ([object isKindOfClass:[NSMutableParagraphStyle class]]) - { - //NSMutableParagraphStyle *o = object; - //ADD_CLASS_LABEL(@"NSMutableParagraphStyle Info") - } - - NSParagraphStyle *o = object; - ADD_CLASS_LABEL(@"NSParagraphStyle Info") - ADD_OBJECT(objectFromTextAlignment([o alignment]) ,@"Alignment") - ADD_OBJECT(objectFromWritingDirection([o baseWritingDirection]) ,@"Base writing direction") - ADD_NUMBER( [o defaultTabInterval] ,@"Default tab interval") - ADD_NUMBER( [o firstLineHeadIndent] ,@"First line head indent") - ADD_NUMBER( [o headerLevel] ,@"HeaderLevel") - ADD_NUMBER( [o headIndent] ,@"Head indent") - ADD_NUMBER( [o hyphenationFactor] ,@"hyphenationFactor") - ADD_OBJECT(objectFromLineBreakMode([o lineBreakMode]) ,@"Line break mode") - ADD_NUMBER( [o lineHeightMultiple] ,@"Line height multiple") - ADD_NUMBER( [o lineSpacing] ,@"Line spacing") - ADD_NUMBER( [o maximumLineHeight] ,@"Maximum line height") - ADD_NUMBER( [o minimumLineHeight] ,@"Minimum line height") - ADD_NUMBER( [o paragraphSpacing] ,@"Paragraph spacing") - ADD_NUMBER( [o paragraphSpacingBefore] ,@"Paragraph spacing before") - ADD_OBJECTS( [o tabStops] ,@"Tab stops") - ADD_NUMBER( [o tailIndent] ,@"Tail indent") - ADD_OBJECTS( [o textBlocks] ,@"Text blocks") - ADD_OBJECTS( [o textLists] ,@"Text lists") - ADD_NUMBER( [o tighteningFactorForTruncation] ,@"Tightening factor for truncation") + NSParagraphStyle* o = object; + ADD_CLASS_LABEL(@"NSParagraphStyle Info") + ADD_ENUM(o, alignment, TextAlignment) + ADD_ENUM(o, baseWritingDirection, WritingDirection) + ADD_NUMBER(o, defaultTabInterval) + ADD_NUMBER(o, firstLineHeadIndent) + ADD_NUMBER(o, headerLevel) + ADD_NUMBER(o, headIndent) + ADD_NUMBER(o, hyphenationFactor) + ADD_ENUM(o, lineBreakMode, LineBreakMode) + ADD_NUMBER(o, lineHeightMultiple) + ADD_NUMBER(o, lineSpacing) + ADD_NUMBER(o, maximumLineHeight) + ADD_NUMBER(o, minimumLineHeight) + ADD_NUMBER(o, paragraphSpacing) + ADD_NUMBER(o, paragraphSpacingBefore) + ADD_OBJECTS(o, tabStops) + ADD_NUMBER(o, tailIndent) + ADD_OBJECTS(o, textBlocks) + ADD_OBJECTS(o, textLists) + ADD_NUMBER(o, tighteningFactorForTruncation) } - + - (void)addNSPersistentStoreCoordinator:(id)object { - NSPersistentStoreCoordinator *o = object; - ADD_CLASS_LABEL(@"NSPersistentStoreCoordinator Info") - ADD_OBJECT( [o managedObjectModel] ,@"Managed object model") - ADD_OBJECTS( [o persistentStores] ,@"Persistent stores") -} - + NSPersistentStoreCoordinator* o = object; + ADD_CLASS_LABEL(@"NSPersistentStoreCoordinator Info") + ADD_OBJECT(o, managedObjectModel) + ADD_OBJECTS(o, persistentStores) +} + - (void)addNSPredicateEditorRowTemplate:(id)object { - NSPredicateEditorRowTemplate *o = object; - ADD_CLASS_LABEL(@"NSPredicateEditorRowTemplate Info") - ADD_OBJECTS( [o compoundTypes] ,@"Compound types") - ADD_OBJECTS( [o leftExpressions] ,@"Left expressions") - ADD_OBJECT(objectFromComparisonPredicateModifier([o modifier]) ,@"Modifier") - ADD_OBJECTS( [o operators] ,@"Operators") - ADD_OBJECT(objectFromComparisonPredicateOptions([o options]) ,@"Options") - ADD_OBJECT(objectFromAttributeType([o rightExpressionAttributeType]),@"Right expression attribute type") - ADD_OBJECTS( [o rightExpressions] ,@"Right expressions") - ADD_OBJECTS( [o templateViews] ,@"Template views") -} - + NSPredicateEditorRowTemplate* o = object; + ADD_CLASS_LABEL(@"NSPredicateEditorRowTemplate Info") + ADD_OBJECTS(o, compoundTypes) + ADD_OBJECTS(o, leftExpressions) + ADD_ENUM(o, modifier, ComparisonPredicateModifier) + ADD_OBJECTS(o, operators) + ADD_OPTIONS(o, options, ComparisonPredicateOptions) + ADD_ENUM(o, rightExpressionAttributeType, AttributeType) + ADD_OBJECTS(o, rightExpressions) + ADD_OBJECTS(o, templateViews) +} + - (void)addNSPropertyDescription:(id)object { - if ([object isKindOfClass:[NSAttributeDescription class]]) - { - NSAttributeDescription *o = object; - ADD_CLASS_LABEL(@"NSAttributeDescription Info") - ADD_OBJECT(objectFromAttributeType([o attributeType]) ,@"Attribute type") - ADD_OBJECT( [o attributeValueClassName] ,@"Attribute value class name") - ADD_OBJECT( [o defaultValue] ,@"Default value") - - if ([o attributeType] == NSTransformableAttributeType) - ADD_OBJECT( [o valueTransformerName] ,@"Value transformer name") - - } - else if ([object isKindOfClass:[NSFetchedPropertyDescription class]]) - { - NSFetchedPropertyDescription *o = object; - ADD_CLASS_LABEL(@"NSFetchedPropertyDescription Info") - ADD_OBJECT( [o fetchRequest] ,@"Fetch request") - } - else if ([object isKindOfClass:[NSRelationshipDescription class]]) - { - NSRelationshipDescription *o = object; - ADD_CLASS_LABEL(@"NSRelationshipDescription Info") - ADD_OBJECT(objectFromDeleteRule([o deleteRule]) ,@"Delete rule") - ADD_OBJECT( [o destinationEntity] ,@"Destination entity") - ADD_OBJECT( [o inverseRelationship] ,@"Inverse relationship") - ADD_BOOL( [o isToMany] ,@"Is to many") - ADD_NUMBER( [o maxCount] ,@"Max count") - ADD_NUMBER( [o minCount] ,@"Min count") - } - - NSPropertyDescription *o = object; - ADD_CLASS_LABEL(@"NSPropertyDescription Info") - ADD_OBJECT( [o entity] ,@"Entity") - ADD_BOOL( [o isIndexed] ,@"Is indexed") - ADD_BOOL( [o isOptional] ,@"Is optional") - ADD_BOOL( [o isTransient] ,@"Is transient") - ADD_OBJECT( [o name] ,@"Name") - ADD_DICTIONARY( [o userInfo] ,@"User info") - ADD_OBJECTS( [o validationPredicates] ,@"Validation predicates") - ADD_OBJECTS( [o validationWarnings] ,@"Validation warnings") + if ([object isKindOfClass:[NSAttributeDescription class]]) { + NSAttributeDescription* o = object; + ADD_CLASS_LABEL(@"NSAttributeDescription Info") + ADD_ENUM(o, attributeType, AttributeType) + ADD_OBJECT(o, attributeValueClassName) + ADD_OBJECT(o, defaultValue) + + if ([o attributeType] == NSTransformableAttributeType) + ADD_OBJECT(o, valueTransformerName) + } + else if ([object isKindOfClass:[NSFetchedPropertyDescription class]]) { + NSFetchedPropertyDescription* o = object; + ADD_CLASS_LABEL(@"NSFetchedPropertyDescription Info") + ADD_OBJECT(o, fetchRequest) + } + else if ([object isKindOfClass:[NSRelationshipDescription class]]) { + NSRelationshipDescription* o = object; + ADD_CLASS_LABEL(@"NSRelationshipDescription Info") + ADD_ENUM(o, deleteRule, DeleteRule) + ADD_OBJECT(o, destinationEntity) + ADD_OBJECT(o, inverseRelationship) + ADD_BOOL(o, isToMany) + ADD_NUMBER(o, maxCount) + ADD_NUMBER(o, minCount) + } + + NSPropertyDescription* o = object; + ADD_CLASS_LABEL(@"NSPropertyDescription Info") + ADD_OBJECT(o, entity) + ADD_BOOL(o, isIndexed) + ADD_BOOL(o, isOptional) + ADD_BOOL(o, isTransient) + ADD_OBJECT(o, name) + ADD_DICTIONARY(o, userInfo) + ADD_OBJECTS(o, validationPredicates) + ADD_OBJECTS(o, validationWarnings) } - + - (void)addNSResponder:(id)object { - if ([object isKindOfClass:[NSApplication class]]) - { - NSApplication *o = object; - ADD_CLASS_LABEL(@"NSApplication Info") - ADD_OBJECT_NOT_NIL( [o applicationIconImage] ,@"Application icon image") - ADD_OBJECT_NOT_NIL( [o context] ,@"Context") - ADD_OBJECT_NOT_NIL( [o currentEvent] ,@"Current event") - ADD_OBJECT_NOT_NIL( [o delegate] ,@"Delegate") - ADD_OBJECT_NOT_NIL( [o dockTile] ,@"Dock tile") - ADD_BOOL( [o isActive] ,@"Is active") - ADD_BOOL( [o isHidden] ,@"Is hidden") - ADD_BOOL( [o isRunning] ,@"Is running") - ADD_OBJECT_NOT_NIL( [o keyWindow] ,@"Key window") - ADD_OBJECT_NOT_NIL( [o mainMenu] ,@"Main menu") - ADD_OBJECT_NOT_NIL( [o mainWindow] ,@"Main window") - ADD_OBJECT_NOT_NIL( [o modalWindow] ,@"Modal window") - ADD_OBJECTS( [o orderedDocuments] ,@"Ordered documents") - ADD_OBJECTS( [o orderedWindows] ,@"Ordered windows") - ADD_OBJECT_NOT_NIL( [o servicesMenu] ,@"Services menu") - ADD_OBJECT_NOT_NIL( [o servicesProvider] ,@"Services provider") - ADD_OBJECTS( [o windows] ,@"Windows") - ADD_OBJECT_NOT_NIL( [o windowsMenu] ,@"Windows menu") - } - else if ([object isKindOfClass:[NSDrawer class]]) - { - NSDrawer *o = object; - ADD_CLASS_LABEL(@"NSDrawer Info"); - ADD_SIZE( [o contentSize] ,@"Content size") - ADD_OBJECT( [o contentView] ,@"Content view") - ADD_OBJECT( [o delegate] ,@"Delegate") - ADD_OBJECT(objectFromRectEdge([o edge]) ,@"Edge") - ADD_NUMBER( [o leadingOffset] ,@"Leading offset") - ADD_SIZE( [o maxContentSize] ,@"Max content size") - ADD_SIZE( [o minContentSize] ,@"Min content size") - ADD_OBJECT( [o parentWindow] ,@"Parent window") - ADD_OBJECT(objectFromRectEdge([o preferredEdge]) ,@"Preferred edge") - ADD_OBJECT(objectFromDrawerState([o state]) ,@"State") - ADD_NUMBER( [o trailingOffset] ,@"Trailing offset") - } - else if ([object isKindOfClass:[NSView class]]) - { - [self processNSView:object]; - } - - if ([object isKindOfClass:[NSViewController class]]) - { - NSViewController *o = object; - ADD_CLASS_LABEL(@"NSViewController Info") - ADD_OBJECT_NOT_NIL( [o nibBundle] ,@"Nib bundle") - ADD_OBJECT_NOT_NIL( [o nibName] ,@"Nib name") - ADD_OBJECT_NOT_NIL( [o representedObject] ,@"Represented object") - ADD_OBJECT_NOT_NIL( [o title] ,@"Title") - ADD_OBJECT_NOT_NIL( [o view] ,@"View") - } - else if ([object isKindOfClass:[NSWindow class]]) - { - [self processNSWindow:object]; - } - else if ([object isKindOfClass:[NSWindowController class]]) - { - NSWindowController *o = object; - ADD_CLASS_LABEL(@"NSWindowController Info"); - ADD_OBJECT( [o document] ,@"Document") - ADD_BOOL( [o isWindowLoaded] ,@"Is window loaded") - ADD_OBJECT( [o owner] ,@"Owner") - ADD_BOOL( [o shouldCascadeWindows] ,@"Should cascade windows") - ADD_BOOL( [o shouldCloseDocument] ,@"Should close document") - if ([o isWindowLoaded]) - ADD_OBJECT( [o window] ,@"Window") - ADD_OBJECT( [o windowFrameAutosaveName] ,@"Window frame autosave name") - ADD_OBJECT( [o windowNibName] ,@"Window nib name") - ADD_OBJECT( [o windowNibPath] ,@"Window nib path") - } - - NSResponder *o = object; - ADD_CLASS_LABEL(@"NSResponder Info") - ADD_BOOL( [o acceptsFirstResponder] ,@"Accepts first responder") - - @try - { - [view addObject:[o menu] withLabel:@"Menu" toMatrix:m classLabel:classLabel selectedClassLabel:selectedClassLabel selectedLabel:selectedLabel selectedObject:selectedObject]; - // The menu method might raise if not implemented in the actual NSResponder subclass - } - @catch (id exception) {} - - if ([o nextResponder]) - { - NSResponder *responder = o; - NSMutableArray *responders = [NSMutableArray array]; - while ((responder = [responder nextResponder])) [responders addObject:responder]; - [view addObjects:responders withLabel:@"Next responders" toMatrix:m classLabel:classLabel selectedClassLabel:selectedClassLabel selectedLabel:selectedLabel selectedObject:selectedObject]; - } - - ADD_OBJECT( [o undoManager] ,@"Undo Manager") + if ([object isKindOfClass:[NSApplication class]]) { + + #pragma mark ► NSApplication + //-------------------------------------------------------------------------------- + + NSApplication* o = object; + ADD_CLASS_LABEL(@"NSApplication Info") + ADD_OBJECT_NOT_NIL(o, applicationIconImage) + ADD_OBJECT_NOT_NIL(o, context) + ADD_OBJECT_NOT_NIL(o, currentEvent) + ADD_OBJECT(o, delegate, NSObject.class, YES) + ADD_OBJECT_NOT_NIL(o, dockTile) + ADD_BOOL(o, isActive) + ADD_BOOL(o, isHidden) + ADD_BOOL(o, isRunning) + ADD_OBJECT_NOT_NIL(o, keyWindow) + ADD_OBJECT_NOT_NIL(o, mainMenu) + ADD_OBJECT_NOT_NIL(o, mainWindow) + ADD_OBJECT_NOT_NIL(o, modalWindow) + ADD_OBJECTS(o, orderedDocuments) + ADD_OBJECTS(o, orderedWindows) + ADD_OBJECT_NOT_NIL(o, servicesMenu) + ADD_OBJECT_NOT_NIL(o, servicesProvider) + ADD_OBJECTS(o, windows) + ADD_OBJECT_NOT_NIL(o, windowsMenu) + } + else if ([object isKindOfClass:[NSDrawer class]]) { + + + #pragma mark ► NSDrawer + //-------------------------------------------------------------------------------- + + NSDrawer* o = object; + ADD_CLASS_LABEL(@"NSDrawer Info"); + ADD_SIZE(o, contentSize) + ADD_OBJECT(o, contentView) + ADD_OBJECT(o, delegate, NSObject.class, YES) + ADD_ENUM(o, edge, RectEdge) + ADD_NUMBER(o, leadingOffset) + ADD_SIZE(o, maxContentSize) + ADD_SIZE(o, minContentSize) + ADD_OBJECT(o, parentWindow) + ADD_ENUM(o, preferredEdge, RectEdge) + ADD_ENUM(o, state, DrawerState) + ADD_NUMBER(o, trailingOffset) + } + else if ([object isKindOfClass:[NSView class]]) { + [self processNSView:object]; + } + + if ([object isKindOfClass:[NSViewController class]]) { + + + #pragma mark ► NSViewController + //-------------------------------------------------------------------------------- + + NSViewController* o = object; + ADD_CLASS_LABEL(@"NSViewController Info") + ADD_OBJECT_NOT_NIL(o, nibBundle) + ADD_OBJECT_NOT_NIL(o, nibName) + ADD_OBJECT_NOT_NIL(o, representedObject) + ADD_STRING_NOT_NIL(o, title) + ADD_OBJECT_NOT_NIL(o, view) + } + else if ([object isKindOfClass:[NSWindow class]]) { + [self processNSWindow:object]; + } + else if ([object isKindOfClass:[NSWindowController class]]) { + + + #pragma mark ► NSWindowController + //-------------------------------------------------------------------------------- + + NSWindowController* o = object; + ADD_CLASS_LABEL(@"NSWindowController Info"); + ADD_OBJECT(o, document) + ADD_BOOL(o, isWindowLoaded) + ADD_OBJECT(o, owner) + ADD_BOOL(o, shouldCascadeWindows) + ADD_BOOL(o, shouldCloseDocument) + if ([o isWindowLoaded]) + ADD_OBJECT(o, window) + ADD_OBJECT(o, windowFrameAutosaveName) + ADD_OBJECT(o, windowNibName) + ADD_OBJECT(o, windowNibPath) + } + + NSResponder* o = object; + ADD_CLASS_LABEL(@"NSResponder Info") + ADD_BOOL(o, acceptsFirstResponder) + + @try { + [view addObject:[o menu] withLabel:@"Menu" toMatrix:m classLabel:classLabel selectedClassLabel:selectedClassLabel selectedLabel:selectedLabel selectedObject:selectedObject]; + // The menu method might raise if not implemented in the actual NSResponder subclass + } + @catch (id exception) {} + + if ([o nextResponder]) { + NSResponder* responder = o; + NSMutableArray* responders = [NSMutableArray array]; + while ((responder = [responder nextResponder])) + [responders addObject:responder]; + [view addObjects:responders withLabel:@"Next responders" toMatrix:m classLabel:classLabel selectedClassLabel:selectedClassLabel selectedLabel:selectedLabel selectedObject:selectedObject]; + } + + ADD_OBJECT(o, undoManager) } - + - (void)addNSRulerMarker:(id)object { - NSRulerMarker *o = object; - ADD_CLASS_LABEL(@"NSRulerMarker Info"); - ADD_OBJECT( [o image] ,@"Image") - ADD_POINT( [o imageOrigin] ,@"Image origin") - ADD_RECT( [o imageRectInRuler] ,@"Image rect in ruler") - ADD_BOOL( [o isDragging] ,@"Is dragging") - ADD_BOOL( [o isMovable] ,@"Is movable") - ADD_BOOL( [o isRemovable] ,@"Is removable") - ADD_NUMBER( [o markerLocation] ,@"Marker location") - ADD_OBJECT( [o representedObject] ,@"Represented object") - ADD_OBJECT( [o ruler] ,@"Ruler") - ADD_NUMBER( [o thicknessRequiredInRuler] ,@"Thickness required in ruler") - + NSRulerMarker* o = object; + ADD_CLASS_LABEL(@"NSRulerMarker Info"); + ADD_OBJECT(o, image) + ADD_POINT(o, imageOrigin) + ADD_RECT(o, imageRectInRuler) + ADD_BOOL(o, isDragging) + ADD_BOOL(o, isMovable) + ADD_BOOL(o, isRemovable) + ADD_NUMBER(o, markerLocation) + ADD_OBJECT(o, representedObject) + ADD_OBJECT(o, ruler) + ADD_NUMBER(o, thicknessRequiredInRuler) } - + - (void)addNSScreen:(id)object { - NSScreen *o = object; - ADD_CLASS_LABEL(@"NSScreen Info"); - ADD_NUMBER( [o depth] ,@"Depth") - ADD_DICTIONARY( [o deviceDescription] ,@"Device description") - ADD_RECT( [o frame] ,@"Frame") - ADD_NUMBER( [o userSpaceScaleFactor] ,@"User space scale factor") - ADD_RECT( [o visibleFrame] ,@"Visible frame") - + NSScreen* o = object; + ADD_CLASS_LABEL(@"NSScreen Info"); + ADD_NUMBER(o, depth) + ADD_DICTIONARY(o, deviceDescription) + ADD_RECT(o, frame) + ADD_NUMBER(o, userSpaceScaleFactor) + ADD_RECT(o, visibleFrame) } - + - (void)addNSShadow:(id)object { - NSShadow *o = object; - ADD_CLASS_LABEL(@"NSShadow Info"); - ADD_NUMBER( [o shadowBlurRadius] ,@"Shadow blur radius") - ADD_OBJECT( [o shadowColor] ,@"Shadow color") - ADD_SIZE( [o shadowOffset] ,@"Shadow offset") - + NSShadow* o = object; + ADD_CLASS_LABEL(@"NSShadow Info"); + ADD_NUMBER(o, shadowBlurRadius) + ADD_COLOR(o, shadowColor) + ADD_SIZE(o, shadowOffset) } - + - (void)addNSStatusBar:(id)object { - NSStatusBar *o = object; - ADD_CLASS_LABEL(@"NSStatusBar Info"); - ADD_BOOL( [o isVertical] ,@"Is vertical") - ADD_NUMBER( [o thickness] ,@"Thickness") - + NSStatusBar* o = object; + ADD_CLASS_LABEL(@"NSStatusBar Info"); + ADD_BOOL(o, isVertical) + ADD_NUMBER(o, thickness) } - + - (void)addNSStatusItem:(id)object { - NSStatusItem *o = object; - ADD_CLASS_LABEL(@"NSStatusItem Info"); - ADD_SEL( [o action] ,@"Action") - ADD_OBJECT_NOT_NIL( [o alternateImage] ,@"Alternate image") - ADD_OBJECT_NOT_NIL( [o attributedTitle] ,@"Attributed title") - ADD_SEL( [o doubleAction] ,@"Double action") - ADD_BOOL( [o highlightMode] ,@"Highlight mode") - ADD_OBJECT_NOT_NIL( [o image] ,@"Image") - ADD_BOOL( [o isEnabled] ,@"Is enabled") - ADD_OBJECT(objectFromStatusItemLength([o length]) ,@"Length") - ADD_OBJECT_NOT_NIL( [o menu] ,@"Menu") - ADD_OBJECT( [o statusBar] ,@"Status bar") - ADD_OBJECT( [o target] ,@"Target") - ADD_OBJECT_NOT_NIL( [o title] ,@"Title") - ADD_OBJECT_NOT_NIL( [o toolTip] ,@"Tool tip") - ADD_OBJECT_NOT_NIL( [o view] ,@"View") - + NSStatusItem* o = object; + ADD_CLASS_LABEL(@"NSStatusItem Info"); + ADD_SEL(o, action) + ADD_OBJECT_NOT_NIL(o, alternateImage) + ADD_OBJECT_NOT_NIL(o, attributedTitle) + ADD_SEL(o, doubleAction) + ADD_BOOL(o, highlightMode) + ADD_OBJECT_NOT_NIL(o, image) + ADD_BOOL(o, isEnabled) + ADD_ENUM(o, length, StatusItemLength) + ADD_OBJECT_NOT_NIL(o, menu) + ADD_OBJECT(o, statusBar) + ADD_OBJECT(o, target) + ADD_STRING_NOT_NIL(o, title) + ADD_STRING_NOT_NIL(o, toolTip) + ADD_OBJECT_NOT_NIL(o, view) } - + - (void)addNSTabViewItem:(id)object { - NSTabViewItem *o = object; - ADD_CLASS_LABEL(@"NSTabViewItem Info"); - ADD_OBJECT( [o color] ,@"Color") - ADD_OBJECT( [(NSTabViewItem *)o identifier] ,@"Identifier") - ADD_OBJECT( [o initialFirstResponder] ,@"Initial first responder") - ADD_OBJECT( [o label] ,@"Label") - ADD_OBJECT( objectFromTabState([o tabState]) ,@"Tab state") - ADD_OBJECT( [o tabView] ,@"Parent tab view") - ADD_OBJECT( [o view] ,@"View") - + NSTabViewItem* o = object; + ADD_CLASS_LABEL(@"NSTabViewItem Info"); + ADD_COLOR(o, color) + ADD_OBJECT(o, identifier) + ADD_OBJECT(o, initialFirstResponder) + ADD_OBJECT(o, label) + ADD_ENUM(o, tabState, TabState) + ADD_OBJECT(o, tabView) + ADD_OBJECT(o, view) } - + - (void)addNSTableColumn:(id)object { - NSTableColumn *o = object; - ADD_CLASS_LABEL(@"NSTableColumn Info"); - ADD_OBJECT( [o dataCell] ,@"Data cell") - ADD_OBJECT( [o headerCell] ,@"Header cell") - ADD_OBJECT_NOT_NIL( [o headerToolTip] ,@"Header tool tip") - ADD_OBJECT( [(NSTableColumn*)o identifier] ,@"Identifier") - ADD_BOOL( [o isEditable] ,@"Is editable") - ADD_BOOL( [o isHidden] ,@"Is hidden") - ADD_NUMBER( [o maxWidth] ,@"Max width") - ADD_NUMBER( [o minWidth] ,@"Min width") - ADD_OBJECT(objectFromTableColumnResizingMask([o resizingMask]) ,@"Resizing mask") - ADD_OBJECT_NOT_NIL( [o sortDescriptorPrototype] ,@"Sort descriptor prototype") - ADD_OBJECT( [o tableView] ,@"Table view") - ADD_NUMBER( [o width] ,@"Width") - + NSTableColumn* o = object; + ADD_CLASS_LABEL(@"NSTableColumn Info"); + ADD_OBJECT(o, dataCell) + ADD_OBJECT(o, headerCell) + ADD_OBJECT_NOT_NIL(o, headerToolTip) + ADD_OBJECT(o, identifier) + ADD_BOOL(o, isEditable) + ADD_BOOL(o, isHidden) + ADD_NUMBER(o, maxWidth) + ADD_NUMBER(o, minWidth) + ADD_OPTIONS(o, resizingMask, TableColumnResizingOptions) + ADD_OBJECT_NOT_NIL(o, sortDescriptorPrototype) + ADD_OBJECT(o, tableView) + ADD_NUMBER(o, width) } - + - (void)addNSTextAttachment:(id)object { - NSTextAttachment *o = object; - ADD_CLASS_LABEL(@"NSTextAttachment Info"); - ADD_OBJECT( [o attachmentCell] ,@"Attachment cell") - ADD_OBJECT( [o fileWrapper] ,@"File wrapper") - + NSTextAttachment* o = object; + ADD_CLASS_LABEL(@"NSTextAttachment Info"); + ADD_OBJECT(o, attachmentCell) + ADD_OBJECT(o, fileWrapper) } - + - (void)addNSTextBlock:(id)object { - if ([object isKindOfClass:[NSTextTableBlock class]]) - { - NSTextTableBlock *o = object; - ADD_CLASS_LABEL(@"NSTextTableBlock Info"); - ADD_NUMBER( [o columnSpan] ,@"Column span") - ADD_NUMBER( [o rowSpan] ,@"Row span") - ADD_NUMBER( [o startingColumn] ,@"Starting column") - ADD_NUMBER( [o startingRow] ,@"Starting row") - ADD_OBJECT( [o table] ,@"Table") - } - else if ([object isKindOfClass:[NSTextTable class]]) - { - NSTextTable *o = object; - ADD_CLASS_LABEL(@"NSTextTable Info"); - ADD_BOOL( [o collapsesBorders] ,@"Collapses borders") - ADD_BOOL( [o hidesEmptyCells] ,@"Hides empty cells") - ADD_OBJECT(objectFromTextTableLayoutAlgorithm([o layoutAlgorithm]),@"Layout algorithm") - ADD_NUMBER( [o numberOfColumns] ,@"Number of columns") - } - - NSTextBlock *o = object; - ADD_CLASS_LABEL(@"NSTextBlock Info"); - ADD_OBJECT( [o backgroundColor] ,@"Background color") - ADD_NUMBER( [o contentWidth] ,@"Content width") - ADD_OBJECT(objectFromTextBlockValueType([o contentWidthValueType]),@"Content width value type") - ADD_OBJECT(objectFromTextBlockVerticalAlignment([o verticalAlignment]),@"Vertical alignment") + if ([object isKindOfClass:[NSTextTableBlock class]]) { + NSTextTableBlock* o = object; + ADD_CLASS_LABEL(@"NSTextTableBlock Info"); + ADD_NUMBER(o, columnSpan) + ADD_NUMBER(o, rowSpan) + ADD_NUMBER(o, startingColumn) + ADD_NUMBER(o, startingRow) + ADD_OBJECT(o, table) + } + else if ([object isKindOfClass:[NSTextTable class]]) { + NSTextTable* o = object; + ADD_CLASS_LABEL(@"NSTextTable Info"); + ADD_BOOL(o, collapsesBorders) + ADD_BOOL(o, hidesEmptyCells) + ADD_ENUM(o, layoutAlgorithm, TextTableLayoutAlgorithm) + ADD_NUMBER(o, numberOfColumns) + } + + NSTextBlock* o = object; + ADD_CLASS_LABEL(@"NSTextBlock Info"); + ADD_COLOR(o, backgroundColor) + ADD_NUMBER(o, contentWidth) + ADD_ENUM(o, contentWidthValueType, TextBlockValueType) + ADD_ENUM(o, verticalAlignment, TextBlockVerticalAlignment) } - + - (void)addNSTextContainer:(id)object { - NSTextContainer *o = object; - ADD_CLASS_LABEL(@"NSTextContainer Info"); - ADD_SIZE( [o containerSize] ,@"Container size") - ADD_BOOL( [o heightTracksTextView] ,@"Height tracks text view") - ADD_BOOL( [o isSimpleRectangularTextContainer] ,@"Is simple rectangular text container") - ADD_OBJECT_NOT_NIL( [o layoutManager] ,@"Layout manager") - ADD_NUMBER( [o lineFragmentPadding] ,@"Line fragment padding") - ADD_OBJECT_NOT_NIL( [o textView] ,@"Text view") - ADD_BOOL( [o widthTracksTextView] ,@"Width tracks text view") - + NSTextContainer* o = object; + ADD_CLASS_LABEL(@"NSTextContainer Info"); + ADD_SIZE(o, containerSize) + ADD_BOOL(o, heightTracksTextView) + ADD_BOOL(o, isSimpleRectangularTextContainer) + ADD_OBJECT_NOT_NIL(o, layoutManager) + ADD_NUMBER(o, lineFragmentPadding) + ADD_OBJECT_NOT_NIL(o, textView) + ADD_BOOL(o, widthTracksTextView) } - + - (void)addNSTextList:(id)object { - NSTextList *o = object; - ADD_CLASS_LABEL(@"NSTextList Info"); - ADD_OBJECT(objectFromTextListOptionsMask([o listOptions]) ,@"List options") - ADD_OBJECT( [o markerFormat] ,@"Marker format") - + NSTextList* o = object; + ADD_CLASS_LABEL(@"NSTextList Info"); + ADD_OPTIONS(o, listOptions, TextListOptions) + ADD_OBJECT(o, markerFormat) } - + - (void)addNSTextTab:(id)object { - NSTextTab *o = object; - ADD_CLASS_LABEL(@"NSTextTab Info"); - ADD_OBJECT( objectFromTextAlignment([o alignment]) ,@"Alignment") - ADD_NUMBER( [o location] ,@"Location") - ADD_OBJECT( [o options] ,@"Options") - ADD_OBJECT(objectFromTextTabType([o tabStopType]) ,@"Tab stop type") - + NSTextTab* o = object; + ADD_CLASS_LABEL(@"NSTextTab Info"); + ADD_ENUM(o, alignment, TextAlignment) + ADD_NUMBER(o, location) + ADD_OBJECT(o, options) + ADD_ENUM(o, tabStopType, TextTabType) } - + - (void)addNSToolbar:(id)object { - NSToolbar *o = object; - ADD_CLASS_LABEL(@"NSToolbar Info"); - ADD_BOOL( [o allowsUserCustomization] ,@"Allows user customization") - ADD_BOOL( [o autosavesConfiguration] ,@"Autosaves configuration") - ADD_DICTIONARY( [o configurationDictionary] ,@"Configuration dictionary") - ADD_BOOL( [o customizationPaletteIsRunning] ,@"Customization palette is running") - ADD_OBJECT( [o delegate] ,@"Delegate") - ADD_OBJECT(objectFromToolbarDisplayMode([o displayMode]) ,@"Display mode") - ADD_OBJECT( [(NSToolbar*)o identifier] ,@"Identifier") - ADD_BOOL( [o isVisible] ,@"Is visible") - ADD_OBJECTS( [o items] ,@"Items") - ADD_OBJECT_NOT_NIL( [o selectedItemIdentifier] ,@"Selected item identifier") - ADD_BOOL( [o showsBaselineSeparator] ,@"Shows baseline separator") - ADD_OBJECT(objectFromToolbarSizeMode([o sizeMode]) ,@"Identifier") - ADD_OBJECTS( [o visibleItems] ,@"Visible items") + NSToolbar* o = object; + ADD_CLASS_LABEL(@"NSToolbar Info"); + ADD_BOOL(o, allowsUserCustomization) + ADD_BOOL(o, autosavesConfiguration) + ADD_DICTIONARY(o, configurationDictionary) + ADD_BOOL(o, customizationPaletteIsRunning) + ADD_OBJECT(o, delegate, NSObject.class, YES) + ADD_ENUM(o, displayMode, ToolbarDisplayMode) + ADD_OBJECT(o, identifier) + ADD_BOOL(o, isVisible) + ADD_OBJECTS(o, items) + ADD_OBJECT_NOT_NIL(o, selectedItemIdentifier) + ADD_BOOL(o, showsBaselineSeparator) + ADD_ENUM(o, sizeMode, ToolbarSizeMode) + ADD_OBJECTS(o, visibleItems) } - + - (void)addNSToolbarItem:(id)object { - if ([object isKindOfClass:[NSToolbarItemGroup class]]) - { - NSToolbarItemGroup *o = object; - ADD_CLASS_LABEL(@"NSToolbarItemGroup Info"); - ADD_OBJECTS( [o subitems] ,@"Subitems") - } - - NSToolbarItem *o = object; - ADD_CLASS_LABEL(@"NSToolbarItem Info"); - ADD_SEL( [o action] ,@"Action") - ADD_BOOL( [o allowsDuplicatesInToolbar] ,@"Allows duplicates in toolbar") - ADD_BOOL( [o autovalidates] ,@"Autovalidates") - ADD_OBJECT( [o image] ,@"Image") - ADD_BOOL( [o isEnabled] ,@"Is enabled") - ADD_OBJECT( [(NSToolbarItem*)o itemIdentifier] ,@"Item identifier") - ADD_OBJECT( [o label] ,@"Label") - ADD_SIZE( [o maxSize] ,@"Max size") - ADD_OBJECT_NOT_NIL( [o menuFormRepresentation] ,@"Menu form representation") - ADD_SIZE( [o minSize] ,@"Min size") - ADD_OBJECT( [o paletteLabel] ,@"Palette label") - ADD_NUMBER( [o tag] ,@"Tag") - ADD_OBJECT( [o target] ,@"Target") - ADD_OBJECT( [o toolbar] ,@"Toolbar") - ADD_OBJECT_NOT_NIL( [o toolTip] ,@"Tool tip") - ADD_OBJECT( [o view] ,@"View") - ADD_OBJECT(objectFromToolbarItemVisibilityPriority([o visibilityPriority]),@"Visibility priority") - + if ([object isKindOfClass:[NSToolbarItemGroup class]]) { + NSToolbarItemGroup* o = object; + ADD_CLASS_LABEL(@"NSToolbarItemGroup Info"); + ADD_OBJECTS(o, subitems) + } + + NSToolbarItem* o = object; + ADD_CLASS_LABEL(@"NSToolbarItem Info"); + ADD_SEL(o, action) + ADD_BOOL(o, allowsDuplicatesInToolbar) + ADD_BOOL(o, autovalidates) + ADD_OBJECT(o, image) + ADD_BOOL(o, isEnabled) + ADD_OBJECT(o, itemIdentifier) + ADD_OBJECT(o, label) + ADD_SIZE(o, maxSize) + ADD_OBJECT_NOT_NIL(o, menuFormRepresentation) + ADD_SIZE(o, minSize) + ADD_OBJECT(o, paletteLabel) + ADD_NUMBER(o, tag) + ADD_OBJECT(o, target) + ADD_OBJECT(o, toolbar) + ADD_OBJECT_NOT_NIL(o, toolTip) + ADD_OBJECT(o, view) + ADD_ENUM(o, visibilityPriority, ToolbarItemVisibilityPriority) } - + - (void)addNSTrackingArea:(id)object { - NSTrackingArea *o = object; - ADD_CLASS_LABEL(@"NSTrackingArea Info"); - ADD_OBJECT(objectFromTrackingAreaOptions([o options]) ,@"Options") - ADD_OBJECT( [o owner] ,@"Owner") - ADD_RECT( [o rect] ,@"Rect") - ADD_DICTIONARY( [o userInfo] ,@"User info") - + NSTrackingArea* o = object; + ADD_CLASS_LABEL(@"NSTrackingArea Info"); + ADD_OPTIONS(o, options, TrackingAreaOptions) + ADD_OBJECT(o, owner) + ADD_RECT(o, rect) + ADD_DICTIONARY(o, userInfo) } - (void)addNSUndoManager:(id)object { - NSUndoManager *o = object; - ADD_CLASS_LABEL(@"NSUndoManager Info"); - ADD_NUMBER( [o groupingLevel] ,@"Grouping level") - ADD_BOOL( [o groupsByEvent] ,@"Groups by event") - ADD_BOOL( [o isUndoRegistrationEnabled] ,@"Is undo registration enabled") - ADD_NUMBER( [o levelsOfUndo] ,@"Levels of undo") - ADD_OBJECT_NOT_NIL( [o redoActionName] ,@"Redo action name") - ADD_OBJECT_NOT_NIL( [o redoMenuItemTitle] ,@"Redo menu item title") - ADD_OBJECTS( [o runLoopModes] ,@"Run loop modes") - ADD_OBJECT_NOT_NIL( [o undoActionName] ,@"Undo action name") - ADD_OBJECT_NOT_NIL( [o undoMenuItemTitle] ,@"Undo menu item title") + NSUndoManager* o = object; + ADD_CLASS_LABEL(@"NSUndoManager Info"); + ADD_NUMBER(o, groupingLevel) + ADD_BOOL(o, groupsByEvent) + ADD_BOOL(o, isUndoRegistrationEnabled) + ADD_NUMBER(o, levelsOfUndo) + ADD_STRING_NOT_NIL(o, redoActionName) + ADD_STRING_NOT_NIL(o, redoMenuItemTitle) + ADD_OBJECTS(o, runLoopModes) + ADD_STRING_NOT_NIL(o, undoActionName) + ADD_STRING_NOT_NIL(o, undoMenuItemTitle) } --(void)addNSATSTypesetter:(id)object +- (void)addNSATSTypesetter:(id)object { - if ([object isKindOfClass:NSClassFromString(@"NSATSTypesetter")]) - { - // NSATSTypesetter *o = object; - // ADD_CLASS_LABEL(@"NSATSTypesetter Info"); - } - - NSTypesetter *o = object; - ADD_CLASS_LABEL(@"NSTypesetter Info"); - //ADD_OBJECT( [o attributedString] ,@"Attributed string") - ADD_DICTIONARY( [o attributesForExtraLineFragment] ,@"Attributes for extra line fragment") - ADD_BOOL( [o bidiProcessingEnabled] ,@"Bidi processing enabled") - ADD_OBJECT_NOT_NIL( [o currentTextContainer] ,@"Current text container") - ADD_NUMBER( [o hyphenationFactor] ,@"Hyphenation factor") - ADD_OBJECT_NOT_NIL( [o layoutManager] ,@"Layout manager") - ADD_NUMBER( [o lineFragmentPadding] ,@"Line fragment padding") - ADD_OBJECT(objectFromTypesetterBehavior([o typesetterBehavior]) ,@"Typesetter behavior") - ADD_BOOL( [o usesFontLeading] ,@"Uses font leading") + if ([object isKindOfClass:NSClassFromString(@"NSATSTypesetter")]) { + // NSATSTypesetter *o = object; + // ADD_CLASS_LABEL(@"NSATSTypesetter Info"); + } + + NSTypesetter* o = object; + ADD_CLASS_LABEL(@"NSTypesetter Info"); + //ADD_OBJECT( [o attributedString] ,@"Attributed string") + ADD_DICTIONARY(o, attributesForExtraLineFragment) + ADD_BOOL(o, bidiProcessingEnabled) + ADD_OBJECT_NOT_NIL(o, currentTextContainer) + ADD_NUMBER(o, hyphenationFactor) + ADD_OBJECT_NOT_NIL(o, layoutManager) + ADD_NUMBER(o, lineFragmentPadding) + ADD_ENUM(o, typesetterBehavior, TypesetterBehavior) + ADD_BOOL(o, usesFontLeading) } - (void)processNSView:(id)object { - if ([object isKindOfClass:[NSBox class]]) - { - NSBox *o = object; - ADD_CLASS_LABEL(@"NSBox Info"); - ADD_OBJECT( [o borderColor] ,@"Border color" ) - ADD_RECT( [o borderRect] ,@"Border rect") - ADD_OBJECT(objectFromBorderType([o borderType]) ,@"Border type" ) - ADD_NUMBER( [o borderWidth] ,@"Border width") - ADD_OBJECT(objectFromBoxType([o boxType]) ,@"Box type" ) - ADD_OBJECT( [o contentView] ,@"Content view" ) - ADD_SIZE( [o contentViewMargins] ,@"Content view margins") - ADD_NUMBER( [o cornerRadius] ,@"Corner radius") - ADD_OBJECT( [o fillColor] ,@"Fill color" ) - ADD_BOOL( [o isTransparent] ,@"Is transparent") - ADD_OBJECT( [o title] ,@"Title" ) - ADD_OBJECT( [o titleCell] ,@"Title cell" ) - ADD_OBJECT( [o titleFont] ,@"Title font" ) - ADD_OBJECT(objectFromTitlePosition([o titlePosition]) ,@"Title position" ) - ADD_RECT( [o titleRect] ,@"Title rect") - } - if ([object isKindOfClass:[NSCollectionView class]]) - { - NSCollectionView *o = object; - ADD_CLASS_LABEL(@"NSCollectionView Info"); - ADD_BOOL( [o allowsMultipleSelection] ,@"Allows multiple selection") - ADD_OBJECTS( [o backgroundColors] ,@"Background colors" ) - ADD_OBJECT( [o content] ,@"Content" ) - ADD_BOOL( [o isFirstResponder] ,@"Is first responder") - ADD_BOOL( [o isSelectable] ,@"Is selectable") - ADD_OBJECT_NOT_NIL( [o itemPrototype] ,@"Item prototype" ) - ADD_SIZE( [o maxItemSize] ,@"Max item size") - ADD_NUMBER( [o maxNumberOfColumns] ,@"Max number of columns") - ADD_NUMBER( [o maxNumberOfRows] ,@"Max number of rows") - ADD_SIZE( [o minItemSize] ,@"Min item size") - ADD_OBJECT_NOT_NIL( [o selectionIndexes] ,@"Selection indexes" ) - } - else if ([object isKindOfClass:[NSControl class]]) - { - [self processNSControl:object]; - } - else if ([object isKindOfClass:[NSClipView class]]) - { - NSClipView *o = object; - ADD_CLASS_LABEL(@"NSClipView Info"); - ADD_OBJECT( [o backgroundColor] ,@"Background color") - ADD_BOOL( [o copiesOnScroll] ,@"Copies on scroll") - ADD_OBJECT( [o documentCursor] ,@"Document cursor") - ADD_RECT( [o documentRect] ,@"Document rect") - ADD_OBJECT( [o documentView] ,@"Document view") - ADD_RECT( [o documentVisibleRect] ,@"Document visible rect") - ADD_BOOL( [o drawsBackground] ,@"Draws background") - } - else if ([object isKindOfClass:[NSOpenGLView class]]) - { - NSOpenGLView *o = object; - ADD_CLASS_LABEL(@"NSOpenGLView Info"); - ADD_OBJECT( [o openGLContext] ,@"OpenGL context") - ADD_OBJECT( [o pixelFormat] ,@"Pixel format") - } - else if ([object isKindOfClass:[NSProgressIndicator class]]) - { - NSProgressIndicator *o = object; - ADD_CLASS_LABEL(@"NSProgressIndicator Info"); - ADD_OBJECT( objectFromControlSize([o controlSize]) ,@"Control size") - ADD_OBJECT( objectFromControlTint([o controlTint]) ,@"Control tint") - if ([o style] == NSProgressIndicatorBarStyle && ![o isIndeterminate]) - ADD_NUMBER( [o doubleValue] ,@"Double value") - ADD_BOOL( [o isBezeled] ,@"Is bezeled") - ADD_BOOL( [o isDisplayedWhenStopped] ,@"Is displayed when stopped") - if ([o style] == NSProgressIndicatorBarStyle && ![o isIndeterminate]) - { - ADD_NUMBER( [o maxValue] ,@"Max value") - ADD_NUMBER( [o minValue] ,@"Min value") + if ([object isKindOfClass:[NSBox class]]) { + + + #pragma mark ► NSBox + //-------------------------------------------------------------------------------- + + NSBox* o = object; + ADD_CLASS_LABEL(@"NSBox Info"); + ADD_COLOR(o, borderColor) + ADD_RECT(o, borderRect) + ADD_ENUM(o, borderType, BorderType) + ADD_NUMBER(o, borderWidth) + ADD_ENUM(o, boxType, BoxType) + ADD_OBJECT(o, contentView) + ADD_SIZE(o, contentViewMargins) + ADD_NUMBER(o, cornerRadius) + ADD_COLOR(o, fillColor) + ADD_BOOL(o, isTransparent) + ADD_STRING(o, title) + ADD_OBJECT(o, titleCell) + ADD_OBJECT(o, titleFont) + ADD_ENUM(o, titlePosition, TitlePosition) + ADD_RECT(o, titleRect) + } + if ([object isKindOfClass:[NSCollectionView class]]) { + + + #pragma mark ► NSCollectionView + //-------------------------------------------------------------------------------- + + NSCollectionView* o = object; + ADD_CLASS_LABEL(@"NSCollectionView Info"); + ADD_BOOL(o, allowsMultipleSelection) + ADD_OBJECTS(o, backgroundColors) + ADD_OBJECT(o, content) + ADD_BOOL(o, isFirstResponder) + ADD_BOOL(o, isSelectable) + ADD_OBJECT_NOT_NIL(o, itemPrototype) + ADD_SIZE(o, maxItemSize) + ADD_NUMBER(o, maxNumberOfColumns) + ADD_NUMBER(o, maxNumberOfRows) + ADD_SIZE(o, minItemSize) + ADD_OBJECT_NOT_NIL(o, selectionIndexes) + } + else if ([object isKindOfClass:[NSControl class]]) { + [self processNSControl:object]; + } + else if ([object isKindOfClass:[NSClipView class]]) { + + + #pragma mark ► NSClipView + //-------------------------------------------------------------------------------- + + NSClipView* o = object; + ADD_CLASS_LABEL(@"NSClipView Info"); + ADD_COLOR(o, backgroundColor) + ADD_BOOL(o, copiesOnScroll) + ADD_OBJECT(o, documentCursor) + ADD_RECT(o, documentRect) + ADD_OBJECT(o, documentView) + ADD_RECT(o, documentVisibleRect) + ADD_BOOL(o, drawsBackground) + } + else if ([object isKindOfClass:[NSOpenGLView class]]) { + + + #pragma mark ► NSOpenGLView + //-------------------------------------------------------------------------------- + + NSOpenGLView* o = object; + ADD_CLASS_LABEL(@"NSOpenGLView Info"); + ADD_OBJECT(o, openGLContext) + ADD_OBJECT(o, pixelFormat) + } + else if ([object isKindOfClass:[NSProgressIndicator class]]) { + + + #pragma mark ► NSProgressIndicator + //-------------------------------------------------------------------------------- + + NSProgressIndicator* o = object; + ADD_CLASS_LABEL(@"NSProgressIndicator Info"); + ADD_ENUM(o, controlSize, ControlSize) + ADD_ENUM(o, controlTint, ControlTint) + if ([o style] == NSProgressIndicatorBarStyle && ![o isIndeterminate]) + ADD_NUMBER(o, doubleValue) + ADD_BOOL(o, isBezeled) + ADD_BOOL(o, isDisplayedWhenStopped) + if ([o style] == NSProgressIndicatorBarStyle && ![o isIndeterminate]) { + ADD_NUMBER(o, maxValue) + ADD_NUMBER(o, minValue) + } + ADD_ENUM(o, style, ProgressIndicatorStyle) + ADD_BOOL(o, usesThreadedAnimation) + } + else if ([object isKindOfClass:[NSRulerView class]]) { + + + #pragma mark ► NSRulerView + //-------------------------------------------------------------------------------- + + NSRulerView* o = object; + ADD_CLASS_LABEL(@"NSRulerView Info"); + ADD_OBJECT_NOT_NIL(o, accessoryView) + ADD_NUMBER(o, baselineLocation) + ADD_OBJECT(o, clientView) + ADD_BOOL(o, isFlipped) + ADD_OBJECTS(o, markers) + ADD_OBJECT(o, measurementUnits) + ADD_ENUM(o, orientation, RulerOrientation) + ADD_NUMBER(o, originOffset) + ADD_NUMBER(o, requiredThickness) + ADD_NUMBER(o, reservedThicknessForAccessoryView) + ADD_NUMBER(o, reservedThicknessForMarkers) + ADD_NUMBER(o, ruleThickness) + ADD_OBJECT(o, scrollView) + } + else if ([object isKindOfClass:[NSScrollView class]]) { + + + #pragma mark ► NSScrollView + //-------------------------------------------------------------------------------- + + NSScrollView* o = object; + ADD_CLASS_LABEL(@"NSScrollView Info"); + ADD_BOOL(o, autohidesScrollers) + ADD_COLOR(o, backgroundColor) + ADD_ENUM(o, borderType, BorderType) + ADD_SIZE(o, contentSize) + ADD_OBJECT(o, contentView) + ADD_OBJECT(o, documentCursor) + ADD_OBJECT(o, documentView) + ADD_RECT(o, documentVisibleRect) + ADD_BOOL(o, drawsBackground) + ADD_BOOL(o, hasHorizontalRuler) + ADD_BOOL(o, hasHorizontalScroller) + ADD_BOOL(o, hasVerticalRuler) + ADD_BOOL(o, hasVerticalScroller) + ADD_NUMBER(o, horizontalLineScroll) + ADD_NUMBER(o, horizontalPageScroll) + ADD_OBJECT(o, horizontalRulerView) + ADD_OBJECT(o, horizontalScroller) + ADD_NUMBER(o, lineScroll) + ADD_NUMBER(o, pageScroll) + ADD_BOOL(o, rulersVisible) + ADD_BOOL(o, scrollsDynamically) + ADD_NUMBER(o, verticalLineScroll) + ADD_NUMBER(o, verticalPageScroll) + ADD_OBJECT(o, verticalRulerView) + ADD_OBJECT(o, verticalScroller) + } + else if ([object isKindOfClass:[NSSplitView class]]) { + + + #pragma mark ► NSSplitView + //-------------------------------------------------------------------------------- + + NSSplitView* o = object; + ADD_CLASS_LABEL(@"NSSplitView Info"); + ADD_OBJECT(o, delegate, NSObject.class, YES) + ADD_NUMBER(o, dividerThickness) + ADD_BOOL(o, isVertical) + ADD_OBJECT_NOT_NIL(o, autosaveName) + } +#if MAC_OS_X_VERSION_MIN_REQUIRED >= MAC_OS_X_VERSION_10_9 + else if ([object isKindOfClass:[NSStackView class]]) { + + + #pragma mark ► NSStackView + //-------------------------------------------------------------------------------- + + NSStackView* o = object; + ADD_CLASS_LABEL(@"NSStackView Info"); + ADD_ENUM(o, alignment, LayoutAttribute) + ADD_ENUM(o, orientation, UserInterfaceLayoutOrientation) + ADD_NUMBER(o, spacing) + ADD_OBJECT(o, delegate, NSObject.class, YES) + ADD_BOOL(o, hasEqualSpacing) + ADD_OBJECTS(o, views) + ADD_OBJECTS(o, detachedViews) + } + +#endif + else if ([object isKindOfClass:[NSTabView class]]) { + + + #pragma mark ► NSTabView + //-------------------------------------------------------------------------------- + + NSTabView* o = object; + ADD_CLASS_LABEL(@"NSTabView Info"); + ADD_BOOL(o, allowsTruncatedLabels) + ADD_RECT(o, contentRect) + ADD_ENUM(o, controlSize, ControlSize) + ADD_ENUM(o, controlTint, ControlTint) + ADD_OBJECT(o, delegate, NSObject.class, YES) + ADD_BOOL(o, drawsBackground) + ADD_OBJECT(o, font) + ADD_SIZE(o, minimumSize) + ADD_OBJECT(o, selectedTabViewItem) + ADD_OBJECTS(o, tabViewItems) + ADD_ENUM(o, tabViewType, TabViewType) + } + else if ([object isKindOfClass:[NSTableHeaderView class]]) { + + + #pragma mark ► NSTableHeaderView + //-------------------------------------------------------------------------------- + + NSTableHeaderView* o = object; + ADD_CLASS_LABEL(@"NSTableHeaderView Info"); + ADD_OBJECT(o, tableView) + } + else if ([object isKindOfClass:[NSText class]]) { + + + #pragma mark ► NSTextView + //-------------------------------------------------------------------------------- + + if ([object isKindOfClass:[NSTextView class]]) { + NSTextView* o = object; + ADD_CLASS_LABEL(@"NSTextView Info"); + ADD_OBJECTS(o, acceptableDragTypes) + ADD_BOOL(o, acceptsGlyphInfo) + ADD_OBJECTS(o, allowedInputSourceLocales) + ADD_BOOL(o, allowsImageEditing) + ADD_BOOL(o, allowsDocumentBackgroundColorChange) + ADD_BOOL(o, allowsUndo) + ADD_OBJECT_NOT_NIL(o, defaultParagraphStyle) + ADD_BOOL(o, displaysLinkToolTips) + ADD_COLOR(o, insertionPointColor) + ADD_BOOL(o, isAutomaticLinkDetectionEnabled) + ADD_BOOL(o, isAutomaticQuoteSubstitutionEnabled) + ADD_BOOL(o, isContinuousSpellCheckingEnabled) + ADD_BOOL(o, isGrammarCheckingEnabled) + ADD_OBJECT_NOT_NIL(o, layoutManager) + ADD_DICTIONARY(o, linkTextAttributes) + ADD_DICTIONARY(o, markedTextAttributes) + ADD_RANGE(o, rangeForUserCompletion) + ADD_OBJECTS(o, rangesForUserCharacterAttributeChange) + ADD_OBJECTS(o, rangesForUserParagraphAttributeChange) + ADD_OBJECTS(o, rangesForUserTextChange) + ADD_OBJECTS(o, readablePasteboardTypes) + ADD_OBJECTS(o, selectedRanges) + ADD_DICTIONARY(o, selectedTextAttributes) + ADD_ENUM(o, selectionAffinity, SelectionAffinity) + ADD_ENUM(o, selectionGranularity, SelectionGranularity) + ADD_BOOL(o, shouldDrawInsertionPoint) + ADD_BOOL(o, smartInsertDeleteEnabled) + ADD_NUMBER(o, spellCheckerDocumentTag) + ADD_OBJECT(o, textContainer) + ADD_SIZE(o, textContainerInset) + ADD_POINT(o, textContainerOrigin) + ADD_OBJECT(o, textStorage) + ADD_DICTIONARY(o, typingAttributes) + ADD_BOOL(o, usesFindPanel) + ADD_BOOL(o, usesFontPanel) + ADD_BOOL(o, usesRuler) + ADD_OBJECT(o, writablePasteboardTypes) + } + + + + #pragma mark ► NSText + //-------------------------------------------------------------------------------- + + NSText* o = object; + ADD_CLASS_LABEL(@"NSText Info"); + ADD_ENUM(o, alignment, TextAlignment) + ADD_COLOR(o, backgroundColor) + ADD_ENUM(o, baseWritingDirection, WritingDirection) + ADD_OBJECT(o, delegate, NSObject.class, YES) + ADD_BOOL(o, drawsBackground) + ADD_OBJECT(o, font) + ADD_BOOL(o, importsGraphics) + ADD_BOOL(o, isEditable) + ADD_BOOL(o, isFieldEditor) + ADD_BOOL(o, isHorizontallyResizable) + ADD_BOOL(o, isRichText) + ADD_BOOL(o, isRulerVisible) + ADD_BOOL(o, isSelectable) + ADD_BOOL(o, isVerticallyResizable) + ADD_SIZE(o, maxSize) + ADD_SIZE(o, minSize) + ADD_RANGE(o, selectedRange) + ADD_OBJECT(o, string) + ADD_COLOR_NOT_NIL(o, textColor) + ADD_BOOL(o, usesFontPanel) + } + + + + #pragma mark ► NSView + //-------------------------------------------------------------------------------- + + NSView* o = object; + ADD_CLASS_LABEL(@"NSView Info"); +#if MAC_OS_X_VERSION_MIN_REQUIRED >= MAC_OS_X_VERSION_10_6 + ADD_BOOL(o, acceptsTouchEvents) +#endif +#if MAC_OS_X_VERSION_MIN_REQUIRED >= MAC_OS_X_VERSION_10_10 + ADD_BOOL(o, allowsVibrancy) +#endif + ADD_OPTIONS(o, autoresizingMask, AutoresizingMaskOptions) + ADD_BOOL(o, autoresizesSubviews) + ADD_RECT(o, bounds) + ADD_NUMBER(o, boundsRotation) + ADD_BOOL(o, canBecomeKeyView) + ADD_BOOL(o, canDraw) +#if MAC_OS_X_VERSION_MIN_REQUIRED >= MAC_OS_X_VERSION_10_6 + ADD_BOOL(o, canDrawConcurrently) +#endif + ADD_OBJECT_NOT_NIL(o, enclosingMenuItem) + ADD_OBJECT_NOT_NIL(o, enclosingScrollView) +#if MAC_OS_X_VERSION_MIN_REQUIRED >= MAC_OS_X_VERSION_10_7 + ADD_RECT(o, focusRingMaskBounds) +#endif + ADD_RECT(o, frame) + ADD_NUMBER(o, frameRotation) + ADD_ENUM(o, focusRingType, FocusRingType) + ADD_NUMBER(o, gState) + ADD_NUMBER(o, heightAdjustLimit) + ADD_BOOL(o, isFlipped) + ADD_BOOL(o, isHidden) + ADD_BOOL(o, isHiddenOrHasHiddenAncestor) + ADD_BOOL(o, isInFullScreenMode) + ADD_BOOL(o, isOpaque) + ADD_BOOL(o, isRotatedFromBase) + ADD_BOOL(o, isRotatedOrScaledFromBase) + ADD_OBJECT(o, layer) + ADD_BOOL(o, mouseDownCanMoveWindow) + ADD_BOOL(o, needsDisplay) + ADD_BOOL(o, needsPanelToBecomeKey) + ADD_OBJECT(o, nextKeyView) + ADD_OBJECT(o, nextValidKeyView) + ADD_OBJECT(o, opaqueAncestor) + ADD_BOOL(o, preservesContentDuringLiveResize) + ADD_BOOL(o, postsBoundsChangedNotifications) + ADD_BOOL(o, postsFrameChangedNotifications) + ADD_OBJECT(o, previousKeyView) + ADD_OBJECT(o, previousValidKeyView) + ADD_STRING(o, printJobTitle) + ADD_OBJECTS(o, registeredDraggedTypes) + ADD_BOOL(o, shouldDrawColor) + ADD_NUMBER(o, tag) + ADD_OBJECTS(o, trackingAreas) +#if MAC_OS_X_VERSION_MIN_REQUIRED >= MAC_OS_X_VERSION_10_7 + ADD_BOOL(o, translatesAutoresizingMaskIntoConstraints) +#endif + ADD_RECT(o, visibleRect) + ADD_BOOL(o, wantsDefaultClipping) + ADD_BOOL(o, wantsLayer) + ADD_NUMBER(o, widthAdjustLimit) + ADD_OBJECT(o, window, NSWindow.class) +} + +// Works for NSSegmentedControl and NSSegmentedCell +- (void)processSegmentedItem:(id)segmentedItem +{ + NSSegmentedCell* o = segmentedItem; + NSUInteger segmentCount = o.segmentCount; + for (NSInteger i = 0; i < segmentCount; i++) { + [self addGroup:[NSString stringWithFormat:@"Segment %lu", i]]; + ADD_OBJECT_GETSET(o, { return [(NSSegmentedControl*)obj imageForSegment:i]; } + , { [(NSSegmentedControl*)obj setImage:val forSegment:i]; } + ,nil, ([NSString stringWithFormat:@"Image for segment %ld", (long)i]), YES ); + if ([o respondsToSelector:@selector(imageScalingForSegment:)]) { + [self addObject:objectFromImageScaling([o imageScalingForSegment:i]) + valueType:FS_ITEM_ENUM + getter:^id(id obj, FSObjectInspectorViewModelItem* item) { return @([(NSSegmentedCell*)obj imageScalingForSegment:i]); + } + setter:^(id obj, id newValue, FSObjectInspectorViewModelItem* item) { [(NSSegmentedCell*)obj setImageScaling:[newValue integerValue] forSegment:i]; + } + withLabel:[NSString stringWithFormat:@"Image scaling for segment %ld", (long)i] + enumBiDict:FSObjectEnumInfo.optionsForImageScaling + mask:0 + valueClass:nil + notNil:NO]; + } + ADD_BOOL_GETSET(o, + { return [(NSSegmentedControl*)obj isEnabledForSegment:i]; }, + { [(NSSegmentedControl*)obj setEnabled:val forSegment:i]; }, + ([NSString stringWithFormat:@"Is enabled for segment %ld", (long)i])); + ADD_BOOL_GETSET(o, + { return [(NSSegmentedControl*)obj isSelectedForSegment:i]; }, + { [(NSSegmentedControl*)obj setSelected:val forSegment:i]; }, + ([NSString stringWithFormat:@"Is selected for segment %ld", (long)i])); + ADD_OBJECT_GETSET(o, { return [(NSSegmentedControl*)obj labelForSegment:i]; } + , { [(NSSegmentedControl*)obj setLabel:val forSegment:i]; } + , NSString.class, ([NSString stringWithFormat:@"Label for segment %ld", (long)i]), YES ); + ADD_OBJECT_GETSET(o, { return [(NSSegmentedControl*)obj menuForSegment:i]; } + , { [(NSSegmentedControl*)obj setMenu:val forSegment:i]; } + , nil, ([NSString stringWithFormat:@"Menu for segment %ld", (long)i]), YES ); + if ([o respondsToSelector:@selector(tagForSegment:)]) { + ADD_NUMBER_GETSET(o + , { return [(NSSegmentedCell*)obj tagForSegment:i]; } + , { [(NSSegmentedCell*)obj setTag:val forSegment:i]; } + , ([NSString stringWithFormat:@"Tag for segment %ld", (long)i])) + } + if ([o respondsToSelector:@selector(toolTipForSegment:)]) { + ADD_OBJECT_GETSET(o, { return [(NSSegmentedCell*)obj toolTipForSegment:i]; } + , { [(NSSegmentedCell*)obj setToolTip:val forSegment:i]; } + , NSString.class, ([NSString stringWithFormat:@"ToolTip for segment %ld", (long)i]), YES ); + } + ADD_NUMBER_GETSET(o + , { return [(NSSegmentedCell*)obj widthForSegment:i]; } + , { [(NSSegmentedCell*)obj setWidth:val forSegment:i]; } + , ([NSString stringWithFormat:@"Width for segment %ld", (long)i])) + [self endGroup]; } - ADD_OBJECT(objectFromProgressIndicatorStyle([o style]) ,@"Style") - ADD_BOOL( [o usesThreadedAnimation] ,@"Uses threaded animation") - } - else if ([object isKindOfClass:[NSRulerView class]]) - { - NSRulerView *o = object; - ADD_CLASS_LABEL(@"NSRulerView Info"); - ADD_OBJECT_NOT_NIL( [o accessoryView] ,@"Accessory view") - ADD_NUMBER( [o baselineLocation] ,@"Baseline location") - ADD_OBJECT( [o clientView] ,@"Client view") - ADD_BOOL( [o isFlipped] ,@"Is flipped") - ADD_OBJECTS( [o markers] ,@"Markers") - ADD_OBJECT( [o measurementUnits] ,@"Measurement units") - ADD_OBJECT(objectFromRulerOrientation([o orientation]) ,@"Orientation") - ADD_NUMBER( [o originOffset] ,@"Origin offset") - ADD_NUMBER( [o requiredThickness] ,@"Required thickness") - ADD_NUMBER( [o reservedThicknessForAccessoryView] ,@"Reserved thickness for accessory view") - ADD_NUMBER( [o reservedThicknessForMarkers] ,@"Reserved thickness for markers") - ADD_NUMBER( [o ruleThickness] ,@"Rule thickness") - ADD_OBJECT( [o scrollView] ,@"ScrollView") - } - else if ([object isKindOfClass:[NSScrollView class]]) - { - NSScrollView *o = object; - ADD_CLASS_LABEL(@"NSScrollView Info"); - ADD_BOOL( [o autohidesScrollers] ,@"Autohides scrollers") - ADD_OBJECT( [o backgroundColor] ,@"Background color") - ADD_OBJECT( objectFromBorderType([o borderType]) ,@"Border type") - ADD_SIZE( [o contentSize] ,@"Content size") - ADD_OBJECT( [o contentView] ,@"Content view") - ADD_OBJECT( [o documentCursor] ,@"Document cursor") - ADD_OBJECT( [o documentView] ,@"Document view") - ADD_RECT( [o documentVisibleRect] ,@"Document visible rect") - ADD_BOOL( [o drawsBackground] ,@"Draws background") - ADD_BOOL( [o hasHorizontalRuler] ,@"Has horizontal ruler") - ADD_BOOL( [o hasHorizontalScroller] ,@"Has horizontal scroller") - ADD_BOOL( [o hasVerticalRuler] ,@"Has vertical ruler") - ADD_BOOL( [o hasVerticalScroller] ,@"Has vertical scroller") - ADD_NUMBER( [o horizontalLineScroll] ,@"Horizontal line scroll") - ADD_NUMBER( [o horizontalPageScroll] ,@"Horizontal page scroll") - ADD_OBJECT( [o horizontalRulerView] ,@"Horizontal ruler view") - ADD_OBJECT( [o horizontalScroller] ,@"Horizontal scroller") - ADD_NUMBER( [o lineScroll] ,@"Line scroll") - ADD_NUMBER( [o pageScroll] ,@"Page scroll") - ADD_BOOL( [o rulersVisible] ,@"Ruller visible") - ADD_BOOL( [o scrollsDynamically] ,@"Scrolls dynamically") - ADD_NUMBER( [o verticalLineScroll] ,@"Vertical line scroll") - ADD_NUMBER( [o verticalPageScroll] ,@"Vertical page scroll") - ADD_OBJECT( [o verticalRulerView] ,@"Vertical ruler view") - ADD_OBJECT( [o verticalScroller] ,@"Vertical scroller") - } - else if ([object isKindOfClass:[NSSplitView class]]) - { - NSSplitView *o = object; - ADD_CLASS_LABEL(@"NSSplitView Info"); - ADD_OBJECT_NOT_NIL( [o delegate] ,@"Delegate") - ADD_NUMBER( [o dividerThickness] ,@"Divider thickness") - ADD_BOOL( [o isVertical] ,@"Is vertical") - ADD_OBJECT_NOT_NIL( [o autosaveName] ,@"Autosave name") - } - else if ([object isKindOfClass:[NSTabView class]]) - { - NSTabView *o = object; - ADD_CLASS_LABEL(@"NSTabView Info"); - ADD_BOOL( [o allowsTruncatedLabels] ,@"Allows truncated labels") - ADD_RECT( [o contentRect] ,@"Content rect") - ADD_OBJECT( objectFromControlSize([o controlSize]) ,@"Control size") - ADD_OBJECT( objectFromControlTint([o controlTint]) ,@"Control tint") - ADD_OBJECT( [o delegate] ,@"Delegate") - ADD_BOOL( [o drawsBackground] ,@"Draws background") - ADD_OBJECT( [o font] ,@"Font") - ADD_SIZE( [o minimumSize] ,@"Minimum size") - ADD_OBJECT( [o selectedTabViewItem] ,@"Selected tab view item") - ADD_OBJECTS( [o tabViewItems] ,@"Tab view items") - ADD_OBJECT( objectFromTabViewType([o tabViewType]) ,@"Tab view type") - } - else if ([object isKindOfClass:[NSTableHeaderView class]]) - { - NSTableHeaderView *o = object; - ADD_CLASS_LABEL(@"NSTableHeaderView Info"); - ADD_OBJECT( [o tableView] ,@"Table view") - } - else if ([object isKindOfClass:[NSText class]]) - { - if ([object isKindOfClass:[NSTextView class]]) - { - NSTextView *o = object; - ADD_CLASS_LABEL(@"NSTextView Info"); - ADD_OBJECTS( [o acceptableDragTypes] ,@"Acceptable drag types") - ADD_BOOL( [o acceptsGlyphInfo] ,@"Accepts glyph info") - ADD_OBJECTS( [o allowedInputSourceLocales] ,@"Allowed input source locales") - ADD_BOOL( [o allowsImageEditing] ,@"Allows image editing") - ADD_BOOL( [o allowsDocumentBackgroundColorChange],@"Allows document background color change") - ADD_BOOL( [o allowsUndo] ,@"Allows undo") - ADD_OBJECT_NOT_NIL([o defaultParagraphStyle] ,@"Default paragraph style") - ADD_BOOL( [o displaysLinkToolTips] ,@"Displays link tool tips") - ADD_OBJECT( [o insertionPointColor] ,@"Insertion point color") - ADD_BOOL( [o isAutomaticLinkDetectionEnabled] ,@"Is automatic link detection enabled") - ADD_BOOL( [o isAutomaticQuoteSubstitutionEnabled],@"Is automatic quote substitution enabled") - ADD_BOOL( [o isContinuousSpellCheckingEnabled] ,@"Is continuous spell checking enabled") - ADD_BOOL( [o isGrammarCheckingEnabled] ,@"Is grammar checking enabled") - ADD_OBJECT_NOT_NIL([o layoutManager] ,@"Layout manager") - ADD_DICTIONARY( [o linkTextAttributes] ,@"Link text attributes") - ADD_DICTIONARY([o markedTextAttributes] ,@"Marked text attributes") - ADD_RANGE( [o rangeForUserCompletion] ,@"Range for user completion") - ADD_OBJECTS( [o rangesForUserCharacterAttributeChange],@"Ranges for user character attribute change") - ADD_OBJECTS( [o rangesForUserParagraphAttributeChange],@"Ranges for user paragraph attribute change") - ADD_OBJECTS( [o rangesForUserTextChange] ,@"Ranges for user text change") - ADD_OBJECTS( [o readablePasteboardTypes] ,@"Readable pasteboard types") - ADD_OBJECTS( [o selectedRanges] ,@"Selected ranges") - ADD_DICTIONARY( [o selectedTextAttributes] ,@"Selected text attributes") - ADD_OBJECT(objectFromSelectionAffinity([o selectionAffinity]),@"Selection affinity") - ADD_OBJECT(objectFromSelectionGranularity([o selectionGranularity]),@"Selection granularity") - ADD_BOOL( [o shouldDrawInsertionPoint] ,@"Should draw insertion point") - ADD_BOOL( [o smartInsertDeleteEnabled] ,@"Smart insert delete enabled") - ADD_NUMBER( [o spellCheckerDocumentTag] ,@"Spell checker document tag") - ADD_OBJECT( [o textContainer] ,@"Text container") - ADD_SIZE( [o textContainerInset] ,@"Text container inset") - ADD_POINT( [o textContainerOrigin] ,@"Text container origin") - ADD_OBJECT( [o textStorage] ,@"Text storage") - ADD_DICTIONARY( [o typingAttributes] ,@"Typing attributes") - ADD_BOOL( [o usesFindPanel] ,@"Uses find panel") - ADD_BOOL( [o usesFontPanel] ,@"Uses font panel") - ADD_BOOL( [o usesRuler] ,@"Uses ruler") - ADD_OBJECT( [o writablePasteboardTypes] ,@"Writable pasteboard types") - } - - NSText *o = object; - ADD_CLASS_LABEL(@"NSText Info"); - ADD_OBJECT( objectFromTextAlignment([o alignment]) ,@"Alignment") - ADD_OBJECT( [o backgroundColor] ,@"Background color") - ADD_OBJECT(objectFromWritingDirection([o baseWritingDirection]),@"Base writing direction") - ADD_OBJECT_NOT_NIL( [o delegate] ,@"Delegate") - ADD_BOOL( [o drawsBackground] ,@"Draws background") - ADD_OBJECT( [o font] ,@"Font") - ADD_BOOL( [o importsGraphics] ,@"Imports graphics") - ADD_BOOL( [o isEditable] ,@"Is editable") - ADD_BOOL( [o isFieldEditor] ,@"Is field editor") - ADD_BOOL( [o isHorizontallyResizable] ,@"Is horizontally resizable") - ADD_BOOL( [o isRichText] ,@"Is rich text") - ADD_BOOL( [o isRulerVisible] ,@"Is ruler visible") - ADD_BOOL( [o isSelectable] ,@"Is selectable") - ADD_BOOL( [o isVerticallyResizable] ,@"Is vertically resizable") - ADD_SIZE( [o maxSize] ,@"Max size") - ADD_SIZE( [o minSize] ,@"Min size") - ADD_RANGE( [o selectedRange] ,@"Selected range") - ADD_OBJECT( [o string] ,@"String") - ADD_OBJECT_NOT_NIL( [o textColor] ,@"Text color") - ADD_BOOL( [o usesFontPanel] ,@"Uses font panel") - } - - NSView *o = object; - ADD_CLASS_LABEL(@"NSView Info"); - ADD_OBJECT(objectFromAutoresizingMask([o autoresizingMask]) ,@"Autoresizing mask") - ADD_BOOL( [o autoresizesSubviews] ,@"Autoresizes subviews") - ADD_RECT( [o bounds] ,@"Bounds") - ADD_NUMBER( [o boundsRotation] ,@"Bounds rotation") - ADD_BOOL( [o canBecomeKeyView] ,@"Can become key view") - ADD_BOOL( [o canDraw] ,@"Can draw") - ADD_OBJECT_NOT_NIL( [o enclosingMenuItem] ,@"Enclosing menu item") - ADD_OBJECT_NOT_NIL( [o enclosingScrollView] ,@"Enclosing scroll view") - ADD_RECT( [o frame] ,@"Frame") - ADD_NUMBER( [o frameRotation] ,@"Frame rotation") - ADD_OBJECT( objectFromFocusRingType([o focusRingType]) ,@"Focus ring type") - ADD_NUMBER( [o gState] ,@"gState") - ADD_NUMBER( [o heightAdjustLimit] ,@"Height adjust limit") - ADD_BOOL( [o isFlipped] ,@"Is flipped") - ADD_BOOL( [o isHidden] ,@"Is hidden") - ADD_BOOL( [o isHiddenOrHasHiddenAncestor] ,@"Is hidden or has hidden ancestor" ) - ADD_BOOL( [o isInFullScreenMode] ,@"Is in full screen mode") - ADD_BOOL( [o isOpaque] ,@"Is opaque") - ADD_BOOL( [o isRotatedFromBase] ,@"Is rotated from base") - ADD_BOOL( [o isRotatedOrScaledFromBase] ,@"Is rotated or scaled from base") - ADD_OBJECT( [o layer] ,@"Layer") - ADD_BOOL( [o mouseDownCanMoveWindow] ,@"Mouse down can move window") - ADD_BOOL( [o needsDisplay] ,@"Needs display") - ADD_BOOL( [o needsPanelToBecomeKey] ,@"Needs panel to become key") - ADD_OBJECT( [o nextKeyView] ,@"Next key view") - ADD_OBJECT( [o nextValidKeyView] ,@"Next valid key view") - ADD_OBJECT( [o opaqueAncestor] ,@"Opaque ancestor") - ADD_BOOL( [o preservesContentDuringLiveResize] ,@"Preserves content during live resize") - ADD_BOOL( [o postsBoundsChangedNotifications] ,@"Posts bounds changed notifications") - ADD_BOOL( [o postsFrameChangedNotifications] ,@"Posts frame changed notifications") - ADD_OBJECT( [o previousKeyView] ,@"Previous key view") - ADD_OBJECT( [o previousValidKeyView] ,@"Previous valid key view") - ADD_OBJECT( [o printJobTitle] ,@"Print job title") - ADD_OBJECTS( [o registeredDraggedTypes] ,@"Registered dragged types") - ADD_BOOL( [o shouldDrawColor] ,@"Should draw color") - ADD_NUMBER( [o tag] ,@"Tag") - ADD_OBJECTS( [o trackingAreas] ,@"Tracking areas") - ADD_RECT( [o visibleRect] ,@"Visible rect") - ADD_BOOL( [o wantsDefaultClipping] ,@"Wants default clipping") - ADD_BOOL( [o wantsLayer] ,@"Wants layer") - ADD_NUMBER( [o widthAdjustLimit] ,@"Width adjust limit") - ADD_OBJECT( [o window] ,@"Window") } - (void)processNSControl:(id)object { - { - if ([object isKindOfClass:[NSBrowser class]]) - { - NSBrowser *o = object; - ADD_CLASS_LABEL(@"NSBrowser Info"); - ADD_BOOL( [o allowsBranchSelection] ,@"Allows branch selection") - ADD_BOOL( [o allowsEmptySelection] ,@"Allows empty selection") - ADD_BOOL( [o allowsMultipleSelection] ,@"Allows multiple selection") - ADD_BOOL( [o allowsTypeSelect] ,@"Allows type select") - ADD_OBJECT( [o backgroundColor] ,@"Background color" ) - ADD_OBJECT( [o cellPrototype] ,@"Cell prototype" ) - ADD_OBJECT(objectFromBrowserColumnResizingType([o columnResizingType]) ,@"Column resizing type") - ADD_OBJECT( [o columnsAutosaveName] ,@"Columns autosave name") - ADD_OBJECT( [o delegate] ,@"Delegate") - ADD_SEL( [o doubleAction] ,@"Double action") - ADD_NUMBER( [o firstVisibleColumn] ,@"First visible column") - ADD_BOOL( [o hasHorizontalScroller] ,@"Has horizontal scroller") - ADD_BOOL( [o isLoaded] ,@"Is loaded") - ADD_BOOL( [o isTitled] ,@"Is titled") - ADD_NUMBER( [o lastColumn] ,@"Last column") - ADD_NUMBER( [o lastVisibleColumn] ,@"Last visible column") - ADD_OBJECT( [o matrixClass] ,@"Matrix class") - ADD_NUMBER( [o maxVisibleColumns] ,@"Max visible columns") - ADD_NUMBER( [o minColumnWidth] ,@"Min column width") - ADD_NUMBER( [o numberOfVisibleColumns] ,@"Number of visible columns" ) - ADD_OBJECT( [o path] ,@"Path") - ADD_OBJECT( [o pathSeparator] ,@"Path separator") - ADD_BOOL( [o prefersAllColumnUserResizing] ,@"Prefers all column user resizing" ) - ADD_BOOL( [o reusesColumns] ,@"Reuses columns") - ADD_OBJECTS( [o selectedCells] ,@"Selected cells") - ADD_NUMBER( [o selectedColumn] ,@"Selected column") - ADD_BOOL( [o sendsActionOnArrowKeys] ,@"Sends action on arrow keys") - ADD_BOOL( [o separatesColumns] ,@"Separates columns") - ADD_BOOL( [o takesTitleFromPreviousColumn] ,@"Takes title from previous column" ) - ADD_NUMBER( [o titleHeight] ,@"Title height") - } - else if ([object isKindOfClass:[NSButton class]]) - { - if ([object isKindOfClass:[NSPopUpButton class]]) - { - NSPopUpButton *o = object; - ADD_CLASS_LABEL(@"NSPopUpButton Info"); - ADD_BOOL( [o autoenablesItems] ,@"Autoenables Items") - ADD_NUMBER( [o indexOfSelectedItem] ,@"Index of selected item") - ADD_OBJECTS( [o itemArray] ,@"Item array") - ADD_NUMBER( [o numberOfItems] ,@"Number of items") - ADD_OBJECT( [o objectValue] ,@"Object value") - ADD_OBJECT(objectFromRectEdge([o preferredEdge]) ,@"Preferred edge") - ADD_BOOL( [o pullsDown] ,@"Pulls down") - ADD_OBJECT( [o selectedItem] ,@"Selected item") - } - - NSButton *o = object; - ADD_CLASS_LABEL(@"NSButton Info"); - ADD_BOOL( [o allowsMixedState] ,@"Allows mixed state") - ADD_OBJECT_NOT_NIL([o alternateImage] ,@"Alternate image" ) - ADD_OBJECT( [o alternateTitle] ,@"Alternate title") - ADD_OBJECT( [o attributedAlternateTitle] ,@"Attributed alternate title") - ADD_OBJECT( [o attributedTitle] ,@"Attributed title") - ADD_OBJECT(objectFromBezelStyle([o bezelStyle]) ,@"Bezel style") - ADD_OBJECT( [o image] ,@"Image") - ADD_OBJECT(objectFromCellImagePosition([o imagePosition]) ,@"Image position") - ADD_BOOL( [o isBordered] ,@"Is bordered") - ADD_BOOL( [o isTransparent] ,@"Is transparent" ) - ADD_OBJECT( [o keyEquivalent] ,@"Key equivalent") - ADD_OBJECT(objectFromKeyModifierMask([o keyEquivalentModifierMask]) , @"Key equivalent modifier mask") - ADD_BOOL( [o showsBorderOnlyWhileMouseInside] ,@"Shows border only while mouse inside") - ADD_OBJECT_NOT_NIL([o sound] ,@"Sound") - ADD_OBJECT(objectFromCellStateValue([o state]) ,@"State") - ADD_OBJECT( [o title] ,@"Title") - } - else if ([object isKindOfClass:[NSColorWell class]]) - { - NSColorWell *o = object; - ADD_CLASS_LABEL(@"NSColorWell Info"); - ADD_OBJECT( [o color] ,@"Color") - ADD_BOOL( [o isActive] ,@"Is active" ) - ADD_BOOL( [o isBordered] ,@"Is bordered") - } - else if ([object isKindOfClass:[NSDatePicker class]]) - { - NSDatePicker *o = object; - ADD_CLASS_LABEL(@"NSDatePicker Info"); - ADD_OBJECT( [o backgroundColor] ,@"Background color") - ADD_OBJECT( [o calendar] ,@"Calendar") - ADD_OBJECT(objectFromDatePickerElementFlags([o datePickerElements]),@"Date picker elements") - ADD_OBJECT(objectFromDatePickerMode([o datePickerMode]) ,@"Date picker mode") - ADD_OBJECT(objectFromDatePickerStyle([o datePickerStyle]) ,@"Date picker style") - ADD_OBJECT( [o dateValue] ,@"Date value") - ADD_OBJECT_NOT_NIL([o delegate] ,@"Delegate") - ADD_BOOL( [o drawsBackground] ,@"Draws background" ) - ADD_BOOL( [o isBezeled] ,@"Is bezeled" ) - ADD_BOOL( [o isBordered] ,@"Is bordered" ) - ADD_OBJECT_NOT_NIL([o locale] ,@"Locale") - ADD_OBJECT( [o maxDate] ,@"Max date") - ADD_OBJECT( [o minDate] ,@"Min date") - ADD_OBJECT( [o textColor] ,@"Text Color") - ADD_NUMBER( [o timeInterval] ,@"Time interval") - ADD_OBJECT( [o timeZone] ,@"Time zone") - } - else if ([object isKindOfClass:[NSImageView class]]) - { - NSImageView *o = object; - ADD_CLASS_LABEL(@"NSImageView Info"); - ADD_BOOL( [o allowsCutCopyPaste] ,@"Allows cut copy paste") - ADD_BOOL( [o animates] ,@"Animates") - ADD_OBJECT( [o image] ,@"Image") - ADD_OBJECT(objectFromImageAlignment([o imageAlignment]) ,@"Image alignment") - ADD_OBJECT(objectFromImageFrameStyle([o imageFrameStyle]) ,@"Image frame style") - ADD_OBJECT(objectFromImageScaling([o imageScaling]) ,@"Image scaling") - ADD_BOOL( [o isEditable] ,@"Is editable") - } - else if ([object isKindOfClass:[NSLevelIndicator class]]) - { - NSLevelIndicator *o = object; - ADD_CLASS_LABEL(@"NSLevelIndicator Info"); - ADD_NUMBER( [o criticalValue] ,@"Critical value") - ADD_NUMBER( [o maxValue] ,@"Max value") - ADD_NUMBER( [o minValue] ,@"Min value") - ADD_NUMBER( [o numberOfMajorTickMarks] ,@"Number of major tick marks") - ADD_NUMBER( [o numberOfTickMarks] ,@"Number of tick marks") - ADD_OBJECT(objectFromTickMarkPosition([o tickMarkPosition], NO),@"Tick mark position") - ADD_NUMBER( [o warningValue] ,@"Warning value") - } - else if ([object isKindOfClass:[NSMatrix class]]) - { - NSMatrix *o = object; - ADD_CLASS_LABEL(@"NSMatrix Info"); - ADD_BOOL( [o allowsEmptySelection] ,@"Allows empty selection") - ADD_BOOL( [o autosizesCells] ,@"Autosizes cells") - ADD_OBJECT( [o backgroundColor] ,@"Background color") - ADD_OBJECT( [o cellBackgroundColor] ,@"Cell background color") - ADD_OBJECT( [o cellClass] ,@"Cell class") - ADD_SIZE( [o cellSize] ,@"Cell size"); - - NSInteger numberOfColumns = [o numberOfColumns]; - NSInteger numberOfRows = [o numberOfRows]; - - if (numberOfRows != 0) - { - for (NSInteger column = 0; column < numberOfColumns; column++) { - NSMutableArray *columnArray = [NSMutableArray arrayWithCapacity:numberOfRows]; - for (NSInteger row = 0; row < numberOfRows; row++) [columnArray addObject:[o cellAtRow:row column:column]]; - ADD_OBJECT( [NSArray arrayWithArray:columnArray] ,([NSString stringWithFormat:@"Column %ld",(long)column])) + if ([object isKindOfClass:[NSBrowser class]]) { + + + #pragma mark ► NSBrowser + //-------------------------------------------------------------------------------- + + NSBrowser* o = object; + ADD_CLASS_LABEL(@"NSBrowser Info"); + ADD_BOOL(o, allowsBranchSelection) + ADD_BOOL(o, allowsEmptySelection) + ADD_BOOL(o, allowsMultipleSelection) + ADD_BOOL(o, allowsTypeSelect) + ADD_COLOR(o, backgroundColor) + ADD_OBJECT(o, cellPrototype) + ADD_ENUM(o, columnResizingType, BrowserColumnResizingType) + ADD_OBJECT(o, columnsAutosaveName) + ADD_OBJECT(o, delegate, NSObject.class, YES) + ADD_SEL(o, doubleAction) + ADD_NUMBER(o, firstVisibleColumn) + ADD_BOOL(o, hasHorizontalScroller) + ADD_BOOL(o, isLoaded) + ADD_BOOL(o, isTitled) + ADD_NUMBER(o, lastColumn) + ADD_NUMBER(o, lastVisibleColumn) + ADD_OBJECT(o, matrixClass) + ADD_NUMBER(o, maxVisibleColumns) + ADD_NUMBER(o, minColumnWidth) + ADD_NUMBER(o, numberOfVisibleColumns) + ADD_OBJECT(o, path) + ADD_OBJECT(o, pathSeparator) + ADD_BOOL(o, prefersAllColumnUserResizing) + ADD_BOOL(o, reusesColumns) + ADD_OBJECTS(o, selectedCells) + ADD_NUMBER(o, selectedColumn) + ADD_BOOL(o, sendsActionOnArrowKeys) + ADD_BOOL(o, separatesColumns) + ADD_BOOL(o, takesTitleFromPreviousColumn) + ADD_NUMBER(o, titleHeight) + } + else if ([object isKindOfClass:[NSButton class]]) { + if ([object isKindOfClass:[NSPopUpButton class]]) { + + + #pragma mark ► NSPopUpButton + //-------------------------------------------------------------------------------- + + NSPopUpButton* o = object; + ADD_CLASS_LABEL(@"NSPopUpButton Info"); + ADD_BOOL(o, autoenablesItems) + ADD_NUMBER(o, indexOfSelectedItem) + ADD_OBJECTS(o, itemArray) + ADD_NUMBER(o, numberOfItems) + ADD_OBJECT(o, objectValue) + ADD_ENUM(o, preferredEdge, RectEdge) + ADD_BOOL(o, pullsDown) + ADD_OBJECT(o, selectedItem) + } + + + + #pragma mark ► NSButton + //-------------------------------------------------------------------------------- + + NSButton* o = object; + ADD_CLASS_LABEL(@"NSButton Info"); + ADD_BOOL(o, allowsMixedState) + ADD_OBJECT_NOT_NIL(o, alternateImage) + ADD_STRING(o, alternateTitle) + ADD_OBJECT(o, attributedAlternateTitle) + ADD_OBJECT(o, attributedTitle) + ADD_ENUM(o, bezelStyle, BezelStyle) + ADD_OBJECT(o, image) + ADD_ENUM(o, imagePosition, CellImagePosition) + ADD_BOOL(o, isBordered) + ADD_BOOL(o, isTransparent) + ADD_OBJECT(o, keyEquivalent) + ADD_OPTIONS(o, keyEquivalentModifierMask, EventModifierFlags) + ADD_BOOL(o, showsBorderOnlyWhileMouseInside) + ADD_OBJECT_NOT_NIL(o, sound) + ADD_ENUM(o, state, CellStateValue) + ADD_STRING(o, title) + } + else if ([object isKindOfClass:[NSColorWell class]]) { + + + #pragma mark ► NSColorWell + //-------------------------------------------------------------------------------- + + NSColorWell* o = object; + ADD_CLASS_LABEL(@"NSColorWell Info"); + ADD_COLOR(o, color) + ADD_BOOL(o, isActive) + ADD_BOOL(o, isBordered) + } + else if ([object isKindOfClass:[NSDatePicker class]]) { + + + #pragma mark ► NSDatePicker + //-------------------------------------------------------------------------------- + + NSDatePicker* o = object; + ADD_CLASS_LABEL(@"NSDatePicker Info"); + ADD_COLOR(o, backgroundColor) + ADD_OBJECT(o, calendar) + ADD_OPTIONS(o, datePickerElements, DatePickerElementFlags) + ADD_ENUM(o, datePickerMode, DatePickerMode) + ADD_ENUM(o, datePickerStyle, DatePickerStyle) + ADD_OBJECT(o, dateValue) + ADD_OBJECT(o, delegate, NSObject.class, YES) + ADD_BOOL(o, drawsBackground) + ADD_BOOL(o, isBezeled) + ADD_BOOL(o, isBordered) + ADD_OBJECT_NOT_NIL(o, locale) + ADD_OBJECT(o, maxDate) + ADD_OBJECT(o, minDate) + ADD_COLOR(o, textColor) + ADD_NUMBER(o, timeInterval) + ADD_OBJECT(o, timeZone) + } + else if ([object isKindOfClass:[NSImageView class]]) { + + + #pragma mark ► NSImageView + //-------------------------------------------------------------------------------- + + NSImageView* o = object; + ADD_CLASS_LABEL(@"NSImageView Info"); + ADD_BOOL(o, allowsCutCopyPaste) + ADD_BOOL(o, animates) + ADD_OBJECT(o, image) + ADD_ENUM(o, imageAlignment, ImageAlignment) + ADD_ENUM(o, imageFrameStyle, ImageFrameStyle) + ADD_ENUM(o, imageScaling, ImageScaling) + ADD_BOOL(o, isEditable) + } + else if ([object isKindOfClass:[NSLevelIndicator class]]) { + + + #pragma mark ► NSLevelIndicator + //-------------------------------------------------------------------------------- + + NSLevelIndicator* o = object; + ADD_CLASS_LABEL(@"NSLevelIndicator Info"); + ADD_NUMBER(o, criticalValue) + ADD_NUMBER(o, maxValue) + ADD_NUMBER(o, minValue) + ADD_NUMBER(o, numberOfMajorTickMarks) + ADD_NUMBER(o, numberOfTickMarks) + ADD_OBJECT_RO(objectFromTickMarkPosition([o tickMarkPosition], NO), @"Tick mark position") + ADD_NUMBER(o, warningValue) + } + else if ([object isKindOfClass:[NSMatrix class]]) { + + + #pragma mark ► NSMatrix + //-------------------------------------------------------------------------------- + + NSMatrix* o = object; + ADD_CLASS_LABEL(@"NSMatrix Info"); + ADD_BOOL(o, allowsEmptySelection) + ADD_BOOL(o, autosizesCells) + ADD_COLOR(o, backgroundColor) + ADD_COLOR(o, cellBackgroundColor) + ADD_OBJECT(o, cellClass) + ADD_SIZE(o, cellSize); + + NSInteger numberOfColumns = [o numberOfColumns]; + NSInteger numberOfRows = [o numberOfRows]; + + if (numberOfRows != 0) { + for (NSInteger column = 0; column < numberOfColumns; column++) { + NSMutableArray* columnArray = [NSMutableArray arrayWithCapacity:numberOfRows]; + for (NSInteger row = 0; row < numberOfRows; row++) + [columnArray addObject:[o cellAtRow:row column:column]]; + ADD_OBJECT_RO([NSArray arrayWithArray:columnArray], ([NSString stringWithFormat:@"Column %ld", (long)column])) + } + } + + ADD_OBJECT(o, delegate, NSObject.class, YES) + ADD_SEL(o, doubleAction) + ADD_BOOL(o, drawsBackground) + ADD_BOOL(o, drawsCellBackground) + ADD_SIZE(o, intercellSpacing) + ADD_BOOL(o, isAutoscroll) + ADD_BOOL(o, isSelectionByRect) + ADD_OBJECT(o, keyCell) + ADD_ENUM(o, mode, MatrixMode) + ADD_NUMBER(o, numberOfColumns) + ADD_NUMBER(o, numberOfRows) + ADD_OBJECT(o, prototype) + ADD_OBJECTS(o, selectedCells) + ADD_NUMBER(o, selectedColumn) + ADD_NUMBER(o, selectedRow) + ADD_BOOL(o, tabKeyTraversesCells) + } + else if ([object isKindOfClass:[NSPathControl class]]) { + + + #pragma mark ► NSPathControl + //-------------------------------------------------------------------------------- + + NSPathControl* o = object; + ADD_CLASS_LABEL(@"NSPathControl Info"); + ADD_COLOR_NOT_NIL(o, backgroundColor) + ADD_OBJECT(o, delegate, NSObject.class, YES) + ADD_SEL(o, doubleAction) + ADD_OBJECTS(o, pathComponentCells) + ADD_ENUM(o, pathStyle, PathStyle) + ADD_OBJECT(o, URL) + } + else if ([object isKindOfClass:[NSRuleEditor class]]) { + if ([object isKindOfClass:[NSPredicateEditor class]]) { + + + #pragma mark ► NSPredicateEditor + //-------------------------------------------------------------------------------- + + NSPredicateEditor* o = object; + ADD_CLASS_LABEL(@"NSPredicateEditor Info"); + ADD_OBJECTS(o, rowTemplates) + } + + + + #pragma mark ► NSRuleEditor + //-------------------------------------------------------------------------------- + + NSRuleEditor* o = object; + ADD_CLASS_LABEL(@"NSRuleEditor Info"); + ADD_BOOL(o, canRemoveAllRows) + ADD_OBJECT_NOT_NIL(o, criteriaKeyPath) + ADD_OBJECT(o, delegate, NSObject.class, YES) + ADD_OBJECT_NOT_NIL(o, displayValuesKeyPath) + ADD_DICTIONARY(o, formattingDictionary) + ADD_OBJECT_NOT_NIL(o, formattingStringsFilename) + ADD_BOOL(o, isEditable) + ADD_ENUM(o, nestingMode, RuleEditorNestingMode) + ADD_NUMBER(o, numberOfRows) + ADD_OBJECT(o, predicate) + ADD_OBJECT(o, rowClass) + ADD_NUMBER(o, rowHeight) + ADD_OBJECT_NOT_NIL(o, rowTypeKeyPath) + ADD_OBJECT_NOT_NIL(o, selectedRowIndexes) + ADD_OBJECT_NOT_NIL(o, subrowsKeyPath) + } + else if ([object isKindOfClass:[NSScroller class]]) { + + + #pragma mark ► NSScroller + //-------------------------------------------------------------------------------- + + NSScroller* o = object; + ADD_CLASS_LABEL(@"NSScroller Info"); + ADD_ENUM(o, arrowsPosition, ScrollArrowPosition) + ADD_ENUM(o, controlSize, ControlSize) + ADD_ENUM(o, controlTint, ControlTint) + ADD_NUMBER(o, doubleValue) + ADD_ENUM(o, hitPart, ScrollerPart) + ADD_NUMBER(o, knobProportion) + ADD_ENUM(o, usableParts, UsableScrollerParts) + } + else if ([object isKindOfClass:[NSSegmentedControl class]]) { + + + #pragma mark ► NSSegmentedControl + //-------------------------------------------------------------------------------- + + NSSegmentedControl* o = object; + ADD_CLASS_LABEL(@"NSSegmentedControl Info"); + + ADD_NUMBER(o, segmentCount) + ADD_NUMBER(o, selectedSegment) + [self processSegmentedItem:o]; + } + else if ([object isKindOfClass:[NSSlider class]]) { + + + #pragma mark ► NSSlider + //-------------------------------------------------------------------------------- + + NSSlider* o = object; + ADD_CLASS_LABEL(@"NSSlider Info"); + ADD_BOOL(o, allowsTickMarkValuesOnly) + ADD_NUMBER(o, altIncrementValue) +#if MAC_OS_X_VERSION_MIN_REQUIRED < MAC_OS_X_VERSION_10_10 + ADD_BOOL(o, isVertical) + ADD_NUMBER(o, knobThickness) +#endif + ADD_NUMBER(o, maxValue) + ADD_NUMBER(o, minValue) + ADD_NUMBER(o, numberOfTickMarks) + ADD_OBJECT_RO(objectFromTickMarkPosition([o tickMarkPosition], [(NSSlider*)o isVertical] == 1), @"Tick mark position") + ADD_STRING(o, title) + } + else if ([object isKindOfClass:[NSTableView class]]) { + if ([object isKindOfClass:[NSOutlineView class]]) { + + + #pragma mark ► NSOutlineView + //-------------------------------------------------------------------------------- + + NSOutlineView* o = object; + ADD_CLASS_LABEL(@"NSOutlineView Info"); + ADD_BOOL(o, autoresizesOutlineColumn) + ADD_BOOL(o, autosaveExpandedItems) + ADD_BOOL(o, indentationMarkerFollowsCell) + ADD_NUMBER(o, indentationPerLevel) + ADD_OBJECT(o, outlineTableColumn) + } + + + + #pragma mark ► NSTableView + //-------------------------------------------------------------------------------- + + NSTableView* o = object; + ADD_CLASS_LABEL(@"NSTableView Info"); + ADD_BOOL(o, allowsColumnReordering) + ADD_BOOL(o, allowsColumnResizing) + ADD_BOOL(o, allowsColumnSelection) + ADD_BOOL(o, allowsEmptySelection) + ADD_BOOL(o, allowsMultipleSelection) + ADD_BOOL(o, allowsTypeSelect) + ADD_OBJECT_NOT_NIL(o, autosaveName) + ADD_BOOL(o, autosaveTableColumns) + ADD_COLOR(o, backgroundColor) + ADD_ENUM(o, columnAutoresizingStyle, TableViewColumnAutoresizingStyle) + ADD_OBJECT(o, cornerView) + ADD_OBJECT(o, dataSource) + ADD_OBJECT(o, delegate, NSObject.class, YES) + ADD_SEL(o, doubleAction) + ADD_COLOR(o, gridColor) + ADD_OPTIONS(o, gridStyleMask, TableViewGridLineStyle) + ADD_OBJECT(o, headerView) + ADD_OBJECT_NOT_NIL(o, highlightedTableColumn) + ADD_SIZE(o, intercellSpacing) + ADD_NUMBER(o, numberOfColumns) + ADD_NUMBER(o, numberOfRows) + ADD_NUMBER(o, numberOfSelectedColumns) + ADD_NUMBER(o, numberOfSelectedRows) + ADD_NUMBER(o, rowHeight) + ADD_NUMBER(o, selectedColumn) + ADD_OBJECT(o, selectedColumnIndexes) + ADD_NUMBER(o, selectedRow) + ADD_OBJECT(o, selectedRowIndexes) + ADD_ENUM(o, selectionHighlightStyle, TableViewSelectionHighlightStyle) + ADD_OBJECTS(o, sortDescriptors) + ADD_OBJECTS(o, tableColumns) + ADD_BOOL(o, usesAlternatingRowBackgroundColors) + ADD_BOOL(o, verticalMotionCanBeginDrag) + } + else if ([object isKindOfClass:[NSStepper class]]) { + + + #pragma mark ► NSStepper + //-------------------------------------------------------------------------------- + + NSStepper* o = object; + ADD_CLASS_LABEL(@"NSStepper Info"); + ADD_BOOL(o, autorepeat) + ADD_NUMBER(o, increment) + ADD_NUMBER(o, maxValue) + ADD_NUMBER(o, minValue) + ADD_BOOL(o, valueWraps) + } + else if ([object isKindOfClass:[NSTextField class]]) { + if ([object isKindOfClass:[NSComboBox class]]) { + + + #pragma mark ► NSComboBox + //-------------------------------------------------------------------------------- + + NSComboBox* o = object; + ADD_CLASS_LABEL(@"NSComboBox Info"); + if ([o usesDataSource]) + ADD_OBJECT(o, dataSource) + ADD_BOOL(o, hasVerticalScroller) + ADD_NUMBER(o, indexOfSelectedItem) + ADD_SIZE(o, intercellSpacing) + ADD_BOOL(o, isButtonBordered) + ADD_NUMBER(o, itemHeight) + ADD_NUMBER(o, numberOfItems) + ADD_NUMBER(o, numberOfVisibleItems) + if (![o usesDataSource] && [o indexOfSelectedItem] != -1) + ADD_OBJECT(o, objectValueOfSelectedItem) + if (![o usesDataSource]) + ADD_OBJECTS(o, objectValues) + ADD_BOOL(o, usesDataSource) + } + else if ([object isKindOfClass:[NSSearchField class]]) { + + + #pragma mark ► NSSearchField + //-------------------------------------------------------------------------------- + + NSSearchField* o = object; + if ([[o recentSearches] count] != 0 || [o recentsAutosaveName] != nil) + ADD_CLASS_LABEL(@"NSSearchField Info"); + ADD_OBJECTS(o, recentSearches) + ADD_OBJECT_NOT_NIL(o, recentsAutosaveName) + } + else if ([object isKindOfClass:[NSTokenField class]]) { + + + #pragma mark ► NSTokenField + //-------------------------------------------------------------------------------- + + NSTokenField* o = object; + ADD_CLASS_LABEL(@"NSTokenField Info"); + ADD_NUMBER(o, completionDelay) + ADD_OBJECT(o, tokenizingCharacterSet) + ADD_ENUM(o, tokenStyle, TokenStyle) + } + + + + #pragma mark ► NSTextField + //-------------------------------------------------------------------------------- + + NSTextField* o = object; + ADD_CLASS_LABEL(@"NSTextField Info"); + ADD_BOOL(o, allowsEditingTextAttributes) + ADD_COLOR(o, backgroundColor) + ADD_ENUM(o, bezelStyle, TextFieldBezelStyle) + ADD_OBJECT(o, delegate, NSObject.class, YES) + ADD_BOOL(o, drawsBackground) + ADD_BOOL(o, importsGraphics) + ADD_BOOL(o, isBezeled) + ADD_BOOL(o, isBordered) + ADD_BOOL(o, isEditable) + ADD_BOOL(o, isSelectable) + ADD_COLOR(o, textColor) + } + + + + #pragma mark ► NSControl + //-------------------------------------------------------------------------------- + + NSControl* o = object; + ADD_CLASS_LABEL(@"NSControl Info"); + ADD_SEL(o, action) + ADD_ENUM(o, alignment, TextAlignment) + ADD_ENUM(o, baseWritingDirection, WritingDirection) + ADD_OBJECT(o, cell) + ADD_ENUM(o, controlSize, ControlSize) + ADD_OBJECT_NOT_NIL(o, currentEditor) + ADD_OBJECT(o, font) + ADD_OBJECT(o, formatter) + ADD_BOOL(o, ignoresMultiClick) + ADD_BOOL(o, isContinuous) + ADD_BOOL(o, isEnabled) + if ([o currentEditor] == nil) + ADD_OBJECT(o, objectValue) // To avoid side-effects, we only call objectValue if the control is not being edited, which is determined with the currentEditor call. + ADD_BOOL(o, refusesFirstResponder) + ADD_OBJECT(o, selectedCell) + ADD_NUMBER(o, selectedTag) + ADD_OBJECT(o, target) } - } - - ADD_OBJECT( [o delegate] ,@"Delegate") - ADD_SEL( [o doubleAction] ,@"Double action") - ADD_BOOL( [o drawsBackground] ,@"Draws background") - ADD_BOOL( [o drawsCellBackground] ,@"Draws cell background") - ADD_SIZE( [o intercellSpacing] ,@"Intercell spacing") - ADD_BOOL( [o isAutoscroll] ,@"Is autoscroll") - ADD_BOOL( [o isSelectionByRect] ,@"Is selection by rect") - ADD_OBJECT( [o keyCell] ,@"Key cell") - ADD_OBJECT(objectFromMatrixMode([(NSMatrix *)o mode]) ,@"Mode") - ADD_NUMBER( [o numberOfColumns] ,@"Number of columns") - ADD_NUMBER( [o numberOfRows] ,@"Number of rows") - ADD_OBJECT( [o prototype] ,@"Prototype") - ADD_OBJECTS( [o selectedCells] ,@"Selected cells") - ADD_NUMBER( [o selectedColumn] ,@"Selected column") - ADD_NUMBER( [o selectedRow] ,@"Selected row") - ADD_BOOL( [o tabKeyTraversesCells] ,@"Tab key traverses cells") - } - else if ([object isKindOfClass:[NSPathControl class]]) - { - NSPathControl *o = object; - ADD_CLASS_LABEL(@"NSPathControl Info"); - ADD_OBJECT_NOT_NIL([o backgroundColor] ,@"Background color") - ADD_OBJECT( [o delegate] ,@"Delegate") - ADD_SEL( [o doubleAction] ,@"Double action") - ADD_OBJECTS( [o pathComponentCells] ,@"Path component cells") - ADD_OBJECT(objectFromPathStyle([o pathStyle]) ,@"Path style") - ADD_OBJECT( [o URL] ,@"URL") - } - else if ([object isKindOfClass:[NSRuleEditor class]]) - { - if ([object isKindOfClass:[NSPredicateEditor class]]) - { - NSPredicateEditor *o = object; - ADD_CLASS_LABEL(@"NSPredicateEditor Info"); - ADD_OBJECTS( [o rowTemplates] ,@"Row templates") - } - - NSRuleEditor *o = object; - ADD_CLASS_LABEL(@"NSRuleEditor Info"); - ADD_BOOL( [o canRemoveAllRows] ,@"Can remove all rows") - ADD_OBJECT_NOT_NIL([o criteriaKeyPath] ,@"Criteria key path") - ADD_OBJECT( [o delegate] ,@"Delegate") - ADD_OBJECT_NOT_NIL([o displayValuesKeyPath] ,@"Display values key path") - ADD_DICTIONARY( [o formattingDictionary] ,@"Formatting dictionary") - ADD_OBJECT_NOT_NIL([o formattingStringsFilename] ,@"Formatting strings filename") - ADD_BOOL( [o isEditable] ,@"Is editable") - ADD_OBJECT(objectFromNestingMode([o nestingMode]) ,@"Nesting mode") - ADD_NUMBER( [o numberOfRows] ,@"Number of rows") - ADD_OBJECT( [o predicate] ,@"Predicate") - ADD_OBJECT( [o rowClass] ,@"Row class") - ADD_NUMBER( [o rowHeight] ,@"Row height") - ADD_OBJECT_NOT_NIL([o rowTypeKeyPath] ,@"Row type key path") - ADD_OBJECT_NOT_NIL([o selectedRowIndexes] ,@"Selected row indexes") - ADD_OBJECT_NOT_NIL([o subrowsKeyPath] ,@"Subrows key path") - } - else if ([object isKindOfClass:[NSScroller class]]) - { - NSScroller *o = object; - ADD_CLASS_LABEL(@"NSScroller Info"); - ADD_OBJECT(objectFromScrollArrowPosition([o arrowsPosition]),@"Arrows position") - ADD_OBJECT(objectFromControlSize([o controlSize]) ,@"Control size") - ADD_OBJECT(objectFromControlTint([o controlTint]) ,@"Control tint") - ADD_NUMBER( [o doubleValue] ,@"Double value") - ADD_OBJECT(objectFromScrollerPart([o hitPart]) ,@"Hit part") - ADD_NUMBER( [o knobProportion] ,@"Knob proportion") - ADD_OBJECT(objectFromUsableScrollerParts([o usableParts]) ,@"Usable parts") - } - else if ([object isKindOfClass:[NSSegmentedControl class]]) - { - NSSegmentedControl *o = object; - NSInteger segmentCount = [o segmentCount]; - ADD_CLASS_LABEL(@"NSSegmentedControl Info"); - - ADD_NUMBER( segmentCount ,@"Segment count") - ADD_NUMBER( [o selectedSegment] ,@"Selected segment") - - for (NSInteger i = 0; i < segmentCount; i++) - { - ADD_OBJECT_NOT_NIL([o imageForSegment:i] ,([NSString stringWithFormat:@"Image for segment %ld",(long)i])) - ADD_BOOL( [o isEnabledForSegment:i] ,([NSString stringWithFormat:@"Is enabled for segment %ld",(long)i])) - ADD_BOOL( [o isSelectedForSegment:i] ,([NSString stringWithFormat:@"Is selected for segment %ld",(long)i])) - ADD_OBJECT_NOT_NIL([o labelForSegment:i] ,([NSString stringWithFormat:@"Label for segment %ld",(long)i])) - ADD_OBJECT_NOT_NIL([o menuForSegment:i] ,([NSString stringWithFormat:@"Menu for segment %ld",(long)i])) - if ([o widthForSegment:i] != 0) - ADD_NUMBER( [o widthForSegment:i] ,([NSString stringWithFormat:@"Width for segment %ld",(long)i])) - } - } - else if ([object isKindOfClass:[NSSlider class]]) - { - NSSlider *o = object; - ADD_CLASS_LABEL(@"NSSlider Info"); - ADD_BOOL( [o allowsTickMarkValuesOnly] ,@"Allows tick mark values only") - ADD_NUMBER( [o altIncrementValue] ,@"Alt increment value") - ADD_NUMBER( [(NSSlider*)o isVertical] ,@"Is vertical") - ADD_NUMBER( [o knobThickness] ,@"Knob thickness") - ADD_NUMBER( [o maxValue] ,@"Max value") - ADD_NUMBER( [o minValue] ,@"Min value") - ADD_NUMBER( [o numberOfTickMarks] ,@"Number of tick marks") - ADD_OBJECT(objectFromTickMarkPosition([o tickMarkPosition], [(NSSlider*)o isVertical] == 1),@"Tick mark position") - ADD_OBJECT( [o title] ,@"title") - } - else if ([object isKindOfClass:[NSTableView class]]) - { - if ([object isKindOfClass:[NSOutlineView class]]) - { - NSOutlineView *o = object; - ADD_CLASS_LABEL(@"NSOutlineView Info"); - ADD_BOOL( [o autoresizesOutlineColumn] ,@"Autoresizes outline column") - ADD_BOOL( [o autosaveExpandedItems] ,@"Autosave expanded items") - ADD_BOOL( [o indentationMarkerFollowsCell] ,@"Indentation marker follows cell") - ADD_NUMBER( [o indentationPerLevel] ,@"Indentation per level") - ADD_OBJECT( [o outlineTableColumn] ,@"Outline table column") - } - - NSTableView *o = object; - ADD_CLASS_LABEL(@"NSTableView Info"); - ADD_BOOL( [o allowsColumnReordering] ,@"Allows column reordering") - ADD_BOOL( [o allowsColumnResizing] ,@"Allows column resizing") - ADD_BOOL( [o allowsColumnSelection] ,@"Allows column selection") - ADD_BOOL( [o allowsEmptySelection] ,@"Allows empty selection") - ADD_BOOL( [o allowsMultipleSelection] ,@"Allows multiple selection") - ADD_BOOL( [o allowsTypeSelect] ,@"Allows type select") - ADD_OBJECT_NOT_NIL([o autosaveName] ,@"Autosave name") - ADD_BOOL( [o autosaveTableColumns] ,@"Autosave table columns") - ADD_OBJECT( [o backgroundColor] ,@"Background color") - ADD_OBJECT(objectFromTableViewColumnAutoresizingStyle([o columnAutoresizingStyle]),@"Column autoresizing style") - ADD_OBJECT( [o cornerView] ,@"Corner view") - ADD_OBJECT( [o dataSource] ,@"Data source") - ADD_OBJECT( [o delegate] ,@"Delegate") - ADD_SEL( [o doubleAction] ,@"Double action") - ADD_OBJECT( [o gridColor] ,@"Grid color") - ADD_OBJECT( objectFromGridStyleMask([o gridStyleMask]),@"Grid style mask") - ADD_OBJECT( [o headerView] ,@"Header view") - ADD_OBJECT_NOT_NIL([o highlightedTableColumn] ,@"Highlighted table column") - ADD_SIZE( [o intercellSpacing] ,@"Intercell spacing") - ADD_NUMBER( [o numberOfColumns] ,@"Number of columns") - ADD_NUMBER( [o numberOfRows] ,@"Number of rows") - ADD_NUMBER( [o numberOfSelectedColumns] ,@"Number of selected columns") - ADD_NUMBER( [o numberOfSelectedRows] ,@"Number of selected rows") - ADD_NUMBER( [o rowHeight] ,@"Row height") - ADD_NUMBER( [o selectedColumn] ,@"Selected column") - ADD_OBJECT( [o selectedColumnIndexes] ,@"Selected column indexes") - ADD_NUMBER( [o selectedRow] ,@"Selected row") - ADD_OBJECT( [o selectedRowIndexes] ,@"Selected row indexes") - ADD_OBJECT(objectFromTableViewSelectionHighlightStyle([o selectionHighlightStyle]),@"Selection highlight style") - ADD_OBJECTS( [o sortDescriptors] ,@"Sort descriptors") - ADD_OBJECTS( [o tableColumns] ,@"Table columns") - ADD_BOOL( [o usesAlternatingRowBackgroundColors] ,@"Uses alternating row background colors" ) - ADD_BOOL( [o verticalMotionCanBeginDrag] ,@"Vertical motion can begin drag" ) - } - else if ([object isKindOfClass:[NSStepper class]]) - { - NSStepper *o = object; - ADD_CLASS_LABEL(@"NSStepper Info"); - ADD_BOOL( [o autorepeat] ,@"Autorepeat") - ADD_NUMBER( [o increment] ,@"Increment") - ADD_NUMBER( [o maxValue] ,@"Max value") - ADD_NUMBER( [o minValue] ,@"Min value") - ADD_BOOL( [o valueWraps] ,@"Value wraps") - } - else if ([object isKindOfClass:[NSTextField class]]) - { - if ([object isKindOfClass:[NSComboBox class]]) - { - NSComboBox *o = object; - ADD_CLASS_LABEL(@"NSComboBox Info"); - if ([o usesDataSource]) ADD_OBJECT([o dataSource] ,@"Data source") - ADD_BOOL( [o hasVerticalScroller] ,@"Has vertical scroller") - ADD_NUMBER( [o indexOfSelectedItem] ,@"Index of selected item") - ADD_SIZE( [o intercellSpacing] ,@"Intercell spacing") - ADD_BOOL( [o isButtonBordered] ,@"Is button bordered") - ADD_NUMBER( [o itemHeight] ,@"Item height") - ADD_NUMBER( [o numberOfItems] ,@"Number of items") - ADD_NUMBER( [o numberOfVisibleItems] ,@"Number of visible items") - if (![o usesDataSource] && [o indexOfSelectedItem] != -1) - ADD_OBJECT( [o objectValueOfSelectedItem] ,@"Object value of selected item") - if (![o usesDataSource]) - ADD_OBJECTS( [o objectValues] ,@"Object values") - ADD_BOOL( [o usesDataSource] ,@"Uses data source") - } - else if ([object isKindOfClass:[NSSearchField class]]) - { - NSSearchField *o = object; - if ([[o recentSearches] count] != 0 || [o recentsAutosaveName] != nil) - ADD_CLASS_LABEL(@"NSSearchField Info"); - ADD_OBJECTS( [o recentSearches] ,@"Recent searches") - ADD_OBJECT_NOT_NIL([o recentsAutosaveName] ,@"Recents autosave name") - } - else if ([object isKindOfClass:[NSTokenField class]]) - { - NSTokenField *o = object; - ADD_CLASS_LABEL(@"NSTokenField Info"); - ADD_NUMBER( [o completionDelay] ,@"Completion delay") - ADD_OBJECT( [o tokenizingCharacterSet] ,@"Tokenizing character set") - ADD_OBJECT(objectFromTokenStyle([o tokenStyle]) ,@"Token style") - } - - NSTextField *o = object; - ADD_CLASS_LABEL(@"NSTextField Info"); - ADD_BOOL( [o allowsEditingTextAttributes] ,@"Allows editing text attributes") - ADD_OBJECT( [o backgroundColor] ,@"Background color") - ADD_OBJECT(objectFromTextFieldBezelStyle([o bezelStyle]) ,@"Bezel style") - ADD_OBJECT_NOT_NIL([o delegate] ,@"Delegate") - ADD_BOOL( [o drawsBackground] ,@"Draws background") - ADD_BOOL( [o importsGraphics] ,@"Imports graphics") - ADD_BOOL( [o isBezeled] ,@"Is bezeled") - ADD_BOOL( [o isBordered] ,@"Is bordered") - ADD_BOOL( [o isEditable] ,@"Is editable") - ADD_BOOL( [o isSelectable] ,@"Is selectable") - ADD_OBJECT( [o textColor] ,@"Text color") - } - - NSControl *o = object; - ADD_CLASS_LABEL(@"NSControl Info"); - ADD_SEL( [o action] ,@"Action") - ADD_OBJECT( objectFromTextAlignment([o alignment]) ,@"Alignment") - ADD_OBJECT(objectFromWritingDirection([o baseWritingDirection]) ,@"Base writing direction") - ADD_OBJECT( [o cell] ,@"Cell") - ADD_OBJECT_NOT_NIL( [o currentEditor] ,@"Current editor") - ADD_OBJECT( [o font] ,@"Font") - ADD_OBJECT( [o formatter] ,@"Formatter") - ADD_BOOL( [o ignoresMultiClick] ,@"Ignores multiclick") - ADD_BOOL( [o isContinuous] ,@"Is continuous") - ADD_BOOL( [o isEnabled] ,@"Is enabled") - if ([o currentEditor] == nil) ADD_OBJECT([o objectValue] ,@"Object value") // To avoid side-effects, we only call objectValue if the control is not being edited, which is determined with the currentEditor call. - ADD_BOOL( [o refusesFirstResponder] ,@"Refuses first responder") - ADD_OBJECT( [o selectedCell] ,@"Selected cell") - ADD_NUMBER( [o selectedTag] ,@"Selected tag") - ADD_OBJECT( [o target] ,@"Target") - } } - + - (void)processNSWindow:(id)object { - { - if ([object isKindOfClass:[NSPanel class]]) - { - if ([object isKindOfClass:[NSColorPanel class]]) - { - NSColorPanel *o = object; - ADD_CLASS_LABEL(@"NSColorPanel Info"); - ADD_OBJECT_NOT_NIL([o accessoryView] ,@"Accessory view") - ADD_NUMBER( [o alpha] ,@"Alpha") - ADD_OBJECT( [o color] ,@"Color") - ADD_BOOL( [o isContinuous] ,@"Is continuous") - ADD_OBJECT( objectFromColorPanelMode([o mode]) ,@"Mode") - ADD_BOOL( [o showsAlpha] ,@"Shows alpha") - } - else if ([object isKindOfClass:[NSFontPanel class]]) - { - NSFontPanel *o = object; - ADD_CLASS_LABEL(@"NSFontPanel Info"); - ADD_OBJECT_NOT_NIL([o accessoryView] ,@"Accessory view") - ADD_BOOL( [o isEnabled] ,@"Is enabled") - } - else if ([object isKindOfClass:[NSSavePanel class]]) - { - if ([object isKindOfClass:[NSOpenPanel class]]) - { - NSOpenPanel *o = object; - ADD_CLASS_LABEL(@"NSOpenPanel Info"); - ADD_BOOL( [o allowsMultipleSelection] ,@"Allows multiple selection") - ADD_BOOL( [o canChooseDirectories] ,@"Can choose directories") - ADD_BOOL( [o canChooseFiles] ,@"Can choose files") - ADD_OBJECTS( [o filenames] ,@"Filenames") - ADD_BOOL( [o resolvesAliases] ,@"Resolves aliases") - ADD_OBJECTS( [o URLs] ,@"URLs") + { + if ([object isKindOfClass:[NSPanel class]]) { + if ([object isKindOfClass:[NSColorPanel class]]) { + NSColorPanel* o = object; + ADD_CLASS_LABEL(@"NSColorPanel Info"); + ADD_OBJECT_NOT_NIL(o, accessoryView) + ADD_NUMBER(o, alpha) + ADD_COLOR(o, color) + ADD_BOOL(o, isContinuous) + ADD_ENUM(o, mode, ColorPanelMode) + ADD_BOOL(o, showsAlpha) + } + else if ([object isKindOfClass:[NSFontPanel class]]) { + NSFontPanel* o = object; + ADD_CLASS_LABEL(@"NSFontPanel Info"); + ADD_OBJECT_NOT_NIL(o, accessoryView) + ADD_BOOL(o, isEnabled) + } + else if ([object isKindOfClass:[NSSavePanel class]]) { + if ([object isKindOfClass:[NSOpenPanel class]]) { + NSOpenPanel* o = object; + ADD_CLASS_LABEL(@"NSOpenPanel Info"); + ADD_BOOL(o, allowsMultipleSelection) + ADD_BOOL(o, canChooseDirectories) + ADD_BOOL(o, canChooseFiles) + ADD_OBJECTS(o, filenames) + ADD_BOOL(o, resolvesAliases) + ADD_OBJECTS(o, URLs) + } + + NSSavePanel* o = object; + ADD_CLASS_LABEL(@"NSSavePanel Info"); + ADD_OBJECT_NOT_NIL(o, accessoryView) + ADD_OBJECTS(o, allowedFileTypes) + ADD_BOOL(o, allowsOtherFileTypes) + ADD_BOOL(o, canCreateDirectories) + ADD_BOOL(o, canSelectHiddenExtension) + ADD_OBJECT(o, delegate, NSObject.class, YES) + ADD_OBJECT(o, directory) + ADD_OBJECT(o, filename) + ADD_BOOL(o, isExpanded) + ADD_BOOL(o, isExtensionHidden) + ADD_STRING(o, message) + ADD_STRING(o, nameFieldLabel) + ADD_OBJECT(o, prompt) + ADD_BOOL(o, treatsFilePackagesAsDirectories) + ADD_OBJECT(o, URL) + } + + + NSPanel* o = object; + ADD_CLASS_LABEL(@"NSPanel Info"); + ADD_BOOL(o, becomesKeyOnlyIfNeeded) + ADD_BOOL(o, isFloatingPanel) + } + + NSWindow* o = object; + ADD_CLASS_LABEL(@"NSWindow Info"); + ADD_BOOL(o, acceptsMouseMovedEvents) + ADD_BOOL(o, allowsToolTipsWhenApplicationIsInactive) + ADD_NUMBER(o, alphaValue) + ADD_BOOL(o, areCursorRectsEnabled) + ADD_SIZE(o, aspectRatio) + ADD_OBJECT_NOT_NIL(o, attachedSheet) + ADD_BOOL(o, autorecalculatesKeyViewLoop) + ADD_ENUM(o, backingLocation, WindowBackingLocation) + ADD_COLOR(o, backgroundColor) + ADD_ENUM(o, backingType, BackingStoreType) + ADD_BOOL(o, canBecomeKeyWindow) + ADD_BOOL(o, canBecomeMainWindow) + ADD_BOOL(o, canBecomeVisibleWithoutLogin) + ADD_BOOL(o, canHide) + ADD_BOOL(o, canStoreColor) + ADD_ENUM(o, collectionBehavior, WindowCollectionBehavior) + ADD_OBJECTS(o, childWindows) + ADD_SIZE(o, contentAspectRatio) + ADD_SIZE(o, contentMaxSize) + ADD_SIZE(o, contentMinSize) + ADD_SIZE(o, contentResizeIncrements) + ADD_OBJECT(o, contentView) + ADD_OBJECT_NOT_NIL(o, deepestScreen) + ADD_OBJECT(o, defaultButtonCell) + ADD_OBJECT(o, delegate, NSObject.class, YES) + ADD_NUMBER(o, depthLimit) + ADD_DICTIONARY(o, deviceDescription) + ADD_BOOL(o, displaysWhenScreenProfileChanges) + ADD_OBJECTS(o, drawers) + ADD_OBJECT(o, firstResponder) + ADD_RECT(o, frame) + ADD_OBJECT_NOT_NIL(o, frameAutosaveName) + ADD_OBJECT(o, graphicsContext) + // Call to gState fails when the window in miniaturized + //ADD_NUMBER( [o gState] ,@"gState") + ADD_BOOL(o, hasDynamicDepthLimit) + ADD_BOOL(o, hasShadow) + ADD_BOOL(o, hidesOnDeactivate) + ADD_BOOL(o, ignoresMouseEvents) + ADD_OBJECT(o, initialFirstResponder) + ADD_BOOL(o, isAutodisplay) + ADD_BOOL(o, isDocumentEdited) + ADD_BOOL(o, isExcludedFromWindowsMenu) + ADD_BOOL(o, isFlushWindowDisabled) + ADD_BOOL(o, isMiniaturized) + ADD_BOOL(o, isMovableByWindowBackground) + ADD_BOOL(o, isOneShot) + ADD_BOOL(o, isOpaque) + ADD_BOOL(o, isReleasedWhenClosed) + ADD_BOOL(o, isSheet) + ADD_BOOL(o, isVisible) + ADD_BOOL(o, isZoomed) + ADD_ENUM(o, keyViewSelectionDirection, SelectionDirection) + ADD_ENUM(o, level, WindowLevel) + ADD_SIZE(o, maxSize) + ADD_SIZE(o, minSize) + ADD_OBJECT_NOT_NIL(o, miniwindowImage) + ADD_STRING(o, miniwindowTitle) + ADD_OBJECT_NOT_NIL(o, parentWindow) + ADD_ENUM(o, preferredBackingLocation, WindowBackingLocation) + ADD_BOOL(o, preservesContentDuringLiveResize) + ADD_OBJECT_NOT_NIL(o, representedFilename) + ADD_OBJECT_NOT_NIL(o, representedURL) + ADD_SIZE(o, resizeIncrements) + ADD_OBJECT(o, screen) + ADD_ENUM(o, sharingType, WindowSharingType) + ADD_BOOL(o, showsResizeIndicator) + ADD_BOOL(o, showsToolbarButton) + ADD_OPTIONS(o, styleMask, WindowMask) + ADD_STRING(o, title) + ADD_OBJECT_NOT_NIL(o, toolbar) + ADD_NUMBER(o, userSpaceScaleFactor) + ADD_BOOL(o, viewsNeedDisplay) + ADD_OBJECT_NOT_NIL(o, windowController) + ADD_NUMBER(o, windowNumber) + ADD_BOOL(o, worksWhenModal) } - - NSSavePanel *o = object; - ADD_CLASS_LABEL(@"NSSavePanel Info"); - ADD_OBJECT_NOT_NIL([o accessoryView] ,@"Accessory view") - ADD_OBJECTS( [o allowedFileTypes] ,@"Allowed file types") - ADD_BOOL( [o allowsOtherFileTypes] ,@"Allows other file types") - ADD_BOOL( [o canCreateDirectories] ,@"Can create directories") - ADD_BOOL( [o canSelectHiddenExtension] ,@"Can select hidden extension") - ADD_OBJECT_NOT_NIL([o delegate] ,@"Delegate") - ADD_OBJECT( [o directory] ,@"Directory") - ADD_OBJECT( [o filename] ,@"Filename") - ADD_BOOL( [o isExpanded] ,@"Is expanded") - ADD_BOOL( [o isExtensionHidden] ,@"Is extension hidden") - ADD_OBJECT( [o message] ,@"Message") - ADD_OBJECT( [o nameFieldLabel] ,@"nameFieldLabel") - ADD_OBJECT( [o prompt] ,@"Prompt") - ADD_BOOL( [o treatsFilePackagesAsDirectories] ,@"Treats file packages as directories") - ADD_OBJECT( [o URL] ,@"URL") - } - - - NSPanel *o = object; - ADD_CLASS_LABEL(@"NSPanel Info"); - ADD_BOOL( [o becomesKeyOnlyIfNeeded] ,@"Becomes key only if needed") - ADD_BOOL( [o isFloatingPanel] ,@"Is floating panel") - } - - NSWindow *o = object; - ADD_CLASS_LABEL(@"NSWindow Info"); - ADD_BOOL( [o acceptsMouseMovedEvents] ,@"Accepts mouse moved events") - ADD_BOOL( [o allowsToolTipsWhenApplicationIsInactive] ,@"Allows tool tips when application is inactive") - ADD_NUMBER( [o alphaValue] ,@"Alpha value") - ADD_BOOL( [o areCursorRectsEnabled] ,@"Are cursor rects enabled") - ADD_SIZE( [o aspectRatio] ,@"Aspect ratio") - ADD_OBJECT_NOT_NIL( [o attachedSheet] ,@"Attached sheet") - ADD_BOOL( [o autorecalculatesKeyViewLoop] ,@"Autorecalculates key view loop") - ADD_OBJECT(objectFromWindowBackingLocation([o backingLocation]),@"Backing location") - ADD_OBJECT( [o backgroundColor] ,@"Background color") - ADD_OBJECT(objectFromBackingStoreType([o backingType]) ,@"Backing type") - ADD_BOOL( [o canBecomeKeyWindow] ,@"Can become key window") - ADD_BOOL( [o canBecomeMainWindow] ,@"Can become main window") - ADD_BOOL( [o canBecomeVisibleWithoutLogin] ,@"Can become visible without login") - ADD_BOOL( [o canHide] ,@"Can hide") - ADD_BOOL( [o canStoreColor] ,@"Can store color") - ADD_OBJECT(objectFromWindowCollectionBehavior([o collectionBehavior]),@"Collection behavior") - ADD_OBJECTS( [o childWindows] ,@"Child windows") - ADD_SIZE( [o contentAspectRatio] ,@"Content aspect ratio") - ADD_SIZE( [o contentMaxSize] ,@"Content max size") - ADD_SIZE( [o contentMinSize] ,@"Content min size") - ADD_SIZE( [o contentResizeIncrements] ,@"Content resize increments") - ADD_OBJECT( [o contentView] ,@"Content view") - ADD_OBJECT_NOT_NIL( [o deepestScreen] ,@"Deepest screen") - ADD_OBJECT( [o defaultButtonCell] ,@"Default button cell") - ADD_OBJECT( [o delegate] ,@"Delegate") - ADD_NUMBER( [o depthLimit] ,@"Depth limit") - ADD_DICTIONARY( [o deviceDescription] ,@"Device description") - ADD_BOOL( [o displaysWhenScreenProfileChanges] ,@"Displays when screen profile changes") - ADD_OBJECTS( [o drawers] ,@"Drawers") - ADD_OBJECT( [o firstResponder] ,@"First responder") - ADD_RECT( [o frame] ,@"Frame") - ADD_OBJECT_NOT_NIL( [o frameAutosaveName] ,@"Frame autosave name") - ADD_OBJECT( [o graphicsContext] ,@"Graphics context") - // Call to gState fails when the window in miniaturized - //ADD_NUMBER( [o gState] ,@"gState") - ADD_BOOL( [o hasDynamicDepthLimit] ,@"Has dynamic depth limit") - ADD_BOOL( [o hasShadow] ,@"Has shadow") - ADD_BOOL( [o hidesOnDeactivate] ,@"Hides on deactivate") - ADD_BOOL( [o ignoresMouseEvents] ,@"Ignores mouse events") - ADD_OBJECT( [o initialFirstResponder] ,@"Initial first responder") - ADD_BOOL( [o isAutodisplay] ,@"Is autodisplay") - ADD_BOOL( [o isDocumentEdited] ,@"Is document edited") - ADD_BOOL( [o isExcludedFromWindowsMenu] ,@"Is exclude from windowsmenu") - ADD_BOOL( [o isFlushWindowDisabled] ,@"Is flush window disabled") - ADD_BOOL( [o isMiniaturized] ,@"Is miniaturized") - ADD_BOOL( [o isMovableByWindowBackground] ,@"Is movable by window background") - ADD_BOOL( [o isOneShot] ,@"Is oneShot") - ADD_BOOL( [o isOpaque] ,@"Is opaque") - ADD_BOOL( [o isReleasedWhenClosed] ,@"Is released when closed") - ADD_BOOL( [o isSheet] ,@"Is sheet") - ADD_BOOL( [o isVisible] ,@"Is visible") - ADD_BOOL( [o isZoomed] ,@"Is zoomed") - ADD_OBJECT(objectFromSelectionDirection([o keyViewSelectionDirection]), @"Key view selection direction") - ADD_OBJECT(objectFromWindowLevel([o level]) , @"Level") - ADD_SIZE( [o maxSize] ,@"Max size") - ADD_SIZE( [o minSize] ,@"Min size") - ADD_OBJECT_NOT_NIL( [o miniwindowImage] ,@"Miniwindow image") - ADD_OBJECT( [o miniwindowTitle] ,@"Miniwindow title") - ADD_OBJECT_NOT_NIL( [o parentWindow] ,@"Parent window") - ADD_OBJECT(objectFromWindowBackingLocation([o preferredBackingLocation]),@"Preferred backing location") - ADD_BOOL( [o preservesContentDuringLiveResize] ,@"Preserves content during live resize") - ADD_OBJECT_NOT_NIL( [o representedFilename] ,@"Represented filename") - ADD_OBJECT_NOT_NIL( [o representedURL] ,@"Represented URL") - ADD_SIZE( [o resizeIncrements] ,@"Resize increments") - ADD_OBJECT( [o screen] ,@"Screen") - ADD_OBJECT(objectFromWindowSharingType([o sharingType]) ,@"Sharing type") - ADD_BOOL( [o showsResizeIndicator] ,@"Shows resize indicator") - ADD_BOOL( [o showsToolbarButton] ,@"Shows toolbar button") - ADD_OBJECT(objectFromWindowMask([o styleMask]) ,@"Style mask") - ADD_OBJECT( [o title] ,@"Title") - ADD_OBJECT_NOT_NIL( [o toolbar] ,@"Toolbar") - ADD_NUMBER( [o userSpaceScaleFactor] ,@"User space scale factor") - ADD_BOOL( [o viewsNeedDisplay] ,@"Views need display") - ADD_OBJECT_NOT_NIL( [o windowController] ,@"Window controller") - ADD_NUMBER( [o windowNumber] ,@"Window number") - ADD_BOOL( [o worksWhenModal] ,@"Works when modal") - } } -@end \ No newline at end of file +@end diff --git a/FScriptFramework/FSObjectBrowserWindow.h b/FScriptFramework/FSObjectBrowserWindow.h new file mode 100644 index 0000000..72756ec --- /dev/null +++ b/FScriptFramework/FSObjectBrowserWindow.h @@ -0,0 +1,16 @@ +// +// FSObjectBrowserWindow.h +// FScript +// +// Created by Anthony Dervish on 08/12/2014. +// +// + +#import + +@class FSObjectBrowserButtonsInspector; + +@interface FSObjectBrowserWindow : NSWindow +@property (strong,nonatomic) NSSearchField *visibleSearchField; +@property (strong,nonatomic) FSObjectBrowserButtonsInspector *buttonsInspector; +@end diff --git a/FScriptFramework/FSObjectBrowserWindow.m b/FScriptFramework/FSObjectBrowserWindow.m new file mode 100644 index 0000000..e654e05 --- /dev/null +++ b/FScriptFramework/FSObjectBrowserWindow.m @@ -0,0 +1,47 @@ +// +// FSObjectBrowserWindow.m +// FScript +// +// Created by Anthony Dervish on 08/12/2014. +// +// + +#import "FSObjectBrowserWindow.h" +#import "FSObjectBrowserButtonsInspector.h" + +@implementation FSObjectBrowserWindow + +- (void)sendEvent:(NSEvent *)theEvent +{ + // Goal: route most key events directly to the searchfield + + if ([theEvent type] == NSKeyDown) + { + unichar character = [[theEvent characters] characterAtIndex:0]; + if (character != NSLeftArrowFunctionKey && character != NSRightArrowFunctionKey && character != NSUpArrowFunctionKey && character != NSDownArrowFunctionKey) + { + NSSearchField *searchField = [self visibleSearchField]; + if (searchField && [searchField currentEditor] == nil) // If the searchfield is not already active then we make it become the first responder + [self makeFirstResponder:searchField]; + } + } + [super sendEvent:theEvent]; +} + +- (void)runToolbarCustomizationPalette:(id)sender +{ + if (!self.buttonsInspector) { + self.buttonsInspector = [[FSObjectBrowserButtonsInspector alloc] init]; + } + [super runToolbarCustomizationPalette:sender]; + [self.buttonsInspector activate]; +} + +- (BOOL)worksWhenModal +{ + // Since F-Script is often used as a debugging tool, we want it to + // continue working even when some other window is being run modally + return YES; +} + +@end diff --git a/FScriptFramework/FSObjectEnumInfo.h b/FScriptFramework/FSObjectEnumInfo.h new file mode 100644 index 0000000..a482b33 --- /dev/null +++ b/FScriptFramework/FSObjectEnumInfo.h @@ -0,0 +1,144 @@ +// +// FSObjectEnumInfo.h +// FScript +// +// Created by Anthony Dervish on 16/11/2014. +// +// + +#import +#import + + +typedef NSUInteger NSGlyphStorageLayoutOptions; +typedef CGFloat NSStatusItemLength; +typedef NSUInteger NSToolbarItemVisibilityPriority; +typedef CGWindowLevelKey NSWindowLevel; +typedef NSUInteger NSWindowMask; +typedef id NSMergePolicyMarker; +@class NSMutableDictionary; + +#define BIMAP_CLASS_METHODS_DECL(_name) \ + +(id)objectFor##_name : (NS##_name)mask; \ + +(NSMutableDictionary*)optionsFor##_name; \ + extern id objectFrom##_name(NS##_name _name); \ + extern const NSUInteger _name##Mask ; + +extern const NSUInteger CellTypeMask; +extern const NSUInteger MergePolicyMarkerMask; + +@interface FSObjectEnumInfo : NSObject + +BIMAP_CLASS_METHODS_DECL(AlertStyle); +BIMAP_CLASS_METHODS_DECL(AnimationBlockingMode); +BIMAP_CLASS_METHODS_DECL(AnimationCurve); +BIMAP_CLASS_METHODS_DECL(AttributeType); +BIMAP_CLASS_METHODS_DECL(AutoresizingMaskOptions); +BIMAP_CLASS_METHODS_DECL(BackgroundStyle); +BIMAP_CLASS_METHODS_DECL(BackingStoreType); +BIMAP_CLASS_METHODS_DECL(BezelStyle); +BIMAP_CLASS_METHODS_DECL(BitmapFormat); +BIMAP_CLASS_METHODS_DECL(BorderType); +BIMAP_CLASS_METHODS_DECL(BoxType); +BIMAP_CLASS_METHODS_DECL(BrowserColumnResizingType); +BIMAP_CLASS_METHODS_DECL(CellImagePosition); +BIMAP_CLASS_METHODS_DECL(CellStateValue); +BIMAP_CLASS_METHODS_DECL(CellStyleMask); +BIMAP_CLASS_METHODS_DECL(CellType); +BIMAP_CLASS_METHODS_DECL(CharacterCollection); +BIMAP_CLASS_METHODS_DECL(ColorPanelMode); +BIMAP_CLASS_METHODS_DECL(ColorRenderingIntent); +BIMAP_CLASS_METHODS_DECL(ComparisonPredicateModifier); +BIMAP_CLASS_METHODS_DECL(ComparisonPredicateOptions); +BIMAP_CLASS_METHODS_DECL(CompositingOperation); +BIMAP_CLASS_METHODS_DECL(CompoundPredicateType); +BIMAP_CLASS_METHODS_DECL(ControlSize); +BIMAP_CLASS_METHODS_DECL(ControlTint); +BIMAP_CLASS_METHODS_DECL(DatePickerElementFlags); +BIMAP_CLASS_METHODS_DECL(DatePickerMode); +BIMAP_CLASS_METHODS_DECL(DatePickerStyle); +BIMAP_CLASS_METHODS_DECL(DeleteRule); +BIMAP_CLASS_METHODS_DECL(DrawerState); +BIMAP_CLASS_METHODS_DECL(EventButtonMask); +BIMAP_CLASS_METHODS_DECL(EventModifierFlags); +BIMAP_CLASS_METHODS_DECL(EventSubtype); +BIMAP_CLASS_METHODS_DECL(EventType); +BIMAP_CLASS_METHODS_DECL(ExpressionType); +BIMAP_CLASS_METHODS_DECL(FetchRequestResultType); +BIMAP_CLASS_METHODS_DECL(FocusRingType); +BIMAP_CLASS_METHODS_DECL(FontRenderingMode); +BIMAP_CLASS_METHODS_DECL(GlyphStorageLayoutOptions); +BIMAP_CLASS_METHODS_DECL(GradientType); +BIMAP_CLASS_METHODS_DECL(ImageAlignment); +BIMAP_CLASS_METHODS_DECL(ImageCacheMode); +BIMAP_CLASS_METHODS_DECL(ImageFrameStyle); +BIMAP_CLASS_METHODS_DECL(ImageInterpolation); +BIMAP_CLASS_METHODS_DECL(ImageScaling); +#if MAC_OS_X_VERSION_MIN_REQUIRED >= MAC_OS_X_VERSION_10_7 +BIMAP_CLASS_METHODS_DECL(LayoutAttribute); +#endif +BIMAP_CLASS_METHODS_DECL(LevelIndicatorStyle); +BIMAP_CLASS_METHODS_DECL(LineBreakMode); +BIMAP_CLASS_METHODS_DECL(LineCapStyle); +BIMAP_CLASS_METHODS_DECL(LineJoinStyle); +BIMAP_CLASS_METHODS_DECL(MatrixMode); +BIMAP_CLASS_METHODS_DECL(MergePolicyMarker); +BIMAP_CLASS_METHODS_DECL(EventModifierFlags); +BIMAP_CLASS_METHODS_DECL(PathStyle); +BIMAP_CLASS_METHODS_DECL(PointingDeviceType); +BIMAP_CLASS_METHODS_DECL(PopUpArrowPosition); +BIMAP_CLASS_METHODS_DECL(PredicateOperatorType); +BIMAP_CLASS_METHODS_DECL(ProgressIndicatorStyle); +BIMAP_CLASS_METHODS_DECL(RectEdge); +BIMAP_CLASS_METHODS_DECL(RuleEditorNestingMode); +BIMAP_CLASS_METHODS_DECL(RulerOrientation); +BIMAP_CLASS_METHODS_DECL(ScrollArrowPosition); +BIMAP_CLASS_METHODS_DECL(ScrollerPart); +BIMAP_CLASS_METHODS_DECL(SegmentSwitchTracking); +BIMAP_CLASS_METHODS_DECL(SelectionAffinity); +BIMAP_CLASS_METHODS_DECL(SelectionDirection); +BIMAP_CLASS_METHODS_DECL(SelectionGranularity); +BIMAP_CLASS_METHODS_DECL(SliderType); +#if MAC_OS_X_VERSION_MIN_REQUIRED >= MAC_OS_X_VERSION_10_9 +BIMAP_CLASS_METHODS_DECL(StackViewGravity); +#endif +BIMAP_CLASS_METHODS_DECL(StatusItemLength); +BIMAP_CLASS_METHODS_DECL(StringEncoding); +BIMAP_CLASS_METHODS_DECL(TIFFCompression); +BIMAP_CLASS_METHODS_DECL(TabState); +BIMAP_CLASS_METHODS_DECL(TabViewType); +BIMAP_CLASS_METHODS_DECL(TableColumnResizingOptions); +BIMAP_CLASS_METHODS_DECL(TableViewColumnAutoresizingStyle); +BIMAP_CLASS_METHODS_DECL(TableViewGridLineStyle); +BIMAP_CLASS_METHODS_DECL(TableViewSelectionHighlightStyle); +BIMAP_CLASS_METHODS_DECL(TextAlignment); +BIMAP_CLASS_METHODS_DECL(TextBlockValueType); +BIMAP_CLASS_METHODS_DECL(TextBlockVerticalAlignment); +BIMAP_CLASS_METHODS_DECL(TextFieldBezelStyle); +BIMAP_CLASS_METHODS_DECL(TextListOptions); +BIMAP_CLASS_METHODS_DECL(TextStorageEditedOptions); +BIMAP_CLASS_METHODS_DECL(TextTabType); +BIMAP_CLASS_METHODS_DECL(TextTableLayoutAlgorithm); +BIMAP_CLASS_METHODS_DECL(TitlePosition); +BIMAP_CLASS_METHODS_DECL(TokenStyle); +BIMAP_CLASS_METHODS_DECL(ToolbarDisplayMode); +BIMAP_CLASS_METHODS_DECL(ToolbarItemVisibilityPriority); +BIMAP_CLASS_METHODS_DECL(ToolbarSizeMode); +BIMAP_CLASS_METHODS_DECL(TrackingAreaOptions); +BIMAP_CLASS_METHODS_DECL(TypesetterBehavior); +BIMAP_CLASS_METHODS_DECL(UsableScrollerParts); +#if MAC_OS_X_VERSION_MIN_REQUIRED >= MAC_OS_X_VERSION_10_9 +BIMAP_CLASS_METHODS_DECL(UserInterfaceLayoutOrientation); +#endif +BIMAP_CLASS_METHODS_DECL(WindingRule); +BIMAP_CLASS_METHODS_DECL(WindowBackingLocation); +BIMAP_CLASS_METHODS_DECL(WindowCollectionBehavior); +BIMAP_CLASS_METHODS_DECL(WindowLevel); +BIMAP_CLASS_METHODS_DECL(WindowMask); +BIMAP_CLASS_METHODS_DECL(WindowSharingType); +BIMAP_CLASS_METHODS_DECL(WritingDirection); +id objectFromTickMarkPosition(NSTickMarkPosition tickMarkPosition, BOOL isVertical); + +@end + +id objectFromOptions(NSUInteger opts, NSMutableDictionary *dict, NSUInteger mask); \ No newline at end of file diff --git a/FScriptFramework/FSObjectEnumInfo.m b/FScriptFramework/FSObjectEnumInfo.m new file mode 100644 index 0000000..2f94566 --- /dev/null +++ b/FScriptFramework/FSObjectEnumInfo.m @@ -0,0 +1,916 @@ +// +// FSObjectEnumInfo.m +// FScript +// +// Created by Anthony Dervish on 16/11/2014. +// +// + +#import "FSObjectEnumInfo.h" +#import "FSNamedNumber.h" +#import "FSNumber.h" +#import "FSObjectBrowserNamedObjectWrapper.h" + +#import "metamacros.h" + +const NSUInteger CellTypeMask = NSUIntegerMax; +const NSUInteger MergePolicyMarkerMask = NSUIntegerMax; + +#define _ENUMDICT(_idx, _enum) \ + @{ @(_enum) : @metamacro_stringify(_enum) }, + +#define _BIDICT(_idx, _enum) \ + @(_enum) \ + : @metamacro_stringify(_enum) \ + , + +#define _BIDICT_LEADER(_name) \ + static inline NSMutableDictionary* _name##Bimap() \ + { \ + static NSMutableDictionary* dict = nil; \ + if (!dict) { \ + dict = [NSMutableDictionary new]; \ + + +#define BIDICT(_name, ...) \ + _BIDICT_LEADER(_name) \ + NSArray * enumItems = @[ metamacro_foreach(_ENUMDICT, ,__VA_ARGS__) ] ; \ + for (NSDictionary *enumDict in enumItems) { \ + NSNumber *key = enumDict.allKeys.firstObject; NSString *val = enumDict.allValues.firstObject; \ + if (dict[key]) { dict[key] = [ NSString stringWithFormat:@"%@ / %@", dict[key], val ]; } else { dict[key] = val; } \ + } \ + } \ + return dict; \ + } + +#define BIDICT_LIT(_name, _dict) \ + _BIDICT_LEADER(_name) \ + [dict addEntriesFromDictionary:_dict ]; \ + } \ + return dict; \ + } + +#define _IDENTITY(_idx, _val) _val + +#define OPTSMASK(...) \ + metamacro_foreach(_IDENTITY, |, __VA_ARGS__) + + +#define BIMAP_CLASS_METHODS_DEFN(_name) \ + +(id)objectFor##_name : (NS##_name)mask { return objectFrom##_name(mask); } \ + +(NSMutableDictionary*)optionsFor##_name { return (_name##Bimap()); } + +#define _FS_NUMBER_WRAPPER(_name) \ + lookup ? [FSNamedNumber namedNumberWithDouble:(double)value name:lookup] : [FSNumber numberWithDouble:value] +#define _FS_OBJECT_WRAPPER(_name) \ + lookup ? [FSObjectBrowserNamedObjectWrapper namedObjectWrapperWithObject:value name:lookup] : value + +#define ENUM_FUNC(_name, _lookup, _boxed_value) \ + id objectFrom##_name(NS##_name value) \ + { \ + NSMutableDictionary* dict = _name##Bimap(); \ + id lookup = dict[_boxed_value]; \ + return _lookup; \ + } + +// Define a lookup function 'objectTo', for simple enumerations (can take one, and only one value from the enum) +#define ENUMTOOBJ(_name, ...) \ + BIDICT(_name, __VA_ARGS__) \ + ENUM_FUNC(_name, _FS_NUMBER_WRAPPER(_name), @(value)) \ + BIMAP_CLASS_METHODS_DEFN(_name) + +// Define a lookup function 'objectTo', for 'marker' objects (e.g. NSMergePolicy) +#define OBJTOOBJ_LIT(_name, _dict) \ + BIDICT_LIT(_name, _dict) \ + ENUM_FUNC(_name, _FS_OBJECT_WRAPPER(_name), value) \ + BIMAP_CLASS_METHODS_DEFN(_name) + +// Same as 'ENUMTOOBJ', but use when the elements of the 'enumeration' are actually macros +#define ENUMTOOBJ_DICT(_name, _dict) \ + BIDICT_LIT(_name, _dict) \ + ENUM_FUNC(_name, _FS_NUMBER_WRAPPER(_name), @(value)) \ + BIMAP_CLASS_METHODS_DEFN(_name) + +#define OPTSDICT(_name, ...) \ + const NSUInteger _name##Mask = OPTSMASK(__VA_ARGS__); \ + BIDICT(_name, __VA_ARGS__) + +// Define a lookup function 'objectTo', for flag enumerations (can take a logical OR of enumeration values) +#define OPTSTOOBJ(_name, ...) \ + OPTSDICT(_name, __VA_ARGS__) \ + id objectFrom##_name(NS##_name opts) \ + { \ + return objectFromOptions(opts, _name##Bimap(), _name##Mask); \ + } \ + BIMAP_CLASS_METHODS_DEFN(_name) + +id objectFromOptions(NSUInteger opts, NSMutableDictionary *dict, NSUInteger mask) +{ + if (mask == 0 || (opts & ~mask)) { + return [FSNumber numberWithDouble:opts]; + } + NSMutableArray* result = [NSMutableArray array]; + for (NSNumber * opt in dict.allKeys) { + if (opts & opt.unsignedIntegerValue) { + [result addObject:dict[opt]]; + } + } + return result.count ? [FSNamedNumber namedNumberWithDouble:opts name:[result componentsJoinedByString:@" + "]] : [FSNumber numberWithDouble:opts]; +} + +@implementation FSObjectEnumInfo + +ENUMTOOBJ(AnimationBlockingMode, + NSAnimationBlocking, + NSAnimationNonblocking, + NSAnimationNonblockingThreaded); + + +ENUMTOOBJ(AnimationCurve, + NSAnimationEaseInOut, + NSAnimationEaseIn, + NSAnimationEaseOut, + NSAnimationLinear); + + +ENUMTOOBJ(AlertStyle, + NSWarningAlertStyle, + NSInformationalAlertStyle, + NSCriticalAlertStyle); + + +OPTSTOOBJ(AutoresizingMaskOptions, + NSViewMinXMargin, + NSViewWidthSizable, + NSViewMaxXMargin, + NSViewMinYMargin, + NSViewHeightSizable, + NSViewMaxYMargin); + +ENUMTOOBJ(AttributeType, + NSUndefinedAttributeType, + NSInteger16AttributeType, + NSInteger32AttributeType, + NSInteger64AttributeType, + NSDecimalAttributeType, + NSDoubleAttributeType, + NSFloatAttributeType, + NSStringAttributeType, + NSBooleanAttributeType, + NSDateAttributeType, + NSBinaryDataAttributeType, + NSTransformableAttributeType); + + +ENUMTOOBJ(BackgroundStyle, + NSBackgroundStyleLight, + NSBackgroundStyleDark, + NSBackgroundStyleRaised, + NSBackgroundStyleLowered); + + +ENUMTOOBJ(BackingStoreType, + NSBackingStoreBuffered, + NSBackingStoreRetained, + NSBackingStoreNonretained); + + +ENUMTOOBJ(BorderType, + NSNoBorder, + NSLineBorder, + NSBezelBorder, + NSGrooveBorder); + +ENUMTOOBJ(BezelStyle, + NSRoundedBezelStyle, + NSRegularSquareBezelStyle, + NSThickSquareBezelStyle, + NSThickerSquareBezelStyle, + NSDisclosureBezelStyle, + NSShadowlessSquareBezelStyle, + NSCircularBezelStyle, + NSTexturedSquareBezelStyle, + NSHelpButtonBezelStyle, + NSSmallSquareBezelStyle, + NSTexturedRoundedBezelStyle); + + +OPTSTOOBJ(BitmapFormat, + NSAlphaFirstBitmapFormat, + NSAlphaNonpremultipliedBitmapFormat, + NSFloatingPointSamplesBitmapFormat); + +ENUMTOOBJ(BoxType, + NSBoxPrimary, + NSBoxSecondary, + NSBoxSeparator, + NSBoxOldStyle, + NSBoxCustom); + + +OPTSTOOBJ(EventButtonMask, + NSPenTipMask, + NSPenLowerSideMask, + NSPenUpperSideMask); + + +ENUMTOOBJ(BrowserColumnResizingType, + NSBrowserNoColumnResizing, + NSBrowserAutoColumnResizing, + NSBrowserUserColumnResizing); + + +ENUMTOOBJ(CellImagePosition, + NSNoImage, + NSImageOnly, + NSImageLeft, + NSImageRight, + NSImageBelow, + NSImageAbove, + NSImageOverlaps); + + +OPTSTOOBJ(CellStyleMask, + NSNoCellMask, + NSContentsCellMask, + NSPushInCellMask, + NSChangeGrayCellMask, + NSChangeBackgroundCellMask); + +ENUMTOOBJ(CellStateValue, + NSMixedState, + NSOffState, + NSOnState); + + +ENUMTOOBJ(CellType, + NSNullCellType, + NSTextCellType, + NSImageCellType); + + +ENUMTOOBJ(CharacterCollection, + NSIdentityMappingCharacterCollection, + NSAdobeCNS1CharacterCollection, + NSAdobeGB1CharacterCollection, + NSAdobeJapan1CharacterCollection, + NSAdobeJapan2CharacterCollection, + NSAdobeKorea1CharacterCollection); + + +ENUMTOOBJ(ColorPanelMode, + NSGrayModeColorPanel, + NSRGBModeColorPanel, + NSCMYKModeColorPanel, + NSHSBModeColorPanel, + NSCustomPaletteModeColorPanel, + NSColorListModeColorPanel, + NSWheelModeColorPanel, + NSCrayonModeColorPanel); + + +ENUMTOOBJ(ColorRenderingIntent, + NSColorRenderingIntentDefault, + NSColorRenderingIntentAbsoluteColorimetric, + NSColorRenderingIntentRelativeColorimetric, + NSColorRenderingIntentPerceptual, + NSColorRenderingIntentSaturation); + + +OPTSTOOBJ(ComparisonPredicateOptions, + NSCaseInsensitivePredicateOption, + NSDiacriticInsensitivePredicateOption, + NSNormalizedPredicateOption); + +ENUMTOOBJ(ComparisonPredicateModifier, + NSDirectPredicateModifier, + NSAllPredicateModifier, + NSAnyPredicateModifier); + + +ENUMTOOBJ(CompositingOperation, + NSCompositeClear, + NSCompositeCopy, + NSCompositeSourceOver, + NSCompositeSourceIn, + NSCompositeSourceOut, + NSCompositeSourceAtop, + NSCompositeDestinationOver, + NSCompositeDestinationIn, + NSCompositeDestinationOut, + NSCompositeDestinationAtop, + NSCompositeXOR, + NSCompositePlusDarker, + NSCompositeHighlight, + NSCompositePlusLighter); + + +ENUMTOOBJ(CompoundPredicateType, + NSNotPredicateType, + NSAndPredicateType, + NSOrPredicateType); + + +ENUMTOOBJ(ControlSize, + NSRegularControlSize, + NSSmallControlSize, + NSMiniControlSize); + + +ENUMTOOBJ(ControlTint, + NSDefaultControlTint, + NSBlueControlTint, + NSGraphiteControlTint, + NSClearControlTint); + +OPTSTOOBJ(DatePickerElementFlags, + NSHourMinuteDatePickerElementFlag, + NSHourMinuteSecondDatePickerElementFlag, + NSTimeZoneDatePickerElementFlag, + NSYearMonthDatePickerElementFlag, + NSYearMonthDayDatePickerElementFlag, + NSEraDatePickerElementFlag); + +ENUMTOOBJ(DatePickerMode, + NSSingleDateMode, + NSRangeDateMode); + + +ENUMTOOBJ(DatePickerStyle, + NSTextFieldAndStepperDatePickerStyle, + NSClockAndCalendarDatePickerStyle); + + +ENUMTOOBJ(DeleteRule, + NSNoActionDeleteRule, + NSNullifyDeleteRule, + NSCascadeDeleteRule, + NSDenyDeleteRule); + + +ENUMTOOBJ(DrawerState, + NSDrawerClosedState, + NSDrawerOpeningState, + NSDrawerOpenState, + NSDrawerClosingState); + + +ENUMTOOBJ(EventType, + NSLeftMouseDown, + NSLeftMouseUp, + NSRightMouseDown, + NSRightMouseUp, + NSOtherMouseDown, + NSOtherMouseUp, + NSMouseMoved, + NSLeftMouseDragged, + NSRightMouseDragged, + NSOtherMouseDragged, + NSMouseEntered, + NSMouseExited, + NSCursorUpdate, + NSKeyDown, + NSKeyUp, + NSFlagsChanged, + NSAppKitDefined, + NSSystemDefined, + NSApplicationDefined, + NSPeriodic, + NSScrollWheel, + NSTabletPoint, + NSTabletProximity); + + +ENUMTOOBJ(EventSubtype, + NSMouseEventSubtype, + NSTabletPointEventSubtype, + NSTabletProximityEventSubtype); + + +ENUMTOOBJ(ExpressionType, + NSConstantValueExpressionType, + NSEvaluatedObjectExpressionType, + NSVariableExpressionType, + NSKeyPathExpressionType, + NSFunctionExpressionType, + NSUnionSetExpressionType, + NSIntersectSetExpressionType, + NSMinusSetExpressionType, + NSSubqueryExpressionType, + NSAggregateExpressionType); + + +ENUMTOOBJ(FetchRequestResultType, + NSManagedObjectResultType, + NSManagedObjectIDResultType); + + +ENUMTOOBJ(FocusRingType, + NSFocusRingTypeDefault, + NSFocusRingTypeNone, + NSFocusRingTypeExterior); + + +ENUMTOOBJ(FontRenderingMode, + NSFontDefaultRenderingMode, + NSFontAntialiasedRenderingMode, + NSFontIntegerAdvancementsRenderingMode, + NSFontAntialiasedIntegerAdvancementsRenderingMode); + + +ENUMTOOBJ(GradientType, + NSGradientNone, + NSGradientConcaveWeak, + NSGradientConcaveStrong, + NSGradientConvexWeak, + NSGradientConvexStrong); + + +OPTSTOOBJ(TableViewGridLineStyle, + NSTableViewSolidVerticalGridLineMask, + NSTableViewSolidHorizontalGridLineMask, + NSTableViewDashedHorizontalGridLineMask); + + +ENUMTOOBJ(ImageAlignment, + NSImageAlignCenter, + NSImageAlignTop, + NSImageAlignTopLeft, + NSImageAlignTopRight, + NSImageAlignLeft, + NSImageAlignBottom, + NSImageAlignBottomLeft, + NSImageAlignBottomRight, + NSImageAlignRight); + + +ENUMTOOBJ(ImageCacheMode, + NSImageCacheDefault, + NSImageCacheAlways, + NSImageCacheBySize, + NSImageCacheNever); + + +ENUMTOOBJ(ImageFrameStyle, + NSImageFrameNone, + NSImageFramePhoto, + NSImageFrameGrayBezel, + NSImageFrameGroove, + NSImageFrameButton); + + +ENUMTOOBJ(ImageInterpolation, + NSImageInterpolationDefault, + NSImageInterpolationNone, + NSImageInterpolationLow, + NSImageInterpolationHigh); + + +ENUMTOOBJ(ImageScaling, + NSImageScaleProportionallyDown, + NSImageScaleAxesIndependently, + NSImageScaleNone, + NSImageScaleProportionallyUpOrDown); + + +OPTSTOOBJ(EventModifierFlags, + NSAlphaShiftKeyMask, + NSShiftKeyMask, + NSControlKeyMask, + NSAlternateKeyMask, + NSCommandKeyMask, + NSNumericPadKeyMask, + NSHelpKeyMask, + NSFunctionKeyMask); + +OPTSTOOBJ(GlyphStorageLayoutOptions, + NSShowControlGlyphs, + NSShowInvisibleGlyphs, + NSWantsBidiLevels); + +#if MAC_OS_X_VERSION_MIN_REQUIRED >= MAC_OS_X_VERSION_10_7 +ENUMTOOBJ(LayoutAttribute, + NSLayoutAttributeNotAnAttribute, + NSLayoutAttributeLeft, + NSLayoutAttributeRight, + NSLayoutAttributeTop, + NSLayoutAttributeBottom, + NSLayoutAttributeLeading, + NSLayoutAttributeTrailing, + NSLayoutAttributeWidth, + NSLayoutAttributeHeight, + NSLayoutAttributeCenterX, + NSLayoutAttributeCenterY, + NSLayoutAttributeBaseline + ); + +#endif + +ENUMTOOBJ(LevelIndicatorStyle, + NSRelevancyLevelIndicatorStyle, + NSContinuousCapacityLevelIndicatorStyle, + NSDiscreteCapacityLevelIndicatorStyle, + NSRatingLevelIndicatorStyle); + + +ENUMTOOBJ(LineBreakMode, + NSLineBreakByWordWrapping, + NSLineBreakByCharWrapping, + NSLineBreakByClipping, + NSLineBreakByTruncatingHead, + NSLineBreakByTruncatingTail, + NSLineBreakByTruncatingMiddle); + + +ENUMTOOBJ(LineCapStyle, + NSButtLineCapStyle, + NSRoundLineCapStyle, + NSSquareLineCapStyle); + + +ENUMTOOBJ(LineJoinStyle, + NSMiterLineJoinStyle, + NSRoundLineJoinStyle, + NSBevelLineJoinStyle); + + +ENUMTOOBJ(MatrixMode, + NSRadioModeMatrix, + NSHighlightModeMatrix, + NSListModeMatrix, + NSTrackModeMatrix); + + +OBJTOOBJ_LIT(MergePolicyMarker, (@{ + NSErrorMergePolicy : @"NSErrorMergePolicy", + NSMergeByPropertyStoreTrumpMergePolicy : @"NSMergeByPropertyStoreTrumpMergePolicy", + NSMergeByPropertyObjectTrumpMergePolicy : @"NSMergeByPropertyObjectTrumpMergePolicy", + NSOverwriteMergePolicy : @"NSOverwriteMergePolicy", + NSRollbackMergePolicy : @"NSRollbackMergePolicy" + })); + +ENUMTOOBJ(RuleEditorNestingMode, + NSRuleEditorNestingModeSingle, + NSRuleEditorNestingModeList, + NSRuleEditorNestingModeCompound, + NSRuleEditorNestingModeSimple); + + +ENUMTOOBJ(PathStyle, + NSPathStyleStandard, + NSPathStyleNavigationBar, + NSPathStylePopUp); + + +ENUMTOOBJ(PointingDeviceType, + NSUnknownPointingDevice, + NSPenPointingDevice, + NSCursorPointingDevice, + NSEraserPointingDevice); + + +ENUMTOOBJ(PredicateOperatorType, + NSLessThanPredicateOperatorType, + NSLessThanOrEqualToPredicateOperatorType, + NSGreaterThanPredicateOperatorType, + NSGreaterThanOrEqualToPredicateOperatorType, + NSEqualToPredicateOperatorType, + NSNotEqualToPredicateOperatorType, + NSMatchesPredicateOperatorType, + NSLikePredicateOperatorType, + NSBeginsWithPredicateOperatorType, + NSEndsWithPredicateOperatorType, + NSInPredicateOperatorType, + NSCustomSelectorPredicateOperatorType, + NSContainsPredicateOperatorType, + NSBetweenPredicateOperatorType); + + +ENUMTOOBJ(ProgressIndicatorStyle, + NSProgressIndicatorBarStyle, + NSProgressIndicatorSpinningStyle); + + +ENUMTOOBJ(PopUpArrowPosition, + NSPopUpNoArrow, + NSPopUpArrowAtCenter, + NSPopUpArrowAtBottom); + + +ENUMTOOBJ_DICT(RectEdge, (@{ + @(NSMinXEdge) : @"NSMinXEdge", + @(NSMinYEdge) : @"NSMinYEdge", + @(NSMaxXEdge) : @"NSMaxXEdge", + @(NSMaxYEdge) : @"NSMaxYEdge" + })); + + +ENUMTOOBJ(RulerOrientation, + NSHorizontalRuler, + NSVerticalRuler); + + +ENUMTOOBJ(ScrollArrowPosition, + NSScrollerArrowsDefaultSetting, + NSScrollerArrowsNone); + + +ENUMTOOBJ(ScrollerPart, + NSScrollerNoPart, + NSScrollerDecrementPage, + NSScrollerKnob, + NSScrollerIncrementPage, + NSScrollerDecrementLine, + NSScrollerIncrementLine, + NSScrollerKnobSlot); + + +ENUMTOOBJ(SegmentSwitchTracking, + NSSegmentSwitchTrackingSelectOne, + NSSegmentSwitchTrackingSelectAny, + NSSegmentSwitchTrackingMomentary); + + +ENUMTOOBJ(SelectionAffinity, + NSSelectionAffinityUpstream, + NSSelectionAffinityDownstream); + + +ENUMTOOBJ(SelectionDirection, + NSDirectSelection, + NSSelectingNext, + NSSelectingPrevious); + + +ENUMTOOBJ(SelectionGranularity, + NSSelectByCharacter, + NSSelectByWord, + NSSelectByParagraph); + + +ENUMTOOBJ(TableViewSelectionHighlightStyle, + NSTableViewSelectionHighlightStyleRegular, + NSTableViewSelectionHighlightStyleSourceList); + + +ENUMTOOBJ(SliderType, + NSLinearSlider, + NSCircularSlider); + +#if MAC_OS_X_VERSION_MIN_REQUIRED >= MAC_OS_X_VERSION_10_9 +ENUMTOOBJ(StackViewGravity, + NSStackViewGravityTop, + NSStackViewGravityLeading, + NSStackViewGravityCenter, + NSStackViewGravityBottom, + NSStackViewGravityTrailing + ); + +#endif + +ENUMTOOBJ(StatusItemLength, + NSVariableStatusItemLength, + NSSquareStatusItemLength); + +ENUMTOOBJ(StringEncoding, + NSASCIIStringEncoding, + NSNEXTSTEPStringEncoding, + NSJapaneseEUCStringEncoding, + NSUTF8StringEncoding, + NSISOLatin1StringEncoding, + NSSymbolStringEncoding, + NSNonLossyASCIIStringEncoding, + NSShiftJISStringEncoding, + NSISOLatin2StringEncoding, + NSUnicodeStringEncoding, + NSWindowsCP1251StringEncoding, + NSWindowsCP1252StringEncoding, + NSWindowsCP1253StringEncoding, + NSWindowsCP1254StringEncoding, + NSWindowsCP1250StringEncoding, + NSISO2022JPStringEncoding, + NSMacOSRomanStringEncoding); + + +OPTSTOOBJ(TableColumnResizingOptions, + NSTableColumnNoResizing, + NSTableColumnAutoresizingMask, + NSTableColumnUserResizingMask); + +ENUMTOOBJ(TableViewColumnAutoresizingStyle, + NSTableViewNoColumnAutoresizing, + NSTableViewUniformColumnAutoresizingStyle, + NSTableViewSequentialColumnAutoresizingStyle, + NSTableViewReverseSequentialColumnAutoresizingStyle, + NSTableViewLastColumnOnlyAutoresizingStyle, + NSTableViewFirstColumnOnlyAutoresizingStyle); + + +ENUMTOOBJ(TabState, + NSBackgroundTab, + NSPressedTab, + NSSelectedTab); + + +ENUMTOOBJ(TabViewType, + NSTopTabsBezelBorder, + NSLeftTabsBezelBorder, + NSBottomTabsBezelBorder, + NSRightTabsBezelBorder, + NSNoTabsBezelBorder, + NSNoTabsLineBorder, + NSNoTabsNoBorder); + + +ENUMTOOBJ(TextAlignment, + NSLeftTextAlignment, + NSRightTextAlignment, + NSCenterTextAlignment, + NSJustifiedTextAlignment, + NSNaturalTextAlignment); + + +ENUMTOOBJ(TextBlockValueType, + NSTextBlockAbsoluteValueType, + NSTextBlockPercentageValueType); + + +ENUMTOOBJ(TextBlockVerticalAlignment, + NSTextBlockTopAlignment, + NSTextBlockMiddleAlignment, + NSTextBlockBottomAlignment, + NSTextBlockBaselineAlignment); + + +ENUMTOOBJ(TextFieldBezelStyle, + NSTextFieldSquareBezel, + NSTextFieldRoundedBezel); + +OPTSTOOBJ(TextListOptions, + NSTextListPrependEnclosingMarker); + + +OPTSTOOBJ(TextStorageEditedOptions, + NSTextStorageEditedAttributes, + NSTextStorageEditedCharacters); + +ENUMTOOBJ(TextTableLayoutAlgorithm, + NSTextTableAutomaticLayoutAlgorithm, + NSTextTableFixedLayoutAlgorithm); + + +ENUMTOOBJ(TextTabType, + NSLeftTabStopType, + NSRightTabStopType, + NSCenterTabStopType, + NSDecimalTabStopType); + + +ENUMTOOBJ(TIFFCompression, + NSTIFFCompressionNone, + NSTIFFCompressionCCITTFAX3, + NSTIFFCompressionCCITTFAX4, + NSTIFFCompressionLZW, + NSTIFFCompressionJPEG, + NSTIFFCompressionNEXT, + NSTIFFCompressionPackBits, + NSTIFFCompressionOldJPEG); + + +ENUMTOOBJ(TitlePosition, + NSNoTitle, + NSAboveTop, + NSAtTop, + NSBelowTop, + NSAboveBottom, + NSAtBottom, + NSBelowBottom); + + +ENUMTOOBJ(TokenStyle, + NSDefaultTokenStyle, + NSPlainTextTokenStyle, + NSRoundedTokenStyle); + + +ENUMTOOBJ(ToolbarDisplayMode, + NSToolbarDisplayModeDefault, + NSToolbarDisplayModeIconAndLabel, + NSToolbarDisplayModeIconOnly, + NSToolbarDisplayModeLabelOnly); + +ENUMTOOBJ(ToolbarItemVisibilityPriority, + NSToolbarItemVisibilityPriorityStandard, + NSToolbarItemVisibilityPriorityLow, + NSToolbarItemVisibilityPriorityHigh, + NSToolbarItemVisibilityPriorityUser); + + +ENUMTOOBJ(ToolbarSizeMode, + NSToolbarSizeModeDefault, + NSToolbarSizeModeRegular, + NSToolbarSizeModeSmall); + + +OPTSTOOBJ(TrackingAreaOptions, + NSTrackingMouseEnteredAndExited, + NSTrackingMouseMoved, + NSTrackingCursorUpdate, + NSTrackingActiveWhenFirstResponder, + NSTrackingActiveInKeyWindow, + NSTrackingActiveInActiveApp, + NSTrackingActiveAlways, + NSTrackingAssumeInside, + NSTrackingInVisibleRect, + NSTrackingEnabledDuringMouseDrag); + + +ENUMTOOBJ(TypesetterBehavior, + NSTypesetterLatestBehavior, + NSTypesetterOriginalBehavior, + NSTypesetterBehavior_10_2_WithCompatibility, + NSTypesetterBehavior_10_2, + NSTypesetterBehavior_10_3, + NSTypesetterBehavior_10_4); + + +ENUMTOOBJ(UsableScrollerParts, + NSNoScrollerParts, + NSOnlyScrollerArrows, + NSAllScrollerParts); + +#if MAC_OS_X_VERSION_MIN_REQUIRED >= MAC_OS_X_VERSION_10_9 +ENUMTOOBJ(UserInterfaceLayoutOrientation, + NSUserInterfaceLayoutOrientationHorizontal, + NSUserInterfaceLayoutOrientationVertical + ); +#endif + + +ENUMTOOBJ(WindingRule, + NSNonZeroWindingRule, + NSEvenOddWindingRule); + +ENUMTOOBJ_DICT(WindowLevel, (@{ + @(NSNormalWindowLevel) : @"NSNormalWindowLevel", + @(NSFloatingWindowLevel) : @"NSFloatingWindowLevel", + @(NSSubmenuWindowLevel) : @"NSSubmenuWindowLevel", + @(NSTornOffMenuWindowLevel) : @"NSTornOffMenuWindowLevel", + @(NSMainMenuWindowLevel) : @"NSMainMenuWindowLevel", + @(NSStatusWindowLevel) : @"NSStatusWindowLevel", + @(NSDockWindowLevel) : @"NSDockWindowLevel", + @(NSModalPanelWindowLevel) : @"NSModalPanelWindowLevel", + @(NSPopUpMenuWindowLevel) : @"NSPopUpMenuWindowLevel", + @(NSScreenSaverWindowLevel) : @"NSScreenSaverWindowLevel" + })); + + +OPTSTOOBJ(WindowMask, + NSBorderlessWindowMask, + NSTitledWindowMask, + NSClosableWindowMask, + NSMiniaturizableWindowMask, + NSResizableWindowMask, + NSTexturedBackgroundWindowMask, + NSUnifiedTitleAndToolbarWindowMask, + NSFullScreenWindowMask, + NSFullSizeContentViewWindowMask); + +ENUMTOOBJ(WindowBackingLocation, + NSWindowBackingLocationDefault, + NSWindowBackingLocationVideoMemory, + NSWindowBackingLocationMainMemory); + + +ENUMTOOBJ(WindowCollectionBehavior, + NSWindowCollectionBehaviorDefault, + NSWindowCollectionBehaviorCanJoinAllSpaces, + NSWindowCollectionBehaviorMoveToActiveSpace); + + +ENUMTOOBJ(WindowSharingType, + NSWindowSharingNone, + NSWindowSharingReadOnly, + NSWindowSharingReadWrite); + + +ENUMTOOBJ(WritingDirection, + NSWritingDirectionNatural, + NSWritingDirectionLeftToRight, + NSWritingDirectionRightToLeft); + + +id objectFromTickMarkPosition(NSTickMarkPosition tickMarkPosition, BOOL isVertical) +{ + switch (tickMarkPosition) { + case NSTickMarkBelow: + return [FSNamedNumber namedNumberWithDouble:tickMarkPosition name:isVertical ? @"NSTickMarkRight" : @"NSTickMarkBelow"]; + case NSTickMarkAbove: + return [FSNamedNumber namedNumberWithDouble:tickMarkPosition name:isVertical ? @"NSTickMarkLeft" : @"NSTickMarkAbove"]; + //case NSTickMarkLeft: return [NamedNumber namedNumberWithDouble:tickMarkPosition name:@"NSTickMarkLeft"]; + //case NSTickMarkRight: return [NamedNumber namedNumberWithDouble:tickMarkPosition name:@"NSTickMarkRight"]; + default: + return [FSNumber numberWithDouble:tickMarkPosition]; + } +} +@end diff --git a/FScriptFramework/FSObjectInspectorBackgroundView.h b/FScriptFramework/FSObjectInspectorBackgroundView.h new file mode 100644 index 0000000..f5ff375 --- /dev/null +++ b/FScriptFramework/FSObjectInspectorBackgroundView.h @@ -0,0 +1,13 @@ +// +// FSObjectInspectorBackgroundView.h +// FScript +// +// Created by Anthony Dervish on 17/11/2014. +// +// + +#import + +@interface FSObjectInspectorBackgroundView : NSView + +@end diff --git a/FScriptFramework/FSObjectInspectorBackgroundView.m b/FScriptFramework/FSObjectInspectorBackgroundView.m new file mode 100644 index 0000000..b318e2a --- /dev/null +++ b/FScriptFramework/FSObjectInspectorBackgroundView.m @@ -0,0 +1,14 @@ +// +// FSObjectInspectorBackgroundView.m +// FScript +// +// Created by Anthony Dervish on 17/11/2014. +// +// + +#import "FSObjectInspectorBackgroundView.h" + +@implementation FSObjectInspectorBackgroundView + +-(BOOL)allowsVibrancy { return YES; } +@end diff --git a/FScriptFramework/FSObjectInspectorOptionsViewController.h b/FScriptFramework/FSObjectInspectorOptionsViewController.h new file mode 100644 index 0000000..aa9cf26 --- /dev/null +++ b/FScriptFramework/FSObjectInspectorOptionsViewController.h @@ -0,0 +1,14 @@ +// +// FSObjectInspectorOptionsViewController.h +// FScript +// +// Created by Anthony Dervish on 21/11/2014. +// +// + +#import + +@interface FSObjectInspectorOptionsViewController : NSViewController +@property (assign) IBOutlet NSArrayController *optionsArrayController; +@property (copy,nonatomic) NSArray *optionItems; +@end diff --git a/FScriptFramework/FSObjectInspectorOptionsViewController.m b/FScriptFramework/FSObjectInspectorOptionsViewController.m new file mode 100644 index 0000000..c662ae4 --- /dev/null +++ b/FScriptFramework/FSObjectInspectorOptionsViewController.m @@ -0,0 +1,27 @@ +// +// FSObjectInspectorOptionsViewController.m +// FScript +// +// Created by Anthony Dervish on 21/11/2014. +// +// + +#import "FSObjectInspectorOptionsViewController.h" + +@interface FSObjectInspectorOptionsViewController () + +@end + +@implementation FSObjectInspectorOptionsViewController + +-(NSString *)nibName +{ + return @"FSObjectInspectorOptionsViewController"; +} + +-(NSBundle *)nibBundle +{ + return [NSBundle bundleForClass:self.class]; +} + +@end diff --git a/FScriptFramework/FSObjectInspectorOptionsViewController.xib b/FScriptFramework/FSObjectInspectorOptionsViewController.xib new file mode 100644 index 0000000..f423d77 --- /dev/null +++ b/FScriptFramework/FSObjectInspectorOptionsViewController.xib @@ -0,0 +1,101 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/FScriptFramework/FSObjectInspectorOutlineView.h b/FScriptFramework/FSObjectInspectorOutlineView.h new file mode 100644 index 0000000..a09508b --- /dev/null +++ b/FScriptFramework/FSObjectInspectorOutlineView.h @@ -0,0 +1,13 @@ +// +// FSObjectInspectorOutlineView.h +// FScript +// +// Created by Anthony Dervish on 21/11/2014. +// +// + +#import + +@interface FSObjectInspectorOutlineView : NSOutlineView + +@end diff --git a/FScriptFramework/FSObjectInspectorOutlineView.m b/FScriptFramework/FSObjectInspectorOutlineView.m new file mode 100644 index 0000000..dcbfe88 --- /dev/null +++ b/FScriptFramework/FSObjectInspectorOutlineView.m @@ -0,0 +1,24 @@ +// +// FSObjectInspectorOutlineView.m +// FScript +// +// Created by Anthony Dervish on 21/11/2014. +// +// + +#import "FSObjectInspectorOutlineView.h" + +@implementation FSObjectInspectorOutlineView + +- (void)drawRect:(NSRect)dirtyRect { + [super drawRect:dirtyRect]; + + // Drawing code here. +} + +// Allow stepper views to work properly +- (BOOL)validateProposedFirstResponder:(NSResponder *)responder forEvent:(NSEvent *)event { + return YES; +} + +@end diff --git a/FScriptFramework/FSObjectInspectorViewController+NonArc.h b/FScriptFramework/FSObjectInspectorViewController+NonArc.h new file mode 100644 index 0000000..88795df --- /dev/null +++ b/FScriptFramework/FSObjectInspectorViewController+NonArc.h @@ -0,0 +1,17 @@ +// +// FSObjectInspectorViewController+NonArc.h +// FScript +// +// Created by Anthony Dervish on 18/11/2014. +// +// + +#import +#import "FSObjectInspectorViewController.h" + +@class FSArray, FSBlock; +@interface FSObjectInspectorViewController (NonArc) +- (void)applyBlock:(FSBlock*)block withObject:(id)selectedObject newValue:(id)value; +- (BOOL)sendMessageTo:(id)receiver selectorString:(NSString*)selectorStr arguments:(FSArray*)arguments column:(NSUInteger)column putResultInMatrix:(NSMatrix*)matrix; + +@end diff --git a/FScriptFramework/FSObjectInspectorViewController+NonArc.m b/FScriptFramework/FSObjectInspectorViewController+NonArc.m new file mode 100644 index 0000000..6048d60 --- /dev/null +++ b/FScriptFramework/FSObjectInspectorViewController+NonArc.m @@ -0,0 +1,73 @@ +// +// FSObjectInspectorViewController+NonArc.m +// FScript +// +// Created by Anthony Dervish on 18/11/2014. +// +// + +#import "FSObjectInspectorViewController+NonArc.h" +#import "FSCompiler.h" +#import "FSInterpreter.h" +#import "FSInterpreterPrivate.h" +#import "FSInterpreterResult.h" +#import "FSExecEngine.h" +#import "FSBlock.h" +#import "FSObjectBrowserButtonCtxBlock.h" +#import "FSMiscTools.h" +#import "FSUtils.h" + +@implementation FSObjectInspectorViewController (NonArc) + + +- (void)applyBlock:(FSBlock*)block withObject:(id)selectedObject newValue:(id)value +{ + FSInterpreter* interpreter = self.interpreter; + + @try { + [block compilIfNeeded]; + } + @catch (id exception) + { + NSRunAlertPanel(@"Syntax Error", FSErrorMessageFromException(exception), @"OK", nil, nil, nil); + FSInspectBlocksInCallStackForException(exception); + return; + } + + FSObjectBrowserButtonCtxBlock* contextualizedBlock; + + contextualizedBlock = [interpreter objectBrowserButtonCtxBlockFromString:[block printString]]; + [contextualizedBlock setMaster:block]; + + FSInterpreterResult* interpreterResult = [contextualizedBlock executeWithArguments:@[selectedObject, value]]; + if (!checkInterpreterResult(interpreterResult)) { + return; + } +} + +- (BOOL)sendMessageTo:(id)receiver selectorString:(NSString*)selectorStr arguments:(FSArray*)arguments column:(NSUInteger)column putResultInMatrix:(NSMatrix*)matrix +{ + NSInteger nbarg = [arguments count]; + id args[nbarg + 2]; + SEL selector = [FSCompiler selectorFromString:selectorStr]; + NSInteger i; + id result = nil; // To avoid a warning "might be used uninitialized" + + args[0] = receiver; + args[1] = (__bridge id)(void*)selector; + for (i = 0; i < nbarg; i++) + args[i + 2] = [arguments objectAtIndex:i]; + + @try { + result = sendMsgNoPattern(receiver, selector, nbarg + 2, args, [FSMsgContext msgContext], nil); + } + @catch (id exception) + { + FSInspectBlocksInCallStackForException(exception); + NSRunAlertPanel(@"Error", FSErrorMessageFromException(exception), @"OK", nil, nil, nil); + return NO; + } + + return YES; +} +@end diff --git a/FScriptFramework/FSObjectInspectorViewController.h b/FScriptFramework/FSObjectInspectorViewController.h new file mode 100644 index 0000000..78cf59f --- /dev/null +++ b/FScriptFramework/FSObjectInspectorViewController.h @@ -0,0 +1,29 @@ +// +// FSObjectInspectorViewController.h +// FScript +// +// Created by Anthony Dervish on 17/11/2014. +// +// + +#import + +@class FSObjectInspectorViewModelItem; +@class FSInterpreter; +@class FSDetailedObjectInspector; + +@interface FSObjectInspectorViewController : NSViewController +@property (assign) IBOutlet NSPathControl *viewPathControl; +@property (assign) IBOutlet NSOutlineView *outlineView; +@property (weak,nonatomic) FSDetailedObjectInspector *inspector; +@property (strong,nonatomic) FSObjectInspectorViewModelItem *rootViewModelItem; +@property (weak,nonatomic) FSObjectInspectorViewModelItem *selectedViewModelItem; +@property (readonly,nonatomic) NSSize desiredSize; +@property (strong,nonatomic) FSInterpreter *interpreter; +@property (strong,nonatomic) NSMenu *viewPathMenu; +@property (strong,nonatomic) NSArray *pathControlItems; +-(IBAction)showColorPanel:(id)sender; +-(IBAction)showOptionsPopover:(id)sender; +-(IBAction)inspectAction:(id)sender; +-(IBAction)viewPathClicked:(id)sender; +@end diff --git a/FScriptFramework/FSObjectInspectorViewController.m b/FScriptFramework/FSObjectInspectorViewController.m new file mode 100644 index 0000000..9b1097b --- /dev/null +++ b/FScriptFramework/FSObjectInspectorViewController.m @@ -0,0 +1,494 @@ +// +// FSObjectInspectorViewController.m +// FScript +// +// Created by Anthony Dervish on 17/11/2014. +// +// + +#import "FSObjectInspectorViewController.h" +#import "FSObjectInspectorViewController+NonArc.h" +#import "FSObjectInspectorViewModelItem.h" +#import "FSObjectInspectorOptionsViewController.h" +#import "FSDetailedObjectInspector.h" +#import "FSNamedNumber.h" +#import "FSMiscTools.h" +#import "FSObjectEnumInfo.h" +#import +#import + +#define AppearanceName NSAppearanceNameVibrantDark + +@interface FSObjectInspectorViewController () +@property (nonatomic) BOOL hasAwoken; +@property (nonatomic,strong) NSPopover *optionsPopover; +@end + +@interface FSObjectInspectorOption : NSObject +@property (copy,nonatomic) NSString *name; +@property (nonatomic) BOOL state; +@property (nonatomic) NSUInteger value; +@end +@implementation FSObjectInspectorOption ++(FSObjectInspectorOption*)optionWithName:(NSString*)name value:(NSUInteger)value state:(BOOL)on +{ + FSObjectInspectorOption *opt = [FSObjectInspectorOption new]; + opt.name = name; + opt.state = on; + opt.value = value; + return opt; +} + ++(NSArray *)arrayFromOptions:(NSUInteger) opts dict:(NSMutableDictionary *)dict mask:(NSUInteger) mask +{ + NSMutableArray* result = [NSMutableArray array]; + for (NSNumber * opt in dict.allKeys) { + [result addObject:[FSObjectInspectorOption optionWithName:(NSString*)dict[opt] value:opt.unsignedIntegerValue state:(opts & opt.unsignedIntegerValue)]]; + } + return result; +} ++(NSUInteger)optionsFromArray:(NSArray /*of FSObjectInspectorOption */ *) opts dict:(NSMutableDictionary *)dict mask:(NSUInteger) mask +{ + NSUInteger result = 0; + for (FSObjectInspectorOption *opt in opts) { + if (opt.state) { + result |= opt.value; + } + } + return result; +} +@end + +/* + * + * + *================================================================================================*/ +#pragma mark - FSObjectInspectorViewController Implementation +/*================================================================================================== + */ + + +@implementation FSObjectInspectorViewController +{ + CGFloat _scrollViewOffsetY; +} +static NSImage * sViewImage = nil; +static NSImage * sWindowImage = nil; + ++ (void)initialize +{ + if (self == [FSObjectInspectorViewController class]) { + sViewImage = [NSImage imageWithSize:NSMakeSize(33.0, 27.0) flipped:NO drawingHandler:^BOOL(NSRect dstRect) { + //// Color Declarations + NSColor* color = [NSColor colorWithCalibratedRed: 0.49 green: 0.827 blue: 0.976 alpha: 1]; + NSColor* color2 = [NSColor colorWithCalibratedRed: 0.49 green: 0.827 blue: 0.976 alpha: 0.296]; + NSColor* color3 = [NSColor colorWithCalibratedRed: 1 green: 1 blue: 1 alpha: 1]; + + //// Group + { + //// Rectangle Drawing + NSBezierPath* rectanglePath = [NSBezierPath bezierPathWithRect: NSMakeRect(0, 0, 33, 27)]; + [color setFill]; + [rectanglePath fill]; + + + //// Rectangle 2 Drawing + NSBezierPath* rectangle2Path = [NSBezierPath bezierPathWithRect: NSMakeRect(1, 1, 31, 22)]; + [NSColor.whiteColor setFill]; + [rectangle2Path fill]; + + + //// Rectangle 3 Drawing + NSBezierPath* rectangle3Path = [NSBezierPath bezierPathWithRect: NSMakeRect(3, 3, 27, 18)]; + [color2 setFill]; + [rectangle3Path fill]; + + + //// Oval Drawing + NSBezierPath* ovalPath = [NSBezierPath bezierPathWithOvalInRect: NSMakeRect(2, 24, 2, 2)]; + [color3 setFill]; + [ovalPath fill]; + + + //// Oval 2 Drawing + NSBezierPath* oval2Path = [NSBezierPath bezierPathWithOvalInRect: NSMakeRect(5, 24, 2, 2)]; + [color3 setFill]; + [oval2Path fill]; + + + //// Oval 3 Drawing + NSBezierPath* oval3Path = [NSBezierPath bezierPathWithOvalInRect: NSMakeRect(8, 24, 2, 2)]; + [color3 setFill]; + [oval3Path fill]; + } + return YES; + }]; + sWindowImage = sViewImage; + + } +} + +-(instancetype)initWithNibName:(NSString *)nibNameOrNil bundle:(NSBundle *)nibBundleOrNil +{ + self = [super initWithNibName:nibNameOrNil bundle:nibBundleOrNil]; + if (self) { + _pathControlItems = @[]; + } + return self; +} + +- (void)viewDidLoad +{ + [super viewDidLoad]; +#if MAC_OS_X_VERSION_MIN_REQUIRED >= MAC_OS_X_VERSION_10_10 + self.view.appearance = [NSAppearance appearanceNamed:AppearanceName]; + self.viewPathControl.appearance = [NSAppearance appearanceNamed:AppearanceName]; +#endif +} + +- (void)awakeFromNib +{ + if (!self.hasAwoken) { + self.hasAwoken = YES; + [self expandAll:self]; + NSScrollView* scrollView = self.outlineView.enclosingScrollView; + _scrollViewOffsetY = NSHeight(scrollView.superview.bounds) - NSHeight(scrollView.frame); + self.outlineView.doubleAction = @selector(inspectAction:); + self.outlineView.target = self; +#if MAC_OS_X_VERSION_MIN_REQUIRED >= MAC_OS_X_VERSION_10_10 + self.outlineView.appearance = [NSAppearance appearanceNamed:AppearanceName]; + if (self.rootViewModelItem.valueClass == NSView.class) { + self.viewPathMenu = [self _menuForView:self.rootViewModelItem.value]; + } + +#endif + } +} + +- (NSSize)desiredSize +{ + NSScrollView* scrollView = self.outlineView.enclosingScrollView; + NSSize scrollViewSize = [NSScrollView frameSizeForContentSize:self.outlineView.bounds.size + horizontalScrollerClass:scrollView.horizontalScroller.class + verticalScrollerClass:scrollView.verticalScroller.class + borderType:scrollView.borderType + controlSize:scrollView.horizontalScroller.controlSize + scrollerStyle:scrollView.scrollerStyle]; + if (self.outlineView.headerView) { + scrollViewSize.height += NSHeight(self.outlineView.headerView.bounds); + } + scrollViewSize.height += _scrollViewOffsetY; + return scrollViewSize; +} + +-(void)dealloc +{ + //NSLog(@"Dealloc %@",self); + [NSObject cancelPreviousPerformRequestsWithTarget:self ]; +} +-(IBAction)expandAll:(id)sender +{ + [self.outlineView expandItem:nil expandChildren:YES]; +} +/* + * + * + *================================================================================================*/ +#pragma mark - Properties +/*================================================================================================== + */ + +-(void)setRootViewModelItem:(FSObjectInspectorViewModelItem *)rootViewModelItem +{ + if (self.hasAwoken && rootViewModelItem.valueClass == NSView.class) { + self.viewPathMenu = [self _menuForView:rootViewModelItem.value]; + } + _rootViewModelItem = rootViewModelItem; + [self performSelector:@selector(expandAll:) withObject:self afterDelay:0.0]; +} + +-(FSObjectInspectorOptionsViewController*)optionsViewController +{ + return (FSObjectInspectorOptionsViewController*)self.optionsPopover.contentViewController; +} +-(NSPopover*)optionsPopover +{ + if (_optionsPopover == nil) { + _optionsPopover = [NSPopover new]; + _optionsPopover.behavior = NSPopoverBehaviorTransient; +#if MAC_OS_X_VERSION_MIN_REQUIRED >= MAC_OS_X_VERSION_10_10 + _optionsPopover.appearance = [NSAppearance appearanceNamed:NSAppearanceNameLightContent]; +#else + _optionsPopover.appearance = NSPopoverAppearanceHUD; +#endif + _optionsPopover.contentViewController = [FSObjectInspectorOptionsViewController new]; + _optionsPopover.delegate = self; + } + return _optionsPopover; +} +/* + * + * + *================================================================================================*/ +#pragma mark - NSOutlineViewDelegate +/*================================================================================================== + */ + +- (NSView*)outlineView:(NSOutlineView*)outlineView viewForTableColumn:(NSTableColumn*)tableColumn item:(id)item +{ + if ([tableColumn.identifier isEqualToString:@"Name"]) { + return [self.outlineView makeViewWithIdentifier:@"Name" owner:self]; + } + NSView *view = nil; + FSObjectInspectorViewModelItem* viewModel = [item representedObject]; + if ([viewModel respondsToSelector:@selector(valueType)]) { + switch (viewModel.valueType) { + case FS_ITEM_HEADER: + view = [self.outlineView makeViewWithIdentifier:@"Header" owner:self]; + break; + case FS_ITEM_ENUM: + view = [self.outlineView makeViewWithIdentifier:@"ObjectInspectorEnumView" owner:self]; + break; + case FS_ITEM_OPTIONS: + view = [self.outlineView makeViewWithIdentifier:@"ObjectInspectorOptionsView" owner:self]; + break; + case FS_ITEM_NUMBER: + view = [self.outlineView makeViewWithIdentifier:@"ObjectInspectorNumberView" owner:self]; + break; + case FS_ITEM_SIZE: + view = [self.outlineView makeViewWithIdentifier:@"ObjectInspectorSizeView" owner:self]; + break; + case FS_ITEM_RECT: + view = [self.outlineView makeViewWithIdentifier:@"ObjectInspectorRectView" owner:self]; + break; + case FS_ITEM_OBJECT: + view = [self.outlineView makeViewWithIdentifier:[self _viewIdentifierForValueClass:viewModel.valueClass] + owner:self]; + break; + case FS_ITEM_POINT: + view = [self.outlineView makeViewWithIdentifier:@"ObjectInspectorReadOnlyView" owner:self]; + break; + case FS_ITEM_RANGE: + view = [self.outlineView makeViewWithIdentifier:@"ObjectInspectorReadOnlyView" owner:self]; + break; + case FS_ITEM_BOOL: + view = [self.outlineView makeViewWithIdentifier:@"ObjectInspectorEnumView" owner:self]; + break; + + default: + break; + } + } + else { + view = [self.outlineView makeViewWithIdentifier:@"ObjectInspectorReadOnlyView" owner:self]; + } + return view; +} + +-(BOOL)outlineView:(NSOutlineView *)outlineView isGroupItem:(id)item +{ + FSInspectorVMValueType vmType = ((FSObjectInspectorViewModelItem*)[item representedObject]).valueType; + return vmType == FS_ITEM_HEADER; +} + +-(BOOL)outlineView:(NSOutlineView *)outlineView shouldSelectItem:(id)item +{ + FSInspectorVMValueType valueType = [(FSObjectInspectorViewModelItem*)[item representedObject] valueType] ; + return (valueType != FS_ITEM_HEADER && valueType != FS_ITEM_GROUP); +} + +/* + * + * + *================================================================================================*/ +#pragma mark - Actions +/*================================================================================================== + */ + + +-(IBAction)setColor:(id)sender +{ + NSColor *color = [(NSColorPanel*)sender color]; + self.selectedViewModelItem.value = color; +} + +-(IBAction)showColorPanel:(id)sender +{ + NSInteger row = [self.outlineView rowForView:sender]; + if (row >= 0) { + [NSColorPanel.sharedColorPanel orderFront:self]; + NSColorPanel.sharedColorPanel.target = self; + NSColorPanel.sharedColorPanel.action = @selector(setColor:); + + self.selectedViewModelItem = [[self.outlineView itemAtRow:row] representedObject]; + + } + +} +-(IBAction)inspectAction:(id)sender +{ + NSInteger row = [self.outlineView selectedRow]; + if (row >= 0) { + FSObjectInspectorViewModelItem *item = [[self.outlineView itemAtRow:row] representedObject]; + if (item.valueType == FS_ITEM_OBJECT && item.valueClass != nil) { + inspect(item.value, self.interpreter, nil); + } + } +} + + +-(IBAction)showOptionsPopover:(id)sender +{ + NSInteger row = [self.outlineView rowForView:sender]; + if (row >= 0) { + NSRect senderFrame = [sender frame]; + FSObjectInspectorViewModelItem *clickedItem = [[self.outlineView itemAtRow:row] representedObject]; + self.selectedViewModelItem = clickedItem; + NSArray *optionItems = [FSObjectInspectorOption arrayFromOptions:clickedItem.numValue dict:clickedItem.enumBiDict mask:clickedItem.optsMask]; + self.optionsViewController.optionItems = optionItems; + [self.optionsPopover showRelativeToRect:senderFrame ofView:sender preferredEdge:NSMaxYEdge]; + } +} + +-(IBAction)viewPathClicked:(id)sender +{ + if ([NSApp currentEvent].modifierFlags & NSAlternateKeyMask) { + self.inspector.inspectedObject = [[(NSPathControl*)sender clickedPathComponentCell] representedObject]; + [self.inspector refreshModel:self]; + } + else { + id clickedObject = [[(NSPathControl*)sender clickedPathComponentCell] representedObject]; + inspect(clickedObject, self.interpreter, nil); + } +} +/* + * + * + *================================================================================================*/ +#pragma mark - NSPopoverDelegate +/*================================================================================================== + */ + +-(void)popoverDidClose:(NSNotification *)notification +{ + + NSUInteger newOpts = [FSObjectInspectorOption optionsFromArray:self.optionsViewController.optionItems dict:self.selectedViewModelItem.enumBiDict mask:self.selectedViewModelItem.optsMask]; + self.selectedViewModelItem.value = objectFromOptions(newOpts, self.selectedViewModelItem.enumBiDict, self.selectedViewModelItem.optsMask); +} + +/* + * + * + *================================================================================================*/ +#pragma mark - NSResponder +/*================================================================================================== + */ +-(BOOL)acceptsFirstResponder +{ + return YES; +} +-(id)supplementalTargetForAction:(SEL)action sender:(id)sender +{ + if (action == @selector(refreshModel:) + || action == @selector(browseAction:)) + { + return self.inspector; + } + return [super supplementalTargetForAction:action sender:sender]; +} + +/* + * + * + *================================================================================================*/ +#pragma mark - Utilities +/*================================================================================================== + */ + + +-(NSString*)_viewIdentifierForValueClass:(Class)class +{ + if (class == NSColor.class) { + return @"ObjectInspectorColorView"; + } + else if (class == NSString.class) { + return @"ObjectInspectorStringView"; + } + return @"ObjectInspectorReadOnlyView"; +} + +-(NSString*)_titleForView:(NSView*)view +{ + return view.description; +} + +-(NSImage*)_imageForView:(NSView*)view +{ + return sViewImage; +} + +-(NSPathComponentCell*)_pathComponentCellForView:(NSView*)view withURL:(NSURL*)url +{ + NSPathComponentCell *item = [[NSPathComponentCell alloc] initTextCell:[self _titleForView:view]]; + item.controlSize = self.viewPathControl.controlSize; + item.font = self.viewPathControl.font; + item.image = [self _imageForView:view]; + item.representedObject = view; + return item; +} +-(IBAction)viewWasSelectedFromMenu:(id)sender +{ + +} +-(NSMenu*)_menuForSiblingViewsOfView:(NSView*)view select:(BOOL)select +{ + NSAssert([view isKindOfClass:NSView.class], @"Cannot get view hierarchy for a non-view class %@",view); + NSView *superview = view.superview; + NSMenu *menu = [[NSMenu alloc] initWithTitle:view.description]; + NSArray *views = superview ? superview.subviews : @[view]; + for (NSView *v in views) { + NSMenuItem *item = [[NSMenuItem alloc] initWithTitle:[self _titleForView:v] action:@selector(viewWasSelectedFromMenu:) keyEquivalent:@""]; + item.representedObject = v; + [menu addItem:item]; + if (select && v == view) { + [(NSMenuItem*)menu.itemArray.lastObject setState:NSOnState]; + [(NSMenuItem*)menu.itemArray.lastObject setTag:1]; + + } + } + return menu; +} + +-(NSMenu*)_menuForView:(NSView*)view +{ + + NSAssert([view isKindOfClass:NSView.class], @"Cannot get view hierarchy for a non-view class %@",view); + if (!view.superview) { return nil; } + NSMutableArray * pathControlItems = [NSMutableArray new]; + NSMutableArray *submenus = [NSMutableArray new]; + NSView *v = view; + NSUInteger submenuCount = 0; + while (v.superview) { + NSMenu *submenu = [self _menuForSiblingViewsOfView:v select:YES]; + [submenus addObject:submenu]; + ++submenuCount; + v = v.superview; + } + NSURL *url = [NSURL URLWithString:@"views://"]; + NSMenu *rootMenu = submenus.lastObject; + NSMenuItem *selectedItem = [rootMenu itemWithTag:1]; + [pathControlItems addObject:[self _pathComponentCellForView:selectedItem.representedObject withURL:url]]; + NSMenu *currentMenu = rootMenu; + [submenus removeLastObject]; + for (NSMenu *submenu in submenus.reverseObjectEnumerator) { + selectedItem = [currentMenu itemWithTag:1]; + url = [url URLByAppendingPathComponent:@"view"]; + [pathControlItems addObject:[self _pathComponentCellForView:selectedItem.representedObject withURL:url]]; + [selectedItem setSubmenu:submenu]; + currentMenu = submenu; + } + self.viewPathControl.pathComponentCells = pathControlItems.count ? pathControlItems : @[]; + return rootMenu; +} + +@end diff --git a/FScriptFramework/FSObjectInspectorViewController.xib b/FScriptFramework/FSObjectInspectorViewController.xib new file mode 100644 index 0000000..e4e5704 --- /dev/null +++ b/FScriptFramework/FSObjectInspectorViewController.xib @@ -0,0 +1,599 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + NSIsNil + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/FScriptFramework/FSObjectInspectorViewModelItem.h b/FScriptFramework/FSObjectInspectorViewModelItem.h new file mode 100644 index 0000000..5979659 --- /dev/null +++ b/FScriptFramework/FSObjectInspectorViewModelItem.h @@ -0,0 +1,51 @@ +// +// FSObjectInspectorViewModelItem.h +// FScript +// +// Created by Anthony Dervish on 16/11/2014. +// +// + +#import + +typedef NS_ENUM(NSUInteger, FSInspectorVMValueType) { + FS_ITEM_HEADER, + FS_ITEM_ENUM, + FS_ITEM_OPTIONS, + FS_ITEM_NUMBER, + FS_ITEM_SIZE, + FS_ITEM_RECT, + FS_ITEM_OBJECT, + FS_ITEM_POINT, + FS_ITEM_RANGE, + FS_ITEM_BOOL, + FS_ITEM_GROUP, +}; + +@class FSObjectInspectorViewModelItem; +@class NSMutableDictionary; + +typedef id(^FSGetterBlock)(id obj, FSObjectInspectorViewModelItem *item) ; +typedef void(^FSSetterBlock)(id obj, id newValue, FSObjectInspectorViewModelItem *item); + + +@interface FSObjectInspectorViewModelItem : NSTreeNode +@property (copy,nonatomic) NSString *name; +@property (strong,nonatomic) id value; +@property (assign,nonatomic) FSInspectorVMValueType valueType; +@property (readonly,nonatomic) NSString *displayValue; +@property (assign,nonatomic) NSMutableDictionary *enumBiDict; +@property (readonly,nonatomic) NSArray *enumNames; +@property (readonly,nonatomic) NSArray *enumValues; +@property (nonatomic) double numValue; +@property (nonatomic,copy) FSGetterBlock getter; +@property (nonatomic,copy) FSSetterBlock setter; +@property (nonatomic) NSUInteger optsMask; +@property (nonatomic) NSInteger minValue; +@property (nonatomic) NSInteger maxValue; +@property (nonatomic) Class valueClass; +@property (nonatomic) CGFloat float1; +@property (nonatomic) CGFloat float2; +@property (nonatomic) CGFloat float3; +@property (nonatomic) CGFloat float4; +@end diff --git a/FScriptFramework/FSObjectInspectorViewModelItem.m b/FScriptFramework/FSObjectInspectorViewModelItem.m new file mode 100644 index 0000000..10c81b7 --- /dev/null +++ b/FScriptFramework/FSObjectInspectorViewModelItem.m @@ -0,0 +1,242 @@ +// +// FSObjectInspectorViewModelItem.m +// FScript +// +// Created by Anthony Dervish on 16/11/2014. +// +// + +#import "FSObjectInspectorViewModelItem.h" +#import "FSBoolean.h" +#import "FSNamedNumber.h" +#import "FSNumber.h" +#import "FSObjectEnumInfo.h" + +static void *FLOAT_CHANGED_CTX = &FLOAT_CHANGED_CTX; + +@interface FSNamedInteger : NSObject +@property NSInteger integer; +@property NSString* name; +@end +@implementation FSNamedInteger + ++ (instancetype)integer:(NSInteger)num withName:(NSString*)name +{ + FSNamedInteger* n = [self new]; + n.integer = num; + n.name = name.copy; + return n; +} +@end + +static NSArray *sBOOLEnum = nil; +@implementation FSObjectInspectorViewModelItem + ++(void)initialize +{ + if (self == FSObjectInspectorViewModelItem.class) { + sBOOLEnum = @[[FSNamedInteger integer:NO withName:@"NO"], + [FSNamedInteger integer:YES withName:@"YES"]]; + } +} + +-(id)representedObject +{ + return [super representedObject] ?: self.value; +} + +- (instancetype)initWithRepresentedObject:(id)modelObject +{ + self = [super initWithRepresentedObject:modelObject]; + if (self) { + self.minValue = NSIntegerMin; + self.maxValue = NSIntegerMax; + [self addObserver:self + forKeyPath:@"float1" + options:nil + context:&FLOAT_CHANGED_CTX + ]; + [self addObserver:self + forKeyPath:@"float2" + options:nil + context:&FLOAT_CHANGED_CTX + ]; + [self addObserver:self + forKeyPath:@"float3" + options:nil + context:&FLOAT_CHANGED_CTX + ]; + [self addObserver:self + forKeyPath:@"float4" + options:nil + context:&FLOAT_CHANGED_CTX + ]; + } + return self; +} + + +- (void)dealloc +{ + [self removeObserver:self forKeyPath:@"float1"]; + [self removeObserver:self forKeyPath:@"float2"]; + [self removeObserver:self forKeyPath:@"float3"]; + [self removeObserver:self forKeyPath:@"float4"]; +} + +-(void)setValue:(id)value +{ + _value = value; + NSValue *val = value; + switch (self.valueType) { + case FS_ITEM_SIZE: { + NSSize sz = val.sizeValue; + _float1 = sz.width; + _float2 = sz.height; + } + break; + case FS_ITEM_RECT: { + NSRect rect = val.rectValue; + _float1 = rect.origin.x; + _float2 = rect.origin.y; + _float3 = rect.size.width; + _float4 = rect.size.height; + } + break; + case FS_ITEM_POINT: { + NSPoint point = val.pointValue; + _float1 = point.x; + _float2 = point.y; + } + break; + case FS_ITEM_RANGE: { + NSRange rng = val.rangeValue; + _float1 = rng.location; + _float2 = rng.length; + + } + break; + default: + break; + } + +} + +- (NSString*)displayValue +{ + switch (self.valueType) { + case FS_ITEM_HEADER: + return self.name; + break; + case FS_ITEM_ENUM: + return [self.value description]; + break; + case FS_ITEM_OPTIONS: + return [self.value description]; + break; + case FS_ITEM_NUMBER: + return [self.value description]; + break; + case FS_ITEM_SIZE: + return NSStringFromSize([(NSValue*)self.value sizeValue]); + break; + case FS_ITEM_RECT: + return NSStringFromRect([(NSValue*)self.value rectValue]); + break; + case FS_ITEM_OBJECT: + return [[self.value description] stringByReplacingOccurrencesOfString:@"\n" withString:@""]; + break; + case FS_ITEM_POINT: + return NSStringFromPoint([(NSValue*)self.value pointValue]); + break; + case FS_ITEM_RANGE: + return NSStringFromRange([(NSValue*)self.value rangeValue]); + break; + case FS_ITEM_BOOL: + return [self.value description]; + break; + default: + break; + } + return @""; +} + +- (NSArray*)enumObjects +{ + NSArray* objs = nil; + if (self.valueType == FS_ITEM_ENUM) { + NSMutableArray *enumObjs = [NSMutableArray new]; + for (NSNumber* num in self.enumBiDict.allKeys) { + [enumObjs addObject:[FSNamedInteger integer:num.integerValue withName:self.enumBiDict[num]]]; + } + objs = enumObjs; + } + else if (self.valueType == FS_ITEM_BOOL) { + objs = sBOOLEnum; + } + return objs; +} + + +- (double)numValue +{ + return [self.value doubleValue]; +} + +- (void)setNumValue:(double)value +{ + switch (self.valueType) { + case FS_ITEM_ENUM: + self.value = [FSNamedNumber namedNumberWithDouble:value name:self.enumBiDict[@(value)]] ?: [FSNumber numberWithDouble:value]; + break; + case FS_ITEM_OPTIONS: + self.value = objectFromOptions(value, self.enumBiDict, self.optsMask); + break; + case FS_ITEM_NUMBER: + self.value = [FSNumber numberWithDouble:value]; + break; + case FS_ITEM_BOOL: + self.value = [FSBoolean booleanWithBool:value]; + break; + default: + break; + } +} + +-(void)observeValueForKeyPath:(NSString *)keyPath ofObject:(id)object change:(NSDictionary *)change context:(void *)context +{ + if (context == FLOAT_CHANGED_CTX) { + [self refreshValue]; + } +} + +// A 'floatX' has changed: update our aggregate value +-(void)refreshValue +{ + [self willChangeValueForKey:@"value"]; + switch (self.valueType) { + case FS_ITEM_SIZE: + _value = [NSValue valueWithSize:NSMakeSize(self.float1, self.float2)]; + break; + case FS_ITEM_RECT: + _value = [NSValue valueWithRect:NSMakeRect(self.float1, self.float2, self.float3, self.float4)]; + break; + case FS_ITEM_POINT: + _value = [NSValue valueWithPoint:NSMakePoint(self.float1, self.float2)]; + break; + case FS_ITEM_RANGE: + _value = [NSValue valueWithRange:NSMakeRange(self.float1, self.float2)]; + break; + default: + break; + } + [self didChangeValueForKey:@"value"]; + +} + ++ (NSSet*)keyPathsForValuesAffectingDisplayValue +{ + return [NSSet setWithObject:@"value"]; +} + +@end diff --git a/FScriptFramework/FSSystem.m b/FScriptFramework/FSSystem.m index f7cbdfe..2ae7ab3 100644 --- a/FScriptFramework/FSSystem.m +++ b/FScriptFramework/FSSystem.m @@ -262,10 +262,12 @@ - (id) load:(NSString *)fileName NSString *logFmt = @"failure of loading: %@"; FSVerifClassArgsNoNil(@"load:",1,fileName,[NSString class]); - - @try - { - data = [NSData dataWithContentsOfFile:fileName]; + + BOOL unknownFileFormat = NO; + @try + { + NSError* error = nil; + data = [NSData dataWithContentsOfFile:fileName options:0 error:&error ]; if (data) { if (loadNonKeyedArchives) @@ -282,15 +284,18 @@ - (id) load:(NSString *)fileName } @catch (id exception) { - unarchiver = [[[FSUnarchiver alloc] initForReadingWithData:data loaderEnvironmentSymbolTable:[executor symbolTable] symbolTableForCompiledCodeNode:nil] autorelease]; - r = [unarchiver decodeObject]; + unarchiver = [[[FSUnarchiver alloc] initForReadingWithData:data loaderEnvironmentSymbolTable:[executor symbolTable] symbolTableForCompiledCodeNode:nil] autorelease]; + r = [unarchiver decodeObject]; + if (r == nil) { + unknownFileFormat = YES; + } } } } else { r = nil; - errStr = [NSString stringWithFormat:@"loading: can't open file %@",fileName]; + errStr = [NSString stringWithFormat:@"loading: can't open file %@. Error (%lu) = %@",fileName,error.code, error.localizedDescription]; } } @catch (id exception) @@ -302,6 +307,9 @@ - (id) load:(NSString *)fileName if (r == nil) { if (!errStr) errStr = @"failure of loading"; + if (unknownFileFormat) { + errStr = [ NSString stringWithFormat:@"%@: File %@ is in an unknown format (should be a valid keyed archive)",errStr, fileName ]; + } FSExecError(errStr); } return r; diff --git a/FScriptFramework/FSUtils.h b/FScriptFramework/FSUtils.h new file mode 100644 index 0000000..46dd65f --- /dev/null +++ b/FScriptFramework/FSUtils.h @@ -0,0 +1,30 @@ +// +// FSUtils.h +// FScript +// +// Created by Anthony Dervish on 18/11/2014. +// +// + +#import + +@interface FSUtils : NSObject + +@end + + +static inline NSRect rectWithWidthAndHeight(CGFloat width, CGFloat height) +{ + return NSMakeRect(0.0, 0.0, width, height); +} +static inline NSRect rectWithSize(NSSize size) +{ + return NSMakeRect(0.0, 0.0, size.width, size.height); +} + +static inline NSSize addSizes(NSSize size1, NSSize size2) +{ + return NSMakeSize(size1.width + size2.width, size1.height + size2.height); +} +@class FSInterpreterResult; +BOOL checkInterpreterResult(FSInterpreterResult *result); \ No newline at end of file diff --git a/FScriptFramework/FSUtils.m b/FScriptFramework/FSUtils.m new file mode 100644 index 0000000..9646780 --- /dev/null +++ b/FScriptFramework/FSUtils.m @@ -0,0 +1,24 @@ +// +// FSUtils.m +// FScript +// +// Created by Anthony Dervish on 18/11/2014. +// +// + +#import "FSUtils.h" +#import "FSInterpreterResult.h" +#import + +@implementation FSUtils +@end + +BOOL checkInterpreterResult(FSInterpreterResult* interpreterResult) +{ + if (![interpreterResult isOK]) { + NSRunAlertPanel(@"Error", [interpreterResult errorMessage], @"OK", nil, nil, nil); + [interpreterResult inspectBlocksInCallStack]; + return NO; + } + return YES; +} diff --git a/FScriptFramework/FScriptPreferences.xib b/FScriptFramework/FScriptPreferences.xib new file mode 100644 index 0000000..8e58737 --- /dev/null +++ b/FScriptFramework/FScriptPreferences.xib @@ -0,0 +1,679 @@ + + + + 1050 + 14A379a + 941 + 1343.13 + 755.00 + + com.apple.InterfaceBuilder.CocoaPlugin + 941 + + + YES + + + YES + com.apple.InterfaceBuilder.CocoaPlugin + + + PluginDependencyRecalculationVersion + + + + YES + + FScriptMenuItem + + + FirstResponder + + + NSApplication + + + 3 + 2 + {{296, 611}, {443, 82}} + -260571136 + F-Script Preferences + NSPanel + + View + + + {1.7976931348623157e+308, 1.7976931348623157e+308} + {209.31399999999999, 58} + + + 256 + + YES + + + 256 + {{98, 40}, {50, 22}} + + YES + + -1804599232 + -2147482624 + + + .HelveticaNeueDeskInterface-Regular + 13 + 1040 + + + + YES + + YES + allowsFloats + attributedStringForNil + attributedStringForNotANumber + attributedStringForZero + decimalSeparator + formatterBehavior + groupingSeparator + locale + minimum + negativeFormat + positiveFormat + usesGroupingSeparator + + + YES + + + + + + NaN + + YES + + YES + + + YES + + + + + 0.00 + + + . + + , + + + + + 0 + 0 + NO + NO + 1 + AAAAAAAAAAAAAAAAAAAAAA + + -0.00 + 0.00 + + + + 0.00 + -0.00 + + + + + + + + 0 + 0 + YES + NO + 1 + AAAAAAAAAAAAAAAAAAAAAA + + + . + , + NO + NO + YES + + + YES + + 6 + System + textBackgroundColor + + 3 + MQA + + + + 6 + System + textColor + + 3 + MAA + + + + NO + 1 + + + + 256 + {{17, 42}, {76, 17}} + + YES + + 67108864 + 134217728 + Font size + + + + 6 + System + controlColor + + 3 + MC42NjY2NjY2NjY3AA + + + + 6 + System + controlTextColor + + + + NO + 1 + + + + 256 + {{18, 18}, {407, 18}} + + YES + + 67108864 + 0 + Object browser automatically introspects declared properties + + + -935575296 + 0 + + NSImage + NSSwitch + + + NSSwitch + + + + 200 + 25 + + NO + + + {443, 82} + + {{0, 0}, {1680, 1028}} + {209.31399999999999, 80} + {1.7976931348623157e+308, 1.7976931348623157e+308} + YES + + + + + YES + + + initialFirstResponder + + + + 39 + + + + fontSizeUI + + + + 48 + + + + updatePreference: + + + + 49 + + + + updatePreference: + + + + 55 + + + + automaticallyIntrospectDeclaredPropertiesUI + + + + 56 + + + + preferencePanel + + + + 61 + + + + + YES + + 0 + + + + + + -2 + + + File's Owner + + + -1 + + + First Responder + + + -3 + + + Application + + + 24 + + + YES + + + + Panel1 + + + 25 + + + YES + + + + + + + + 26 + + + YES + + + + + + 29 + + + YES + + + + + + 53 + + + YES + + + + + + 63 + + + YES + + + + + + 64 + + + + + 65 + + + + + 27 + + + + + + + YES + + YES + -3.IBPluginDependency + -3.ImportedFromIB2 + 24.IBPluginDependency + 24.ImportedFromIB2 + 24.windowTemplate.hasMinSize + 24.windowTemplate.minSize + 25.IBPluginDependency + 25.ImportedFromIB2 + 26.IBPluginDependency + 26.ImportedFromIB2 + 27.IBPluginDependency + 27.ImportedFromIB2 + 29.IBPluginDependency + 29.ImportedFromIB2 + 53.IBPluginDependency + 53.ImportedFromIB2 + + + YES + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + + {209.31399999999999, 58} + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + + + + YES + + + YES + + + + + YES + + + YES + + + + 65 + + + + YES + + FSInterpreterView + + YES + + YES + object1 + object2 + object3 + object4 + object5 + object6 + object7 + object8 + object9 + + + YES + id + id + id + id + id + id + id + id + id + + + + YES + + YES + object1 + object2 + object3 + object4 + object5 + object6 + object7 + object8 + object9 + + + YES + + object1 + id + + + object2 + id + + + object3 + id + + + object4 + id + + + object5 + id + + + object6 + id + + + object7 + id + + + object8 + id + + + object9 + id + + + + + IBUserSource + + + + + FScriptMenuItem + NSMenuItem + + YES + + YES + openObjectBrowser: + showConsole: + showPreferencePanel: + updatePreference: + + + YES + id + id + id + id + + + + YES + + YES + openObjectBrowser: + showConsole: + showPreferencePanel: + updatePreference: + + + YES + + openObjectBrowser: + id + + + showConsole: + id + + + showPreferencePanel: + id + + + updatePreference: + id + + + + + YES + + YES + automaticallyIntrospectDeclaredPropertiesUI + fontSizeUI + interpreterView + preferencePanel + + + YES + NSButton + NSTextField + FSInterpreterView + NSPanel + + + + YES + + YES + automaticallyIntrospectDeclaredPropertiesUI + fontSizeUI + interpreterView + preferencePanel + + + YES + + automaticallyIntrospectDeclaredPropertiesUI + NSButton + + + fontSizeUI + NSTextField + + + interpreterView + FSInterpreterView + + + preferencePanel + NSPanel + + + + + IBUserSource + + + + + FirstResponder + + IBUserSource + + + + + NSObject + + IBUserSource + + + + + + 0 + IBCocoaFramework + + com.apple.InterfaceBuilder.CocoaPlugin.macosx + + + + com.apple.InterfaceBuilder.CocoaPlugin.InterfaceBuilder3 + + + YES + ../FScript.xcodeproj + 3 + + NSSwitch + {15, 15} + + + diff --git a/FScriptFramework/Pointer.m b/FScriptFramework/Pointer.m index 8e94d86..b387cc1 100644 --- a/FScriptFramework/Pointer.m +++ b/FScriptFramework/Pointer.m @@ -121,6 +121,7 @@ - (id)at:(id)i case fscode_NSPoint: return [NSValue valueWithPoint:((NSPoint *)cPointer)[index]]; case fscode_NSSize: return [NSValue valueWithSize: ((NSSize *) cPointer)[index]]; case fscode_NSRect: return [NSValue valueWithRect: ((NSRect *) cPointer)[index]]; + case fscode_NSEdgeInsets: return [NSValue valueWithEdgeInsets: ((NSEdgeInsets *) cPointer)[index]]; case '^': { void *p = ((void **)cPointer)[index]; return (p ? [Pointer pointerWithCPointer:p type:type+1] : nil ); } case 'v': FSExecError(@"dereferencing \"void *\" pointer"); default: FSExecError(@"can't dereference pointer: the type of the referenced data is not supported by F-Script"); @@ -289,7 +290,15 @@ - (id)at:(id)i put:(id)elem } else FSArgumentError(elem,2,@"NSValue containing an NSRect",@"at:put:"); - case '^': + case fscode_NSEdgeInsets: + if ([elem isKindOfClass:[NSValue class]] && strcmp([elem objCType],@encode(NSEdgeInsets)) == 0) + { + ((NSEdgeInsets *)cPointer)[index] = [elem edgeInsetsValue]; + return elem; + } + else FSArgumentError(elem,2,@"NSValue containing an NSEdgeInsets",@"top:left:bottom:right:"); + + case '^': if (elem == nil) ((void **)cPointer)[index] = NULL; else if ([elem isKindOfClass:[Pointer class]]) ((void **)cPointer)[index] = [elem cPointer]; else FSArgumentError(elem,2,@"Pointer",@"at:put:"); diff --git a/FScriptFramework/Resources/view.png b/FScriptFramework/Resources/view.png new file mode 100755 index 0000000..8a75318 Binary files /dev/null and b/FScriptFramework/Resources/view.png differ diff --git a/FScriptFramework/Resources/window.png b/FScriptFramework/Resources/window.png new file mode 100755 index 0000000..06eb113 Binary files /dev/null and b/FScriptFramework/Resources/window.png differ diff --git a/FScriptFramework/ShellView.m b/FScriptFramework/ShellView.m index e74b317..d599331 100644 --- a/FScriptFramework/ShellView.m +++ b/FScriptFramework/ShellView.m @@ -109,7 +109,7 @@ - (id)initWithFrame:(NSRect)frameRect prompt:(NSString *)thePrompt historySize:( if (self = [super initWithFrame:frameRect]) { prompt = [thePrompt retain]; - history = [[FSCommandHistory alloc] initWithUIntSize:theHistorySize]; + history = [FSCommandHistory latestHistoryWithSize:theHistorySize]; parserMode = NO_DECOMPOSE; commandHandler = [theCommandHandler retain]; lineEdited = NO; @@ -267,14 +267,14 @@ - (void)moveUp:(id)sender if ([self selectedRange].location < start || [self selectedRange].location == loc) // moved before start of command || not moved because we are on the first line of the text view { - if ([self selectedRange].location >= start-[prompt length] && [self selectedRange].location < start) - // we are on the prompt, so we move to the start of the current command (the insertion point should not be on the prompt) - [self setSelectedRange:NSMakeRange(start,0)]; - else - { + if (loc >= start - prompt.length && self.selectedRange.location < start) { [self saveEditedCommand:self]; [self replaceCurrentCommandWith:[[history goToPrevious] getStr]]; - } + } + if ([self selectedRange].location >= start-[prompt length] && [self selectedRange].location < start) { + // we are on the prompt, so we move to the start of the current command (the insertion point should not be on the prompt) + [self setSelectedRange:NSMakeRange(start,0)]; + } } } diff --git a/FScriptFramework/blockInspector.nib/Build.tiff b/FScriptFramework/blockInspector.nib/Build.tiff deleted file mode 100644 index 6d44579..0000000 Binary files a/FScriptFramework/blockInspector.nib/Build.tiff and /dev/null differ diff --git a/FScriptFramework/blockInspector.nib/designable.nib b/FScriptFramework/blockInspector.nib/designable.nib deleted file mode 100644 index e023a8f..0000000 --- a/FScriptFramework/blockInspector.nib/designable.nib +++ /dev/null @@ -1,905 +0,0 @@ - - - - 1060 - 11C74 - 1938 - 1138.23 - 567.00 - - com.apple.InterfaceBuilder.CocoaPlugin - 1938 - - - YES - NSToolbar - NSScroller - NSSplitView - NSToolbarFlexibleSpaceItem - NSScrollView - NSToolbarSpaceItem - NSBox - NSCustomObject - NSCustomView - NSView - NSWindowTemplate - NSTextView - NSToolbarItem - - - YES - com.apple.InterfaceBuilder.CocoaPlugin - - - PluginDependencyRecalculationVersion - - - - YES - - BlockInspector - - - FirstResponder - - - NSApplication - - - 4111 - 2 - {{516, 482}, {356, 286}} - 544735232 - Block Inspector - NSWindow - - - 99025BCD-28BD-4E10-A236-49C3770B7CF0 - - - YES - NO - YES - YES - 2 - 1 - - YES - - YES - 771145F7-3AD6-4F13-BC83-CA31D4D6D0AD - C119E078-D0E8-4EEB-B2C1-BB21CC86A3CA - NSToolbarFlexibleSpaceItem - NSToolbarSpaceItem - - - YES - - - 771145F7-3AD6-4F13-BC83-CA31D4D6D0AD - - run - run - - - - NSImage - run - - - - {0, 0} - {0, 0} - YES - YES - -1 - YES - 0 - - - - C119E078-D0E8-4EEB-B2C1-BB21CC86A3CA - - build - build - - - - NSImage - build - - - - {0, 0} - {0, 0} - YES - YES - -1 - YES - 0 - - - NSToolbarFlexibleSpaceItem - - Flexible Space - - - - - - {1, 5} - {20000, 32} - YES - YES - -1 - YES - 0 - - YES - YES - - - 1048576 - 2147483647 - - NSImage - NSMenuCheckmark - - - NSImage - NSMenuMixedState - - - - - NSToolbarSpaceItem - - Space - - - - - - {32, 5} - {32, 32} - YES - YES - -1 - YES - 0 - - YES - YES - - - 1048576 - 2147483647 - - - - - - - - YES - - - - - - - YES - - - - - YES - - - - {290, 158} - - - 256 - - YES - - - 266 - - YES - - - 274 - {{2, 2}, {429, 0}} - - - - {{-7, 245}, {433, 2}} - - {0, 0} - - 67239424 - 0 - - - Helvetica - 12 - 16 - - - 6 - System - textBackgroundColor - - 3 - MQA - - - - 3 - MCAwLjgwMDAwMDAxAA - - - - 3 - 0 - 0 - NO - - - - 274 - - YES - - - 256 - - YES - - - 2304 - - YES - - - 274 - {339, 197} - - FScriptTextView - NSTextView - - - {{1, 1}, {339, 222}} - - - - - 6 - System - controlColor - - 3 - MC42NjY2NjY2NjY3AA - - - 4 - - - - 256 - {{340, 1}, {15, 222}} - - - _doScroller: - 1 - 0.98327759999999997 - - - - -2147483392 - {{-100, -100}, {356, 15}} - - 1 - - _doScroller: - 0.22752810000000001 - - - {356, 224} - - - 133138 - - - - - - - 256 - - YES - - - 2304 - - YES - - - 2322 - - YES - - YES - Apple HTML pasteboard type - Apple PDF pasteboard type - Apple PICT pasteboard type - CorePasteboardFlavorType 0x6D6F6F76 - NSColor pasteboard type - NSFilenamesPboardType - NSStringPboardType - NSTypedFilenamesPboardType:'.SGI' - NSTypedFilenamesPboardType:'8BPS' - NSTypedFilenamesPboardType:'BMPf' - NSTypedFilenamesPboardType:'EPSF' - NSTypedFilenamesPboardType:'FPix' - NSTypedFilenamesPboardType:'GIFf' - NSTypedFilenamesPboardType:'ICO ' - NSTypedFilenamesPboardType:'JPEG' - NSTypedFilenamesPboardType:'PDF ' - NSTypedFilenamesPboardType:'PICT' - NSTypedFilenamesPboardType:'PNGf' - NSTypedFilenamesPboardType:'PNTG' - NSTypedFilenamesPboardType:'TIFF' - NSTypedFilenamesPboardType:'TPIC' - NSTypedFilenamesPboardType:'qtif' - NSTypedFilenamesPboardType:BMP - NSTypedFilenamesPboardType:CUR - NSTypedFilenamesPboardType:FAX - NSTypedFilenamesPboardType:FPIX - NSTypedFilenamesPboardType:FPX - NSTypedFilenamesPboardType:GIF - NSTypedFilenamesPboardType:ICNS - NSTypedFilenamesPboardType:ICO - NSTypedFilenamesPboardType:JPEG - NSTypedFilenamesPboardType:JPG - NSTypedFilenamesPboardType:MAC - NSTypedFilenamesPboardType:PCT - NSTypedFilenamesPboardType:PDF - NSTypedFilenamesPboardType:PICT - NSTypedFilenamesPboardType:PNG - NSTypedFilenamesPboardType:PNT - NSTypedFilenamesPboardType:PNTG - NSTypedFilenamesPboardType:PSD - NSTypedFilenamesPboardType:QTI - NSTypedFilenamesPboardType:QTIF - NSTypedFilenamesPboardType:RGB - NSTypedFilenamesPboardType:SGI - NSTypedFilenamesPboardType:TARGA - NSTypedFilenamesPboardType:TGA - NSTypedFilenamesPboardType:TIF - NSTypedFilenamesPboardType:TIFF - NSTypedFilenamesPboardType:bmp - NSTypedFilenamesPboardType:cur - NSTypedFilenamesPboardType:eps - NSTypedFilenamesPboardType:fax - NSTypedFilenamesPboardType:fpix - NSTypedFilenamesPboardType:fpx - NSTypedFilenamesPboardType:gif - NSTypedFilenamesPboardType:icns - NSTypedFilenamesPboardType:ico - NSTypedFilenamesPboardType:jpeg - NSTypedFilenamesPboardType:jpg - NSTypedFilenamesPboardType:mac - NSTypedFilenamesPboardType:pct - NSTypedFilenamesPboardType:pdf - NSTypedFilenamesPboardType:pict - NSTypedFilenamesPboardType:png - NSTypedFilenamesPboardType:pnt - NSTypedFilenamesPboardType:pntg - NSTypedFilenamesPboardType:psd - NSTypedFilenamesPboardType:qti - NSTypedFilenamesPboardType:qtif - NSTypedFilenamesPboardType:rgb - NSTypedFilenamesPboardType:sgi - NSTypedFilenamesPboardType:targa - NSTypedFilenamesPboardType:tga - NSTypedFilenamesPboardType:tif - NSTypedFilenamesPboardType:tiff - NXTypedFilenamePboardType:eps - NXTypedFilenamePboardType:tif - NXTypedFilenamePboardType:tiff - NeXT Encapsulated PostScript v1.2 pasteboard type - NeXT RTFD pasteboard type - NeXT Rich Text Format v1.0 pasteboard type - NeXT TIFF v4.0 pasteboard type - - - {338, 14} - - - - - - - - - - - YES - - - 6 - - - - 338 - 1 - - - 67111781 - 0 - - - 2 - MC45NDUwOTgxIDAuOTQ1MDk4MSAwLjk0NTA5ODEAA - - - YES - - YES - NSBackgroundColor - NSColor - - - YES - - 6 - System - selectedTextBackgroundColor - - - - 6 - System - selectedTextColor - - 3 - MAA - - - - - - - YES - - YES - NSColor - NSCursor - NSUnderline - - - YES - - 1 - MCAwIDEAA - - - {8, -8} - 13 - - - - - - - - - 0 - - 6 - {694, 10000000} - {338, 0} - - - - {{1, 1}, {339, 51}} - - - - - 2 - MC45NDUwOTgxIDAuOTQ1MDk4MSAwLjk0NTA5ODEAA - - - {4, 5} - - 12582912 - - YES - - YES - - - - TU0AKgAAAHCAFUqgBVKsAAAAwdVQUqwaEQeIRGJRGFlYqwWLQ+JxuOQpVRmEx2RROKwOQyOUQSPyaUym -SxqWyKXyeYxyZzWbSuJTScRCbz2Nz+gRKhUOfTqeUai0OSxiWTiBQSHSGFquGwekxyAgAAAOAQAAAwAA -AAEAEAAAAQEAAwAAAAEAEAAAAQIAAwAAAAIACAAIAQMAAwAAAAEABQAAAQYAAwAAAAEAAQAAAREABAAA -AAEAAAAIARIAAwAAAAEAAQAAARUAAwAAAAEAAgAAARYAAwAAAAEAEAAAARcABAAAAAEAAABnARwAAwAA -AAEAAQAAAT0AAwAAAAEAAgAAAVIAAwAAAAEAAQAAAVMAAwAAAAIAAQABAAAAAA - - - - - - 3 - MCAwAA - - - - 4 - - - - 256 - {{340, 1}, {15, 51}} - - - _doScroller: - 1 - - - - -2147483392 - {{-100, -100}, {87, 18}} - - 1 - - _doScroller: - 1 - 0.94565220000000005 - - - {{0, 233}, {356, 53}} - - - 133138 - - - - - - {356, 286} - - - - {356, 286} - - - {{0, 0}, {1440, 878}} - {290, 219} - {10000000000000, 10000000000000} - YES - - - - - YES - - - sourceView - - - - 55 - - - - messageView - - - - 56 - - - - splitView - - - - 58 - - - - compil: - - - - 100 - - - - run: - - - - 101 - - - - delegate - - - - 17 - - - - initialFirstResponder - - - - 59 - - - - - YES - - 0 - - - - - - -2 - - - File's Owner - - - -1 - - - First Responder - - - -3 - - - Application - - - 8 - - - YES - - - - - Window1 - - - 6 - - - YES - - - - - - - 4 - - - YES - - - - - 57 - - - YES - - - - - - - 51 - - - YES - - - - - - - - 50 - - - - - 52 - - - YES - - - - - - - - 53 - - - - - 76 - - - - - 77 - - - - - 78 - - - - - 79 - - - - - 90 - - - YES - - - - - - - - - 99 - - - - - 98 - - - - - 112 - - - - - 113 - - - - - - - YES - - YES - -1.IBPluginDependency - -2.IBPluginDependency - -3.IBPluginDependency - 112.IBPluginDependency - 113.IBPluginDependency - 4.IBPluginDependency - 50.IBPluginDependency - 51.IBPluginDependency - 52.IBPluginDependency - 53.IBPluginDependency - 57.IBPluginDependency - 6.IBPluginDependency - 76.IBPluginDependency - 76.IBShouldRemoveOnLegacySave - 77.IBPluginDependency - 77.IBShouldRemoveOnLegacySave - 78.IBPluginDependency - 78.IBShouldRemoveOnLegacySave - 79.IBPluginDependency - 79.IBShouldRemoveOnLegacySave - 8.IBPluginDependency - 8.IBWindowTemplateEditedContentRect - 8.NSWindowTemplate.visibleAtLaunch - 90.IBPluginDependency - 98.IBPluginDependency - 99.IBPluginDependency - - - YES - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - {{328, 129}, {356, 286}} - - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - - - - YES - - - - - - YES - - - - - 113 - - - 0 - IBCocoaFramework - - com.apple.InterfaceBuilder.CocoaPlugin.macosx - - - - com.apple.InterfaceBuilder.CocoaPlugin.InterfaceBuilder3 - - - YES - 3 - - YES - - YES - NSMenuCheckmark - NSMenuMixedState - build - run - - - YES - {9, 8} - {7, 2} - {32, 32} - {32, 32} - - - - diff --git a/FScriptFramework/blockInspector.nib/keyedobjects.nib b/FScriptFramework/blockInspector.nib/keyedobjects.nib deleted file mode 100644 index 605f322..0000000 Binary files a/FScriptFramework/blockInspector.nib/keyedobjects.nib and /dev/null differ diff --git a/FScriptFramework/blockInspector.xib b/FScriptFramework/blockInspector.xib new file mode 100644 index 0000000..5410161 --- /dev/null +++ b/FScriptFramework/blockInspector.xib @@ -0,0 +1,846 @@ + + + + 1060 + 14B23 + 6254 + 1343.16 + 755.00 + + com.apple.InterfaceBuilder.CocoaPlugin + 6254 + + + NSBox + NSCustomObject + NSCustomView + NSScrollView + NSScroller + NSSplitView + NSTextView + NSToolbar + NSToolbarFlexibleSpaceItem + NSToolbarItem + NSToolbarSpaceItem + NSView + NSWindowTemplate + + + com.apple.InterfaceBuilder.CocoaPlugin + + + PluginDependencyRecalculationVersion + + + + + BlockInspector + + + FirstResponder + + + NSApplication + + + 4111 + 2 + {{516, 482}, {356, 286}} + 544735232 + Block Inspector + NSWindow + + + 99025BCD-28BD-4E10-A236-49C3770B7CF0 + + + YES + NO + YES + YES + 2 + 1 + + + + 771145F7-3AD6-4F13-BC83-CA31D4D6D0AD + + run + run + + + + NSImage + run + + + + {0, 0} + {0, 0} + YES + YES + -1 + YES + 0 + + + + C119E078-D0E8-4EEB-B2C1-BB21CC86A3CA + + build + build + + + + NSImage + build + + + + {0, 0} + {0, 0} + YES + YES + -1 + YES + 0 + + + NSToolbarFlexibleSpaceItem + + Flexible Space + + + + + + {1, 5} + {20000, 32} + YES + YES + -1 + YES + 0 + + YES + YES + + + 1048576 + 2147483647 + + NSImage + NSMenuCheckmark + + + NSImage + NSMenuMixedState + + + + + NSToolbarSpaceItem + + Space + + + + + + {32, 5} + {32, 10000} + YES + YES + -1 + YES + 0 + + YES + YES + + + 1048576 + 2147483647 + + + + + + + + + + + + + + + + + + + {290, 158} + + + 256 + + + + 266 + + + + 274 + {{2, 2}, {429, 2}} + + + + + + {{-7, 243}, {433, 6}} + + + + {0, 0} + + 67108864 + 0 + + + Helvetica + 12 + 16 + + + 6 + System + textBackgroundColor + + 3 + MQA + + + + 6 + System + labelColor + + 3 + MAA + + + + + 3 + 0 + 0 + NO + + + + 274 + + + + 256 + + + + 2322 + + + + 274 + {354, 197} + + + + FScriptTextView + NSTextView + + + {{1, 1}, {354, 222}} + + + + + + 6 + System + controlColor + + 3 + MC42NjY2NjY2NjY3AA + + + 4 + YES + + + + 256 + {{339, 1}, {16, 222}} + + + + NO + _doScroller: + + + _doScroller: + 1 + 0.98327759999999997 + + + + -2147483392 + {{-100, -100}, {356, 15}} + + + + NO + _doScroller: + + 1 + + _doScroller: + 0.22752810000000001 + + + {356, 224} + + + + YES + 133138 + + + + 0.25 + 4 + 1 + + + + 256 + + + + 2322 + + + + 2322 + + Apple HTML pasteboard type + Apple PDF pasteboard type + Apple PICT pasteboard type + CorePasteboardFlavorType 0x6D6F6F76 + NSColor pasteboard type + NSFilenamesPboardType + NSStringPboardType + NSTypedFilenamesPboardType:'.SGI' + NSTypedFilenamesPboardType:'8BPS' + NSTypedFilenamesPboardType:'BMPf' + NSTypedFilenamesPboardType:'EPSF' + NSTypedFilenamesPboardType:'FPix' + NSTypedFilenamesPboardType:'GIFf' + NSTypedFilenamesPboardType:'ICO ' + NSTypedFilenamesPboardType:'JPEG' + NSTypedFilenamesPboardType:'PDF ' + NSTypedFilenamesPboardType:'PICT' + NSTypedFilenamesPboardType:'PNGf' + NSTypedFilenamesPboardType:'PNTG' + NSTypedFilenamesPboardType:'TIFF' + NSTypedFilenamesPboardType:'TPIC' + NSTypedFilenamesPboardType:'qtif' + NSTypedFilenamesPboardType:BMP + NSTypedFilenamesPboardType:CUR + NSTypedFilenamesPboardType:FAX + NSTypedFilenamesPboardType:FPIX + NSTypedFilenamesPboardType:FPX + NSTypedFilenamesPboardType:GIF + NSTypedFilenamesPboardType:ICNS + NSTypedFilenamesPboardType:ICO + NSTypedFilenamesPboardType:JPEG + NSTypedFilenamesPboardType:JPG + NSTypedFilenamesPboardType:MAC + NSTypedFilenamesPboardType:PCT + NSTypedFilenamesPboardType:PDF + NSTypedFilenamesPboardType:PICT + NSTypedFilenamesPboardType:PNG + NSTypedFilenamesPboardType:PNT + NSTypedFilenamesPboardType:PNTG + NSTypedFilenamesPboardType:PSD + NSTypedFilenamesPboardType:QTI + NSTypedFilenamesPboardType:QTIF + NSTypedFilenamesPboardType:RGB + NSTypedFilenamesPboardType:SGI + NSTypedFilenamesPboardType:TARGA + NSTypedFilenamesPboardType:TGA + NSTypedFilenamesPboardType:TIF + NSTypedFilenamesPboardType:TIFF + NSTypedFilenamesPboardType:bmp + NSTypedFilenamesPboardType:cur + NSTypedFilenamesPboardType:eps + NSTypedFilenamesPboardType:fax + NSTypedFilenamesPboardType:fpix + NSTypedFilenamesPboardType:fpx + NSTypedFilenamesPboardType:gif + NSTypedFilenamesPboardType:icns + NSTypedFilenamesPboardType:ico + NSTypedFilenamesPboardType:jpeg + NSTypedFilenamesPboardType:jpg + NSTypedFilenamesPboardType:mac + NSTypedFilenamesPboardType:pct + NSTypedFilenamesPboardType:pdf + NSTypedFilenamesPboardType:pict + NSTypedFilenamesPboardType:png + NSTypedFilenamesPboardType:pnt + NSTypedFilenamesPboardType:pntg + NSTypedFilenamesPboardType:psd + NSTypedFilenamesPboardType:qti + NSTypedFilenamesPboardType:qtif + NSTypedFilenamesPboardType:rgb + NSTypedFilenamesPboardType:sgi + NSTypedFilenamesPboardType:targa + NSTypedFilenamesPboardType:tga + NSTypedFilenamesPboardType:tif + NSTypedFilenamesPboardType:tiff + NXTypedFilenamePboardType:eps + NXTypedFilenamePboardType:tif + NXTypedFilenamePboardType:tiff + NeXT Encapsulated PostScript v1.2 pasteboard type + NeXT RTFD pasteboard type + NeXT Rich Text Format v1.0 pasteboard type + NeXT TIFF v4.0 pasteboard type + + {353, 51} + + + + + + + + + + + + + + + 38 + + + + 353 + 1 + + + 67111781 + 0 + + + 2 + MC45NDUwOTgxIDAuOTQ1MDk4MSAwLjk0NTA5ODEAA + + + + 6 + System + selectedTextBackgroundColor + + + + 6 + System + selectedTextColor + + + + + 6 + System + controlTextColor + + + + + 1 + MCAwIDEAA + + + {8, -8} + 13 + + + + + + + + 0 + + 6 + {694, 10000000} + {354, 51} + + + + {{1, 1}, {354, 51}} + + + + + + 2 + MC45NDUwOTgxIDAuOTQ1MDk4MSAwLjk0NTA5ODEAA + + + {4, 5} + + 12582912 + + + + + + TU0AKgAAAHCAFUqgBVKsAAAAwdVQUqwaEQeIRGJRGFlYqwWLQ+JxuOQpVRmEx2RROKwOQyOUQSPyaUym +SxqWyKXyeYxyZzWbSuJTScRCbz2Nz+gRKhUOfTqeUai0OSxiWTiBQSHSGFquGwekxyAgAAAOAQAAAwAA +AAEAEAAAAQEAAwAAAAEAEAAAAQIAAwAAAAIACAAIAQMAAwAAAAEABQAAAQYAAwAAAAEAAQAAAREABAAA +AAEAAAAIARIAAwAAAAEAAQAAARUAAwAAAAEAAgAAARYAAwAAAAEAEAAAARcABAAAAAEAAABnARwAAwAA +AAEAAQAAAT0AAwAAAAEAAgAAAVIAAwAAAAEAAQAAAVMAAwAAAAIAAQABAAAAAA + + + + + + 3 + MCAwAA + + + + 4 + YES + + + + 256 + {{339, 1}, {16, 51}} + + + + NO + _doScroller: + + + _doScroller: + 1 + + + + -2147483392 + {{-100, -100}, {87, 18}} + + + + NO + _doScroller: + + 1 + + _doScroller: + 1 + 0.94565220000000005 + + + {{0, 233}, {356, 53}} + + + + YES + 133138 + + + + 0.25 + 4 + 1 + + + {356, 286} + + + + + + {356, 286} + + + + + {{0, 0}, {1440, 878}} + {290, 219} + {10000000000000, 10000000000000} + YES + + + + + + + sourceView + + + + 55 + + + + messageView + + + + 56 + + + + splitView + + + + 58 + + + + compil: + + + + 100 + + + + run: + + + + 101 + + + + delegate + + + + 17 + + + + initialFirstResponder + + + + 59 + + + + + + 0 + + + + + + -2 + + + File's Owner + + + -1 + + + First Responder + + + -3 + + + Application + + + 8 + + + + + + + Window1 + + + 6 + + + + + + + + + 4 + + + + + + 57 + + + + + + + + + 51 + + + + + + + + + + 50 + + + + + 52 + + + + + + + + + + 53 + + + + + 76 + + + + + 77 + + + + + 78 + + + + + 79 + + + + + 90 + + + + + + + + + + + 99 + + + + + 98 + + + + + 112 + + + + + 113 + + + + + + + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + {{328, 129}, {356, 286}} + + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + + + + + + 113 + + + 0 + IBCocoaFramework + NO + + com.apple.InterfaceBuilder.CocoaPlugin.macosx + + + + com.apple.InterfaceBuilder.CocoaPlugin.InterfaceBuilder3 + + + YES + 3 + + {12, 12} + {10, 2} + {32, 32} + {32, 32} + + + diff --git a/FScriptFramework/genObjInspector.xib b/FScriptFramework/genObjInspector.xib new file mode 100644 index 0000000..42b7144 --- /dev/null +++ b/FScriptFramework/genObjInspector.xib @@ -0,0 +1,549 @@ + + + + 1060 + 14A379a + 941 + 1343.13 + 755.00 + + com.apple.InterfaceBuilder.CocoaPlugin + 941 + + + YES + + + YES + com.apple.InterfaceBuilder.CocoaPlugin + + + PluginDependencyRecalculationVersion + + + + YES + + FSGenericObjectInspector + + + FirstResponder + + + NSApplication + + + 4111 + 2 + {{366, 532}, {544, 191}} + 813170688 + + NSWindow + + + 802241AF-3006-41E3-868B-F9E247469442 + + + YES + YES + YES + YES + 2 + 1 + + 8EDF667F-1A07-4315-8190-D1193D7EC7C5 + + + 8EDF667F-1A07-4315-8190-D1193D7EC7C5 + + Refresh + Refresh + + + + 268 + {{0, 14}, {80, 25}} + YES + + 67108864 + 134217728 + Refresh + + .HelveticaNeueDeskInterface-Regular + 13 + 1040 + + + -2034876416 + 32 + + + + + + + + 200 + 25 + + NO + + + + + {80, 25} + {80, 25} + YES + YES + 0 + YES + 0 + + + + YES + + + + YES + + + + YES + + + + {1.7976931348623157e+308, 1.7976931348623157e+308} + {213, 107} + + + 256 + + YES + + + 274 + + YES + + + 2304 + + YES + + + 2322 + + YES + + YES + Apple HTML pasteboard type + Apple PDF pasteboard type + Apple PICT pasteboard type + CorePasteboardFlavorType 0x6D6F6F76 + NSColor pasteboard type + NSFilenamesPboardType + NSStringPboardType + NeXT Encapsulated PostScript v1.2 pasteboard type + NeXT RTFD pasteboard type + NeXT Rich Text Format v1.0 pasteboard type + NeXT TIFF v4.0 pasteboard type + + + {544, 191} + + + + + + + + + + + YES + + + 38 + + + + 544 + 1 + + + 100674405 + 0 + + + 3 + MQA + + + YES + + YES + NSBackgroundColor + NSColor + + + YES + + 6 + System + selectedTextBackgroundColor + + 3 + MC42NjY2NjY2NjY3AA + + + + 6 + System + selectedTextColor + + 3 + MAA + + + + + + 6 + System + controlTextColor + + + + YES + + YES + NSColor + NSCursor + NSUnderline + + + YES + + 1 + MCAwIDEAA + + + {8, -8} + 13 + + + + + + + 1 + + 6 + {1086, 10000000} + + + + {{1, 1}, {544, 191}} + + + + + + {4, 5} + + 12582912 + + YES + + YES + + + + TU0AKgAAAHCAFUqgBVKsAAAAwdVQUqwaEQeIRGJRGFlYqwWLQ+JxuOQpVRmEx2RROKwOQyOUQSPyaUym +SxqWyKXyeYxyZzWbSuJTScRCbz2Nz+gRKhUOfTqeUai0OSxiWTiBQSHSGFquGwekxyAgAAAOAQAAAwAA +AAEAEAAAAQEAAwAAAAEAEAAAAQIAAwAAAAIACAAIAQMAAwAAAAEABQAAAQYAAwAAAAEAAQAAAREABAAA +AAEAAAAIARIAAwAAAAEAAQAAARUAAwAAAAEAAgAAARYAAwAAAAEAEAAAARcABAAAAAEAAABnARwAAwAA +AAEAAQAAAT0AAwAAAAEAAgAAAVIAAwAAAAEAAQAAAVMAAwAAAAIAAQABAAAAAA + + + + + + 3 + MCAwAA + + + + 4 + YES + + + + -2147483392 + {{-30, 1}, {15, 152}} + + NO + _doScroller: + + + _doScroller: + 1 + + + + -2147483392 + {{-100, -100}, {87, 18}} + + NO + _doScroller: + + 1 + + _doScroller: + 1 + 0.94565220000000005 + + + {{-1, -1}, {546, 193}} + + + 133650 + + + + 0.25 + 4 + 1 + + + {544, 191} + + {{0, 0}, {1440, 878}} + {213, 162} + {1.7976931348623157e+308, 1.7976931348623157e+308} + YES + + + + + YES + + + printStringView + + + + 31 + + + + window + + + + 33 + + + + delegate + + + + 34 + + + + updateAction: + + + + 57 + + + + + YES + + 0 + + + + + + -2 + + + File's Owner + + + -1 + + + First Responder + + + -3 + + + Application + + + 5 + + + YES + + + + + Window + + + 6 + + + YES + + + + + + 18 + + + YES + + + + + + + + 19 + + + + + 44 + + + + + 45 + + + + + 46 + + + YES + + + + + + 56 + + + YES + + + + + + 54 + + + YES + + + + + + 55 + + + + + + + YES + + YES + -1.IBPluginDependency + -2.IBPluginDependency + -3.IBPluginDependency + 18.IBPluginDependency + 19.IBPluginDependency + 44.IBPluginDependency + 44.IBShouldRemoveOnLegacySave + 45.IBPluginDependency + 45.IBShouldRemoveOnLegacySave + 46.IBPluginDependency + 5.IBPluginDependency + 5.IBWindowTemplateEditedContentRect + 5.windowTemplate.hasMinSize + 5.windowTemplate.minSize + 54.IBPluginDependency + 55.IBPluginDependency + 56.IBPluginDependency + 6.IBPluginDependency + + + YES + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + {{215, 425}, {544, 191}} + + {213, 107} + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + + + + YES + + + YES + + + + + YES + + + YES + + + + 57 + + + 0 + IBCocoaFramework + + com.apple.InterfaceBuilder.CocoaPlugin.macosx + + + + com.apple.InterfaceBuilder.CocoaPlugin.InterfaceBuilder3 + + + YES + + 3 + + diff --git a/FScriptFramework/metamacros.h b/FScriptFramework/metamacros.h new file mode 100644 index 0000000..b15ba67 --- /dev/null +++ b/FScriptFramework/metamacros.h @@ -0,0 +1,772 @@ +/** + * Macros for metaprogramming + * ExtendedC + * + * Copyright (C) 2012 Justin Spahr-Summers + * Released under the MIT license + */ + +#ifndef EXTC_METAMACROS_H +#define EXTC_METAMACROS_H + +#ifdef HAVE_CONFIG_H +#include "config.h" +#endif + +/** + * Executes one or more expressions (which may have a void type, such as a call + * to a function that returns no value) and always returns true. + */ +#define metamacro_exprify(...) \ + ((__VA_ARGS__), true) + +/** + * Returns a string representation of VALUE after full macro expansion. + */ +#define metamacro_stringify(VALUE) \ + metamacro_stringify_(VALUE) + +/** + * Returns A and B concatenated after full macro expansion. + */ +#define metamacro_concat(A, B) \ + metamacro_concat_(A, B) + +/** + * Returns the Nth variadic argument (starting from zero). At least + * N + 1 variadic arguments must be given. N must be between zero and twenty, + * inclusive. + */ +#define metamacro_at(N, ...) \ + metamacro_concat(metamacro_at, N)(__VA_ARGS__) + +/** + * Returns the number of arguments (up to twenty) provided to the macro. At + * least one argument must be provided. + * + * Inspired by P99: http://p99.gforge.inria.fr + */ +#define metamacro_argcount(...) \ + metamacro_at(25, __VA_ARGS__, 25, 24, 23, 22 ,21, 20, 19, 18, 17, 16, 15, 14, 13, 12, 11, 10, 9, 8, 7, 6, 5, 4, 3, 2, 1) + +/** + * Identical to #metamacro_foreach_cxt, except that no CONTEXT argument is + * given. Only the index and current argument will thus be passed to MACRO. + */ +#define metamacro_foreach(MACRO, SEP, ...) \ + metamacro_foreach_cxt(metamacro_foreach_iter, SEP, MACRO, __VA_ARGS__) + +/** + * For each consecutive variadic argument (up to twenty), MACRO is passed the + * zero-based index of the current argument, CONTEXT, and then the argument + * itself. The results of adjoining invocations of MACRO are then separated by + * SEP. + * + * Inspired by P99: http://p99.gforge.inria.fr + */ +#define metamacro_foreach_cxt(MACRO, SEP, CONTEXT, ...) \ + metamacro_concat(metamacro_foreach_cxt, metamacro_argcount(__VA_ARGS__))(MACRO, SEP, CONTEXT, __VA_ARGS__) + +/** + * Identical to #metamacro_foreach_cxt. This can be used when the former would + * fail due to recursive macro expansion. + */ +#define metamacro_foreach_cxt_recursive(MACRO, SEP, CONTEXT, ...) \ + metamacro_concat(metamacro_foreach_cxt_recursive, metamacro_argcount(__VA_ARGS__))(MACRO, SEP, CONTEXT, __VA_ARGS__) + +/** + * In consecutive order, appends each variadic argument (up to twenty) onto + * BASE. The resulting concatenations are then separated by SEP. + * + * This is primarily useful to manipulate a list of macro invocations into instead + * invoking a different, possibly related macro. + */ +#define metamacro_foreach_concat(BASE, SEP, ...) \ + metamacro_foreach_cxt(metamacro_foreach_concat_iter, SEP, BASE, __VA_ARGS__) + +/** + * Iterates COUNT times, each time invoking MACRO with the current index + * (starting at zero) and CONTEXT. The results of adjoining invocations of MACRO + * are then separated by SEP. + * + * COUNT must be an integer between zero and twenty, inclusive. + */ +#define metamacro_for_cxt(COUNT, MACRO, SEP, CONTEXT) \ + metamacro_concat(metamacro_for_cxt, COUNT)(MACRO, SEP, CONTEXT) + +/** + * Returns the first argument given. At least one argument must be provided. + * + * This is useful when implementing a variadic macro, where you may have only + * one variadic argument, but no way to retrieve it (for example, because \c ... + * always needs to match at least one argument). + * + * @code + +#define varmacro(...) \ + metamacro_head(__VA_ARGS__) + + * @endcode + */ +#define metamacro_head(...) \ + metamacro_head_(__VA_ARGS__, 0) + +/** + * Returns every argument except the first. At least two arguments must be + * provided. + */ +#define metamacro_tail(...) \ + metamacro_tail_(__VA_ARGS__) + +/** + * Returns the first N (up to twenty) variadic arguments as a new argument list. + * At least N variadic arguments must be provided. + */ +#define metamacro_take(N, ...) \ + metamacro_concat(metamacro_take, N)(__VA_ARGS__) + +/** + * Removes the first N (up to twenty) variadic arguments from the given argument + * list. At least N variadic arguments must be provided. + */ +#define metamacro_drop(N, ...) \ + metamacro_concat(metamacro_drop, N)(__VA_ARGS__) + +/** + * Decrements VAL, which must be a number between zero and twenty, inclusive. + * + * This is primarily useful when dealing with indexes and counts in + * metaprogramming. + */ +#define metamacro_dec(VAL) \ + metamacro_at(VAL, -1, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24) + +/** + * Increments VAL, which must be a number between zero and twenty, inclusive. + * + * This is primarily useful when dealing with indexes and counts in + * metaprogramming. + */ +#define metamacro_inc(VAL) \ + metamacro_at(VAL, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26) + +/** + * If A is equal to B, the next argument list is expanded; otherwise, the + * argument list after that is expanded. A and B must be numbers between zero + * and twenty, inclusive. Additionally, B must be greater than or equal to A. + * + * @code + +// expands to true +metamacro_if_eq(0, 0)(true)(false) + +// expands to false +metamacro_if_eq(0, 1)(true)(false) + + * @endcode + * + * This is primarily useful when dealing with indexes and counts in + * metaprogramming. + */ +#define metamacro_if_eq(A, B) \ + metamacro_concat(metamacro_if_eq, A)(B) + +/** + * Identical to #metamacro_if_eq. This can be used when the former would fail + * due to recursive macro expansion. + */ +#define metamacro_if_eq_recursive(A, B) \ + metamacro_concat(metamacro_if_eq_recursive, A)(B) + +/** + * Returns 1 if N is an even number, or 0 otherwise. N must be between zero and + * twenty, inclusive. + * + * For the purposes of this test, zero is considered even. + */ +#define metamacro_is_even(N) \ + metamacro_at(N, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1) + +/** + * Returns the logical NOT of B, which must be the number zero or one. + */ +#define metamacro_not(B) \ + metamacro_at(B, 1, 0) + +// IMPLEMENTATION DETAILS FOLLOW! +// Do not write code that depends on anything below this line. +#define metamacro_stringify_(VALUE) # VALUE +#define metamacro_concat_(A, B) A ## B +#define metamacro_foreach_iter(INDEX, MACRO, ARG) MACRO(INDEX, ARG) +#define metamacro_head_(FIRST, ...) FIRST +#define metamacro_tail_(FIRST, ...) __VA_ARGS__ +#define metamacro_consume_(...) +#define metamacro_expand_(...) __VA_ARGS__ + +// implemented from scratch so that metamacro_concat() doesn't end up nesting +#define metamacro_foreach_concat_iter(INDEX, BASE, ARG) metamacro_foreach_concat_iter_(BASE, ARG) +#define metamacro_foreach_concat_iter_(BASE, ARG) BASE ## ARG + +// metamacro_at expansions +#define metamacro_at0(...) metamacro_head(__VA_ARGS__) +#define metamacro_at1(_0, ...) metamacro_head(__VA_ARGS__) +#define metamacro_at2(_0, _1, ...) metamacro_head(__VA_ARGS__) +#define metamacro_at3(_0, _1, _2, ...) metamacro_head(__VA_ARGS__) +#define metamacro_at4(_0, _1, _2, _3, ...) metamacro_head(__VA_ARGS__) +#define metamacro_at5(_0, _1, _2, _3, _4, ...) metamacro_head(__VA_ARGS__) +#define metamacro_at6(_0, _1, _2, _3, _4, _5, ...) metamacro_head(__VA_ARGS__) +#define metamacro_at7(_0, _1, _2, _3, _4, _5, _6, ...) metamacro_head(__VA_ARGS__) +#define metamacro_at8(_0, _1, _2, _3, _4, _5, _6, _7, ...) metamacro_head(__VA_ARGS__) +#define metamacro_at9(_0, _1, _2, _3, _4, _5, _6, _7, _8, ...) metamacro_head(__VA_ARGS__) +#define metamacro_at10(_0, _1, _2, _3, _4, _5, _6, _7, _8, _9, ...) metamacro_head(__VA_ARGS__) +#define metamacro_at11(_0, _1, _2, _3, _4, _5, _6, _7, _8, _9, _10, ...) metamacro_head(__VA_ARGS__) +#define metamacro_at12(_0, _1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11, ...) metamacro_head(__VA_ARGS__) +#define metamacro_at13(_0, _1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11, _12, ...) metamacro_head(__VA_ARGS__) +#define metamacro_at14(_0, _1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11, _12, _13, ...) metamacro_head(__VA_ARGS__) +#define metamacro_at15(_0, _1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11, _12, _13, _14, ...) metamacro_head(__VA_ARGS__) +#define metamacro_at16(_0, _1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11, _12, _13, _14, _15, ...) metamacro_head(__VA_ARGS__) +#define metamacro_at17(_0, _1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11, _12, _13, _14, _15, _16, ...) metamacro_head(__VA_ARGS__) +#define metamacro_at18(_0, _1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11, _12, _13, _14, _15, _16, _17, ...) metamacro_head(__VA_ARGS__) +#define metamacro_at19(_0, _1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11, _12, _13, _14, _15, _16, _17, _18, ...) metamacro_head(__VA_ARGS__) +#define metamacro_at20(_0, _1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11, _12, _13, _14, _15, _16, _17, _18, _19, ...) metamacro_head(__VA_ARGS__) +#define metamacro_at21(_0, _1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11, _12, _13, _14, _15, _16, _17, _18, _19, _20, ...) metamacro_head(__VA_ARGS__) +#define metamacro_at22(_0, _1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11, _12, _13, _14, _15, _16, _17, _18, _19, _20, _21, ...) metamacro_head(__VA_ARGS__) +#define metamacro_at23(_0, _1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11, _12, _13, _14, _15, _16, _17, _18, _19, _20, _21, _22, ...) metamacro_head(__VA_ARGS__) +#define metamacro_at24(_0, _1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11, _12, _13, _14, _15, _16, _17, _18, _19, _20, _21, _22, _23, ...) metamacro_head(__VA_ARGS__) +#define metamacro_at25(_0, _1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11, _12, _13, _14, _15, _16, _17, _18, _19, _20, _21, _22, _23, _24, ...) metamacro_head(__VA_ARGS__) + +// metamacro_foreach_cxt expansions +#define metamacro_foreach_cxt0(MACRO, SEP, CONTEXT) +#define metamacro_foreach_cxt1(MACRO, SEP, CONTEXT, _0) MACRO(0, CONTEXT, _0) + +#define metamacro_foreach_cxt2(MACRO, SEP, CONTEXT, _0, _1) \ + metamacro_foreach_cxt1(MACRO, SEP, CONTEXT, _0) \ + SEP \ + MACRO(1, CONTEXT, _1) + +#define metamacro_foreach_cxt3(MACRO, SEP, CONTEXT, _0, _1, _2) \ + metamacro_foreach_cxt2(MACRO, SEP, CONTEXT, _0, _1) \ + SEP \ + MACRO(2, CONTEXT, _2) + +#define metamacro_foreach_cxt4(MACRO, SEP, CONTEXT, _0, _1, _2, _3) \ + metamacro_foreach_cxt3(MACRO, SEP, CONTEXT, _0, _1, _2) \ + SEP \ + MACRO(3, CONTEXT, _3) + +#define metamacro_foreach_cxt5(MACRO, SEP, CONTEXT, _0, _1, _2, _3, _4) \ + metamacro_foreach_cxt4(MACRO, SEP, CONTEXT, _0, _1, _2, _3) \ + SEP \ + MACRO(4, CONTEXT, _4) + +#define metamacro_foreach_cxt6(MACRO, SEP, CONTEXT, _0, _1, _2, _3, _4, _5) \ + metamacro_foreach_cxt5(MACRO, SEP, CONTEXT, _0, _1, _2, _3, _4) \ + SEP \ + MACRO(5, CONTEXT, _5) + +#define metamacro_foreach_cxt7(MACRO, SEP, CONTEXT, _0, _1, _2, _3, _4, _5, _6) \ + metamacro_foreach_cxt6(MACRO, SEP, CONTEXT, _0, _1, _2, _3, _4, _5) \ + SEP \ + MACRO(6, CONTEXT, _6) + +#define metamacro_foreach_cxt8(MACRO, SEP, CONTEXT, _0, _1, _2, _3, _4, _5, _6, _7) \ + metamacro_foreach_cxt7(MACRO, SEP, CONTEXT, _0, _1, _2, _3, _4, _5, _6) \ + SEP \ + MACRO(7, CONTEXT, _7) + +#define metamacro_foreach_cxt9(MACRO, SEP, CONTEXT, _0, _1, _2, _3, _4, _5, _6, _7, _8) \ + metamacro_foreach_cxt8(MACRO, SEP, CONTEXT, _0, _1, _2, _3, _4, _5, _6, _7) \ + SEP \ + MACRO(8, CONTEXT, _8) + +#define metamacro_foreach_cxt10(MACRO, SEP, CONTEXT, _0, _1, _2, _3, _4, _5, _6, _7, _8, _9) \ + metamacro_foreach_cxt9(MACRO, SEP, CONTEXT, _0, _1, _2, _3, _4, _5, _6, _7, _8) \ + SEP \ + MACRO(9, CONTEXT, _9) + +#define metamacro_foreach_cxt11(MACRO, SEP, CONTEXT, _0, _1, _2, _3, _4, _5, _6, _7, _8, _9, _10) \ + metamacro_foreach_cxt10(MACRO, SEP, CONTEXT, _0, _1, _2, _3, _4, _5, _6, _7, _8, _9) \ + SEP \ + MACRO(10, CONTEXT, _10) + +#define metamacro_foreach_cxt12(MACRO, SEP, CONTEXT, _0, _1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11) \ + metamacro_foreach_cxt11(MACRO, SEP, CONTEXT, _0, _1, _2, _3, _4, _5, _6, _7, _8, _9, _10) \ + SEP \ + MACRO(11, CONTEXT, _11) + +#define metamacro_foreach_cxt13(MACRO, SEP, CONTEXT, _0, _1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11, _12) \ + metamacro_foreach_cxt12(MACRO, SEP, CONTEXT, _0, _1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11) \ + SEP \ + MACRO(12, CONTEXT, _12) + +#define metamacro_foreach_cxt14(MACRO, SEP, CONTEXT, _0, _1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11, _12, _13) \ + metamacro_foreach_cxt13(MACRO, SEP, CONTEXT, _0, _1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11, _12) \ + SEP \ + MACRO(13, CONTEXT, _13) + +#define metamacro_foreach_cxt15(MACRO, SEP, CONTEXT, _0, _1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11, _12, _13, _14) \ + metamacro_foreach_cxt14(MACRO, SEP, CONTEXT, _0, _1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11, _12, _13) \ + SEP \ + MACRO(14, CONTEXT, _14) + +#define metamacro_foreach_cxt16(MACRO, SEP, CONTEXT, _0, _1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11, _12, _13, _14, _15) \ + metamacro_foreach_cxt15(MACRO, SEP, CONTEXT, _0, _1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11, _12, _13, _14) \ + SEP \ + MACRO(15, CONTEXT, _15) + +#define metamacro_foreach_cxt17(MACRO, SEP, CONTEXT, _0, _1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11, _12, _13, _14, _15, _16) \ + metamacro_foreach_cxt16(MACRO, SEP, CONTEXT, _0, _1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11, _12, _13, _14, _15) \ + SEP \ + MACRO(16, CONTEXT, _16) + +#define metamacro_foreach_cxt18(MACRO, SEP, CONTEXT, _0, _1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11, _12, _13, _14, _15, _16, _17) \ + metamacro_foreach_cxt17(MACRO, SEP, CONTEXT, _0, _1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11, _12, _13, _14, _15, _16) \ + SEP \ + MACRO(17, CONTEXT, _17) + +#define metamacro_foreach_cxt19(MACRO, SEP, CONTEXT, _0, _1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11, _12, _13, _14, _15, _16, _17, _18) \ + metamacro_foreach_cxt18(MACRO, SEP, CONTEXT, _0, _1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11, _12, _13, _14, _15, _16, _17) \ + SEP \ + MACRO(18, CONTEXT, _18) + +#define metamacro_foreach_cxt20(MACRO, SEP, CONTEXT, _0, _1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11, _12, _13, _14, _15, _16, _17, _18, _19) \ + metamacro_foreach_cxt19(MACRO, SEP, CONTEXT, _0, _1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11, _12, _13, _14, _15, _16, _17, _18) \ + SEP \ + MACRO(19, CONTEXT, _19) + +#define metamacro_foreach_cxt21(MACRO, SEP, CONTEXT, _0, _1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11, _12, _13, _14, _15, _16, _17, _18, _19, _20) \ + metamacro_foreach_cxt20(MACRO, SEP, CONTEXT, _0, _1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11, _12, _13, _14, _15, _16, _17, _18, _19) \ + SEP \ + MACRO(20, CONTEXT, _20) + +#define metamacro_foreach_cxt22(MACRO, SEP, CONTEXT, _0, _1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11, _12, _13, _14, _15, _16, _17, _18, _19, _20, _21) \ + metamacro_foreach_cxt21(MACRO, SEP, CONTEXT, _0, _1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11, _12, _13, _14, _15, _16, _17, _18, _19, _20) \ + SEP \ + MACRO(21, CONTEXT, _21) + +#define metamacro_foreach_cxt23(MACRO, SEP, CONTEXT, _0, _1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11, _12, _13, _14, _15, _16, _17, _18, _19, _20, _21, _22) \ + metamacro_foreach_cxt22(MACRO, SEP, CONTEXT, _0, _1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11, _12, _13, _14, _15, _16, _17, _18, _19, _20, _21) \ + SEP \ + MACRO(22, CONTEXT, _22) + +#define metamacro_foreach_cxt24(MACRO, SEP, CONTEXT, _0, _1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11, _12, _13, _14, _15, _16, _17, _18, _19, _20, _21, _22, _23) \ + metamacro_foreach_cxt23(MACRO, SEP, CONTEXT, _0, _1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11, _12, _13, _14, _15, _16, _17, _18, _19, _20, _21, _22) \ + SEP \ + MACRO(23, CONTEXT, _23) + +#define metamacro_foreach_cxt25(MACRO, SEP, CONTEXT, _0, _1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11, _12, _13, _14, _15, _16, _17, _18, _19, _20, _21, _22, _23, _24) \ + metamacro_foreach_cxt24(MACRO, SEP, CONTEXT, _0, _1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11, _12, _13, _14, _15, _16, _17, _18, _19, _20, _21, _22, _23) \ + SEP \ + MACRO(24, CONTEXT, _24) + +// metamacro_foreach_cxt_recursive expansions +#define metamacro_foreach_cxt_recursive0(MACRO, SEP, CONTEXT) +#define metamacro_foreach_cxt_recursive1(MACRO, SEP, CONTEXT, _0) MACRO(0, CONTEXT, _0) + +#define metamacro_foreach_cxt_recursive2(MACRO, SEP, CONTEXT, _0, _1) \ + metamacro_foreach_cxt_recursive1(MACRO, SEP, CONTEXT, _0) \ + SEP \ + MACRO(1, CONTEXT, _1) + +#define metamacro_foreach_cxt_recursive3(MACRO, SEP, CONTEXT, _0, _1, _2) \ + metamacro_foreach_cxt_recursive2(MACRO, SEP, CONTEXT, _0, _1) \ + SEP \ + MACRO(2, CONTEXT, _2) + +#define metamacro_foreach_cxt_recursive4(MACRO, SEP, CONTEXT, _0, _1, _2, _3) \ + metamacro_foreach_cxt_recursive3(MACRO, SEP, CONTEXT, _0, _1, _2) \ + SEP \ + MACRO(3, CONTEXT, _3) + +#define metamacro_foreach_cxt_recursive5(MACRO, SEP, CONTEXT, _0, _1, _2, _3, _4) \ + metamacro_foreach_cxt_recursive4(MACRO, SEP, CONTEXT, _0, _1, _2, _3) \ + SEP \ + MACRO(4, CONTEXT, _4) + +#define metamacro_foreach_cxt_recursive6(MACRO, SEP, CONTEXT, _0, _1, _2, _3, _4, _5) \ + metamacro_foreach_cxt_recursive5(MACRO, SEP, CONTEXT, _0, _1, _2, _3, _4) \ + SEP \ + MACRO(5, CONTEXT, _5) + +#define metamacro_foreach_cxt_recursive7(MACRO, SEP, CONTEXT, _0, _1, _2, _3, _4, _5, _6) \ + metamacro_foreach_cxt_recursive6(MACRO, SEP, CONTEXT, _0, _1, _2, _3, _4, _5) \ + SEP \ + MACRO(6, CONTEXT, _6) + +#define metamacro_foreach_cxt_recursive8(MACRO, SEP, CONTEXT, _0, _1, _2, _3, _4, _5, _6, _7) \ + metamacro_foreach_cxt_recursive7(MACRO, SEP, CONTEXT, _0, _1, _2, _3, _4, _5, _6) \ + SEP \ + MACRO(7, CONTEXT, _7) + +#define metamacro_foreach_cxt_recursive9(MACRO, SEP, CONTEXT, _0, _1, _2, _3, _4, _5, _6, _7, _8) \ + metamacro_foreach_cxt_recursive8(MACRO, SEP, CONTEXT, _0, _1, _2, _3, _4, _5, _6, _7) \ + SEP \ + MACRO(8, CONTEXT, _8) + +#define metamacro_foreach_cxt_recursive10(MACRO, SEP, CONTEXT, _0, _1, _2, _3, _4, _5, _6, _7, _8, _9) \ + metamacro_foreach_cxt_recursive9(MACRO, SEP, CONTEXT, _0, _1, _2, _3, _4, _5, _6, _7, _8) \ + SEP \ + MACRO(9, CONTEXT, _9) + +#define metamacro_foreach_cxt_recursive11(MACRO, SEP, CONTEXT, _0, _1, _2, _3, _4, _5, _6, _7, _8, _9, _10) \ + metamacro_foreach_cxt_recursive10(MACRO, SEP, CONTEXT, _0, _1, _2, _3, _4, _5, _6, _7, _8, _9) \ + SEP \ + MACRO(10, CONTEXT, _10) + +#define metamacro_foreach_cxt_recursive12(MACRO, SEP, CONTEXT, _0, _1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11) \ + metamacro_foreach_cxt_recursive11(MACRO, SEP, CONTEXT, _0, _1, _2, _3, _4, _5, _6, _7, _8, _9, _10) \ + SEP \ + MACRO(11, CONTEXT, _11) + +#define metamacro_foreach_cxt_recursive13(MACRO, SEP, CONTEXT, _0, _1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11, _12) \ + metamacro_foreach_cxt_recursive12(MACRO, SEP, CONTEXT, _0, _1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11) \ + SEP \ + MACRO(12, CONTEXT, _12) + +#define metamacro_foreach_cxt_recursive14(MACRO, SEP, CONTEXT, _0, _1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11, _12, _13) \ + metamacro_foreach_cxt_recursive13(MACRO, SEP, CONTEXT, _0, _1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11, _12) \ + SEP \ + MACRO(13, CONTEXT, _13) + +#define metamacro_foreach_cxt_recursive15(MACRO, SEP, CONTEXT, _0, _1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11, _12, _13, _14) \ + metamacro_foreach_cxt_recursive14(MACRO, SEP, CONTEXT, _0, _1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11, _12, _13) \ + SEP \ + MACRO(14, CONTEXT, _14) + +#define metamacro_foreach_cxt_recursive16(MACRO, SEP, CONTEXT, _0, _1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11, _12, _13, _14, _15) \ + metamacro_foreach_cxt_recursive15(MACRO, SEP, CONTEXT, _0, _1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11, _12, _13, _14) \ + SEP \ + MACRO(15, CONTEXT, _15) + +#define metamacro_foreach_cxt_recursive17(MACRO, SEP, CONTEXT, _0, _1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11, _12, _13, _14, _15, _16) \ + metamacro_foreach_cxt_recursive16(MACRO, SEP, CONTEXT, _0, _1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11, _12, _13, _14, _15) \ + SEP \ + MACRO(16, CONTEXT, _16) + +#define metamacro_foreach_cxt_recursive18(MACRO, SEP, CONTEXT, _0, _1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11, _12, _13, _14, _15, _16, _17) \ + metamacro_foreach_cxt_recursive17(MACRO, SEP, CONTEXT, _0, _1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11, _12, _13, _14, _15, _16) \ + SEP \ + MACRO(17, CONTEXT, _17) + +#define metamacro_foreach_cxt_recursive19(MACRO, SEP, CONTEXT, _0, _1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11, _12, _13, _14, _15, _16, _17, _18) \ + metamacro_foreach_cxt_recursive18(MACRO, SEP, CONTEXT, _0, _1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11, _12, _13, _14, _15, _16, _17) \ + SEP \ + MACRO(18, CONTEXT, _18) + +#define metamacro_foreach_cxt_recursive20(MACRO, SEP, CONTEXT, _0, _1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11, _12, _13, _14, _15, _16, _17, _18, _19) \ + metamacro_foreach_cxt_recursive19(MACRO, SEP, CONTEXT, _0, _1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11, _12, _13, _14, _15, _16, _17, _18) \ + SEP \ + MACRO(19, CONTEXT, _19) + +#define metamacro_foreach_cxt_recursive21(MACRO, SEP, CONTEXT, _0, _1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11, _12, _13, _14, _15, _16, _17, _18, _19, _20) \ + metamacro_foreach_cxt_recursive20(MACRO, SEP, CONTEXT, _0, _1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11, _12, _13, _14, _15, _16, _17, _18, _19) \ + SEP \ + MACRO(20, CONTEXT, _20) +#define metamacro_foreach_cxt_recursive22(MACRO, SEP, CONTEXT, _0, _1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11, _12, _13, _14, _15, _16, _17, _18, _19, _20, _21) \ + metamacro_foreach_cxt_recursive21(MACRO, SEP, CONTEXT, _0, _1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11, _12, _13, _14, _15, _16, _17, _18, _19, _20) \ + SEP \ + MACRO(21, CONTEXT, _21) +#define metamacro_foreach_cxt_recursive23(MACRO, SEP, CONTEXT, _0, _1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11, _12, _13, _14, _15, _16, _17, _18, _19, _20, _21, _22) \ + metamacro_foreach_cxt_recursive22(MACRO, SEP, CONTEXT, _0, _1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11, _12, _13, _14, _15, _16, _17, _18, _19, _20, _21) \ + SEP \ + MACRO(22, CONTEXT, _22) +#define metamacro_foreach_cxt_recursive24(MACRO, SEP, CONTEXT, _0, _1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11, _12, _13, _14, _15, _16, _17, _18, _19, _20, _21, _22, _23) \ + metamacro_foreach_cxt_recursive23(MACRO, SEP, CONTEXT, _0, _1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11, _12, _13, _14, _15, _16, _17, _18, _19, _20, _21, _22) \ + SEP \ + MACRO(23, CONTEXT, _23) +#define metamacro_foreach_cxt_recursive25(MACRO, SEP, CONTEXT, _0, _1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11, _12, _13, _14, _15, _16, _17, _18, _19, _20, _21, _22, _23, _24) \ + metamacro_foreach_cxt_recursive24(MACRO, SEP, CONTEXT, _0, _1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11, _12, _13, _14, _15, _16, _17, _18, _19, _20, _21, _22, _23) \ + SEP \ + MACRO(24, CONTEXT, _24) + +// metamacro_for_cxt expansions +#define metamacro_for_cxt0(MACRO, SEP, CONTEXT) +#define metamacro_for_cxt1(MACRO, SEP, CONTEXT) MACRO(0, CONTEXT) + +#define metamacro_for_cxt2(MACRO, SEP, CONTEXT) \ + metamacro_for_cxt1(MACRO, SEP, CONTEXT) \ + SEP \ + MACRO(1, CONTEXT) + +#define metamacro_for_cxt3(MACRO, SEP, CONTEXT) \ + metamacro_for_cxt2(MACRO, SEP, CONTEXT) \ + SEP \ + MACRO(2, CONTEXT) + +#define metamacro_for_cxt4(MACRO, SEP, CONTEXT) \ + metamacro_for_cxt3(MACRO, SEP, CONTEXT) \ + SEP \ + MACRO(3, CONTEXT) + +#define metamacro_for_cxt5(MACRO, SEP, CONTEXT) \ + metamacro_for_cxt4(MACRO, SEP, CONTEXT) \ + SEP \ + MACRO(4, CONTEXT) + +#define metamacro_for_cxt6(MACRO, SEP, CONTEXT) \ + metamacro_for_cxt5(MACRO, SEP, CONTEXT) \ + SEP \ + MACRO(5, CONTEXT) + +#define metamacro_for_cxt7(MACRO, SEP, CONTEXT) \ + metamacro_for_cxt6(MACRO, SEP, CONTEXT) \ + SEP \ + MACRO(6, CONTEXT) + +#define metamacro_for_cxt8(MACRO, SEP, CONTEXT) \ + metamacro_for_cxt7(MACRO, SEP, CONTEXT) \ + SEP \ + MACRO(7, CONTEXT) + +#define metamacro_for_cxt9(MACRO, SEP, CONTEXT) \ + metamacro_for_cxt8(MACRO, SEP, CONTEXT) \ + SEP \ + MACRO(8, CONTEXT) + +#define metamacro_for_cxt10(MACRO, SEP, CONTEXT) \ + metamacro_for_cxt9(MACRO, SEP, CONTEXT) \ + SEP \ + MACRO(9, CONTEXT) + +#define metamacro_for_cxt11(MACRO, SEP, CONTEXT) \ + metamacro_for_cxt10(MACRO, SEP, CONTEXT) \ + SEP \ + MACRO(10, CONTEXT) + +#define metamacro_for_cxt12(MACRO, SEP, CONTEXT) \ + metamacro_for_cxt11(MACRO, SEP, CONTEXT) \ + SEP \ + MACRO(11, CONTEXT) + +#define metamacro_for_cxt13(MACRO, SEP, CONTEXT) \ + metamacro_for_cxt12(MACRO, SEP, CONTEXT) \ + SEP \ + MACRO(12, CONTEXT) + +#define metamacro_for_cxt14(MACRO, SEP, CONTEXT) \ + metamacro_for_cxt13(MACRO, SEP, CONTEXT) \ + SEP \ + MACRO(13, CONTEXT) + +#define metamacro_for_cxt15(MACRO, SEP, CONTEXT) \ + metamacro_for_cxt14(MACRO, SEP, CONTEXT) \ + SEP \ + MACRO(14, CONTEXT) + +#define metamacro_for_cxt16(MACRO, SEP, CONTEXT) \ + metamacro_for_cxt15(MACRO, SEP, CONTEXT) \ + SEP \ + MACRO(15, CONTEXT) + +#define metamacro_for_cxt17(MACRO, SEP, CONTEXT) \ + metamacro_for_cxt16(MACRO, SEP, CONTEXT) \ + SEP \ + MACRO(16, CONTEXT) + +#define metamacro_for_cxt18(MACRO, SEP, CONTEXT) \ + metamacro_for_cxt17(MACRO, SEP, CONTEXT) \ + SEP \ + MACRO(17, CONTEXT) + +#define metamacro_for_cxt19(MACRO, SEP, CONTEXT) \ + metamacro_for_cxt18(MACRO, SEP, CONTEXT) \ + SEP \ + MACRO(18, CONTEXT) + +#define metamacro_for_cxt20(MACRO, SEP, CONTEXT) \ + metamacro_for_cxt19(MACRO, SEP, CONTEXT) \ + SEP \ + MACRO(19, CONTEXT) + +#define metamacro_for_cxt21(MACRO, SEP, CONTEXT) \ + metamacro_for_cxt20(MACRO, SEP, CONTEXT) \ + SEP \ + MACRO(20, CONTEXT) +#define metamacro_for_cxt22(MACRO, SEP, CONTEXT) \ + metamacro_for_cxt21(MACRO, SEP, CONTEXT) \ + SEP \ + MACRO(21, CONTEXT) +#define metamacro_for_cxt23(MACRO, SEP, CONTEXT) \ + metamacro_for_cxt22(MACRO, SEP, CONTEXT) \ + SEP \ + MACRO(22, CONTEXT) +#define metamacro_for_cxt24(MACRO, SEP, CONTEXT) \ + metamacro_for_cxt23(MACRO, SEP, CONTEXT) \ + SEP \ + MACRO(23, CONTEXT) +#define metamacro_for_cxt25(MACRO, SEP, CONTEXT) \ + metamacro_for_cxt24(MACRO, SEP, CONTEXT) \ + SEP \ + MACRO(24, CONTEXT) + +// metamacro_if_eq expansions +#define metamacro_if_eq0(VALUE) \ + metamacro_concat(metamacro_if_eq0_, VALUE) + +#define metamacro_if_eq0_0(...) __VA_ARGS__ metamacro_consume_ +#define metamacro_if_eq0_1(...) metamacro_expand_ +#define metamacro_if_eq0_2(...) metamacro_expand_ +#define metamacro_if_eq0_3(...) metamacro_expand_ +#define metamacro_if_eq0_4(...) metamacro_expand_ +#define metamacro_if_eq0_5(...) metamacro_expand_ +#define metamacro_if_eq0_6(...) metamacro_expand_ +#define metamacro_if_eq0_7(...) metamacro_expand_ +#define metamacro_if_eq0_8(...) metamacro_expand_ +#define metamacro_if_eq0_9(...) metamacro_expand_ +#define metamacro_if_eq0_10(...) metamacro_expand_ +#define metamacro_if_eq0_11(...) metamacro_expand_ +#define metamacro_if_eq0_12(...) metamacro_expand_ +#define metamacro_if_eq0_13(...) metamacro_expand_ +#define metamacro_if_eq0_14(...) metamacro_expand_ +#define metamacro_if_eq0_15(...) metamacro_expand_ +#define metamacro_if_eq0_16(...) metamacro_expand_ +#define metamacro_if_eq0_17(...) metamacro_expand_ +#define metamacro_if_eq0_18(...) metamacro_expand_ +#define metamacro_if_eq0_19(...) metamacro_expand_ +#define metamacro_if_eq0_20(...) metamacro_expand_ +#define metamacro_if_eq0_21(...) metamacro_expand_ +#define metamacro_if_eq0_22(...) metamacro_expand_ +#define metamacro_if_eq0_23(...) metamacro_expand_ +#define metamacro_if_eq0_24(...) metamacro_expand_ +#define metamacro_if_eq0_25(...) metamacro_expand_ + +#define metamacro_if_eq1(VALUE) metamacro_if_eq0(metamacro_dec(VALUE)) +#define metamacro_if_eq2(VALUE) metamacro_if_eq1(metamacro_dec(VALUE)) +#define metamacro_if_eq3(VALUE) metamacro_if_eq2(metamacro_dec(VALUE)) +#define metamacro_if_eq4(VALUE) metamacro_if_eq3(metamacro_dec(VALUE)) +#define metamacro_if_eq5(VALUE) metamacro_if_eq4(metamacro_dec(VALUE)) +#define metamacro_if_eq6(VALUE) metamacro_if_eq5(metamacro_dec(VALUE)) +#define metamacro_if_eq7(VALUE) metamacro_if_eq6(metamacro_dec(VALUE)) +#define metamacro_if_eq8(VALUE) metamacro_if_eq7(metamacro_dec(VALUE)) +#define metamacro_if_eq9(VALUE) metamacro_if_eq8(metamacro_dec(VALUE)) +#define metamacro_if_eq10(VALUE) metamacro_if_eq9(metamacro_dec(VALUE)) +#define metamacro_if_eq11(VALUE) metamacro_if_eq10(metamacro_dec(VALUE)) +#define metamacro_if_eq12(VALUE) metamacro_if_eq11(metamacro_dec(VALUE)) +#define metamacro_if_eq13(VALUE) metamacro_if_eq12(metamacro_dec(VALUE)) +#define metamacro_if_eq14(VALUE) metamacro_if_eq13(metamacro_dec(VALUE)) +#define metamacro_if_eq15(VALUE) metamacro_if_eq14(metamacro_dec(VALUE)) +#define metamacro_if_eq16(VALUE) metamacro_if_eq15(metamacro_dec(VALUE)) +#define metamacro_if_eq17(VALUE) metamacro_if_eq16(metamacro_dec(VALUE)) +#define metamacro_if_eq18(VALUE) metamacro_if_eq17(metamacro_dec(VALUE)) +#define metamacro_if_eq19(VALUE) metamacro_if_eq18(metamacro_dec(VALUE)) +#define metamacro_if_eq20(VALUE) metamacro_if_eq19(metamacro_dec(VALUE)) +#define metamacro_if_eq21(VALUE) metamacro_if_eq20(metamacro_dec(VALUE)) +#define metamacro_if_eq22(VALUE) metamacro_if_eq21(metamacro_dec(VALUE)) +#define metamacro_if_eq23(VALUE) metamacro_if_eq22(metamacro_dec(VALUE)) +#define metamacro_if_eq24(VALUE) metamacro_if_eq23(metamacro_dec(VALUE)) +#define metamacro_if_eq25(VALUE) metamacro_if_eq24(metamacro_dec(VALUE)) + +// metamacro_if_eq_recursive expansions +#define metamacro_if_eq_recursive0(VALUE) \ + metamacro_concat(metamacro_if_eq_recursive0_, VALUE) + +#define metamacro_if_eq_recursive0_0(...) __VA_ARGS__ metamacro_consume_ +#define metamacro_if_eq_recursive0_1(...) metamacro_expand_ +#define metamacro_if_eq_recursive0_2(...) metamacro_expand_ +#define metamacro_if_eq_recursive0_3(...) metamacro_expand_ +#define metamacro_if_eq_recursive0_4(...) metamacro_expand_ +#define metamacro_if_eq_recursive0_5(...) metamacro_expand_ +#define metamacro_if_eq_recursive0_6(...) metamacro_expand_ +#define metamacro_if_eq_recursive0_7(...) metamacro_expand_ +#define metamacro_if_eq_recursive0_8(...) metamacro_expand_ +#define metamacro_if_eq_recursive0_9(...) metamacro_expand_ +#define metamacro_if_eq_recursive0_10(...) metamacro_expand_ +#define metamacro_if_eq_recursive0_11(...) metamacro_expand_ +#define metamacro_if_eq_recursive0_12(...) metamacro_expand_ +#define metamacro_if_eq_recursive0_13(...) metamacro_expand_ +#define metamacro_if_eq_recursive0_14(...) metamacro_expand_ +#define metamacro_if_eq_recursive0_15(...) metamacro_expand_ +#define metamacro_if_eq_recursive0_16(...) metamacro_expand_ +#define metamacro_if_eq_recursive0_17(...) metamacro_expand_ +#define metamacro_if_eq_recursive0_18(...) metamacro_expand_ +#define metamacro_if_eq_recursive0_19(...) metamacro_expand_ +#define metamacro_if_eq_recursive0_20(...) metamacro_expand_ +#define metamacro_if_eq_recursive0_21(...) metamacro_expand_ +#define metamacro_if_eq_recursive0_22(...) metamacro_expand_ +#define metamacro_if_eq_recursive0_23(...) metamacro_expand_ +#define metamacro_if_eq_recursive0_24(...) metamacro_expand_ +#define metamacro_if_eq_recursive0_25(...) metamacro_expand_ + +#define metamacro_if_eq_recursive1(VALUE) metamacro_if_eq_recursive0(metamacro_dec(VALUE)) +#define metamacro_if_eq_recursive2(VALUE) metamacro_if_eq_recursive1(metamacro_dec(VALUE)) +#define metamacro_if_eq_recursive3(VALUE) metamacro_if_eq_recursive2(metamacro_dec(VALUE)) +#define metamacro_if_eq_recursive4(VALUE) metamacro_if_eq_recursive3(metamacro_dec(VALUE)) +#define metamacro_if_eq_recursive5(VALUE) metamacro_if_eq_recursive4(metamacro_dec(VALUE)) +#define metamacro_if_eq_recursive6(VALUE) metamacro_if_eq_recursive5(metamacro_dec(VALUE)) +#define metamacro_if_eq_recursive7(VALUE) metamacro_if_eq_recursive6(metamacro_dec(VALUE)) +#define metamacro_if_eq_recursive8(VALUE) metamacro_if_eq_recursive7(metamacro_dec(VALUE)) +#define metamacro_if_eq_recursive9(VALUE) metamacro_if_eq_recursive8(metamacro_dec(VALUE)) +#define metamacro_if_eq_recursive10(VALUE) metamacro_if_eq_recursive9(metamacro_dec(VALUE)) +#define metamacro_if_eq_recursive11(VALUE) metamacro_if_eq_recursive10(metamacro_dec(VALUE)) +#define metamacro_if_eq_recursive12(VALUE) metamacro_if_eq_recursive11(metamacro_dec(VALUE)) +#define metamacro_if_eq_recursive13(VALUE) metamacro_if_eq_recursive12(metamacro_dec(VALUE)) +#define metamacro_if_eq_recursive14(VALUE) metamacro_if_eq_recursive13(metamacro_dec(VALUE)) +#define metamacro_if_eq_recursive15(VALUE) metamacro_if_eq_recursive14(metamacro_dec(VALUE)) +#define metamacro_if_eq_recursive16(VALUE) metamacro_if_eq_recursive15(metamacro_dec(VALUE)) +#define metamacro_if_eq_recursive17(VALUE) metamacro_if_eq_recursive16(metamacro_dec(VALUE)) +#define metamacro_if_eq_recursive18(VALUE) metamacro_if_eq_recursive17(metamacro_dec(VALUE)) +#define metamacro_if_eq_recursive19(VALUE) metamacro_if_eq_recursive18(metamacro_dec(VALUE)) +#define metamacro_if_eq_recursive20(VALUE) metamacro_if_eq_recursive19(metamacro_dec(VALUE)) +#define metamacro_if_eq_recursive21(VALUE) metamacro_if_eq_recursive20(metamacro_dec(VALUE)) +#define metamacro_if_eq_recursive22(VALUE) metamacro_if_eq_recursive21(metamacro_dec(VALUE)) +#define metamacro_if_eq_recursive23(VALUE) metamacro_if_eq_recursive22(metamacro_dec(VALUE)) +#define metamacro_if_eq_recursive24(VALUE) metamacro_if_eq_recursive23(metamacro_dec(VALUE)) +#define metamacro_if_eq_recursive25(VALUE) metamacro_if_eq_recursive24(metamacro_dec(VALUE)) + +// metamacro_take expansions +#define metamacro_take0(...) +#define metamacro_take1(...) metamacro_head(__VA_ARGS__) +#define metamacro_take2(...) metamacro_head(__VA_ARGS__), metamacro_take1(metamacro_tail(__VA_ARGS__)) +#define metamacro_take3(...) metamacro_head(__VA_ARGS__), metamacro_take2(metamacro_tail(__VA_ARGS__)) +#define metamacro_take4(...) metamacro_head(__VA_ARGS__), metamacro_take3(metamacro_tail(__VA_ARGS__)) +#define metamacro_take5(...) metamacro_head(__VA_ARGS__), metamacro_take4(metamacro_tail(__VA_ARGS__)) +#define metamacro_take6(...) metamacro_head(__VA_ARGS__), metamacro_take5(metamacro_tail(__VA_ARGS__)) +#define metamacro_take7(...) metamacro_head(__VA_ARGS__), metamacro_take6(metamacro_tail(__VA_ARGS__)) +#define metamacro_take8(...) metamacro_head(__VA_ARGS__), metamacro_take7(metamacro_tail(__VA_ARGS__)) +#define metamacro_take9(...) metamacro_head(__VA_ARGS__), metamacro_take8(metamacro_tail(__VA_ARGS__)) +#define metamacro_take10(...) metamacro_head(__VA_ARGS__), metamacro_take9(metamacro_tail(__VA_ARGS__)) +#define metamacro_take11(...) metamacro_head(__VA_ARGS__), metamacro_take10(metamacro_tail(__VA_ARGS__)) +#define metamacro_take12(...) metamacro_head(__VA_ARGS__), metamacro_take11(metamacro_tail(__VA_ARGS__)) +#define metamacro_take13(...) metamacro_head(__VA_ARGS__), metamacro_take12(metamacro_tail(__VA_ARGS__)) +#define metamacro_take14(...) metamacro_head(__VA_ARGS__), metamacro_take13(metamacro_tail(__VA_ARGS__)) +#define metamacro_take15(...) metamacro_head(__VA_ARGS__), metamacro_take14(metamacro_tail(__VA_ARGS__)) +#define metamacro_take16(...) metamacro_head(__VA_ARGS__), metamacro_take15(metamacro_tail(__VA_ARGS__)) +#define metamacro_take17(...) metamacro_head(__VA_ARGS__), metamacro_take16(metamacro_tail(__VA_ARGS__)) +#define metamacro_take18(...) metamacro_head(__VA_ARGS__), metamacro_take17(metamacro_tail(__VA_ARGS__)) +#define metamacro_take19(...) metamacro_head(__VA_ARGS__), metamacro_take18(metamacro_tail(__VA_ARGS__)) +#define metamacro_take20(...) metamacro_head(__VA_ARGS__), metamacro_take19(metamacro_tail(__VA_ARGS__)) +#define metamacro_take21(...) metamacro_head(__VA_ARGS__), metamacro_take20(metamacro_tail(__VA_ARGS__)) +#define metamacro_take22(...) metamacro_head(__VA_ARGS__), metamacro_take21(metamacro_tail(__VA_ARGS__)) +#define metamacro_take23(...) metamacro_head(__VA_ARGS__), metamacro_take22(metamacro_tail(__VA_ARGS__)) +#define metamacro_take24(...) metamacro_head(__VA_ARGS__), metamacro_take23(metamacro_tail(__VA_ARGS__)) +#define metamacro_take25(...) metamacro_head(__VA_ARGS__), metamacro_take24(metamacro_tail(__VA_ARGS__)) + +// metamacro_drop expansions +#define metamacro_drop0(...) __VA_ARGS__ +#define metamacro_drop1(...) metamacro_tail(__VA_ARGS__) +#define metamacro_drop2(...) metamacro_drop1(metamacro_tail(__VA_ARGS__)) +#define metamacro_drop3(...) metamacro_drop2(metamacro_tail(__VA_ARGS__)) +#define metamacro_drop4(...) metamacro_drop3(metamacro_tail(__VA_ARGS__)) +#define metamacro_drop5(...) metamacro_drop4(metamacro_tail(__VA_ARGS__)) +#define metamacro_drop6(...) metamacro_drop5(metamacro_tail(__VA_ARGS__)) +#define metamacro_drop7(...) metamacro_drop6(metamacro_tail(__VA_ARGS__)) +#define metamacro_drop8(...) metamacro_drop7(metamacro_tail(__VA_ARGS__)) +#define metamacro_drop9(...) metamacro_drop8(metamacro_tail(__VA_ARGS__)) +#define metamacro_drop10(...) metamacro_drop9(metamacro_tail(__VA_ARGS__)) +#define metamacro_drop11(...) metamacro_drop10(metamacro_tail(__VA_ARGS__)) +#define metamacro_drop12(...) metamacro_drop11(metamacro_tail(__VA_ARGS__)) +#define metamacro_drop13(...) metamacro_drop12(metamacro_tail(__VA_ARGS__)) +#define metamacro_drop14(...) metamacro_drop13(metamacro_tail(__VA_ARGS__)) +#define metamacro_drop15(...) metamacro_drop14(metamacro_tail(__VA_ARGS__)) +#define metamacro_drop16(...) metamacro_drop15(metamacro_tail(__VA_ARGS__)) +#define metamacro_drop17(...) metamacro_drop16(metamacro_tail(__VA_ARGS__)) +#define metamacro_drop18(...) metamacro_drop17(metamacro_tail(__VA_ARGS__)) +#define metamacro_drop19(...) metamacro_drop18(metamacro_tail(__VA_ARGS__)) +#define metamacro_drop20(...) metamacro_drop19(metamacro_tail(__VA_ARGS__)) +#define metamacro_drop21(...) metamacro_drop20(metamacro_tail(__VA_ARGS__)) +#define metamacro_drop22(...) metamacro_drop21(metamacro_tail(__VA_ARGS__)) +#define metamacro_drop23(...) metamacro_drop22(metamacro_tail(__VA_ARGS__)) +#define metamacro_drop24(...) metamacro_drop23(metamacro_tail(__VA_ARGS__)) +#define metamacro_drop25(...) metamacro_drop24(metamacro_tail(__VA_ARGS__)) + +#endif diff --git a/FScriptFramework/metamacrosorig.h b/FScriptFramework/metamacrosorig.h new file mode 100644 index 0000000..77a77b5 --- /dev/null +++ b/FScriptFramework/metamacrosorig.h @@ -0,0 +1,666 @@ +/** + * Macros for metaprogramming + * ExtendedC + * + * Copyright (C) 2012 Justin Spahr-Summers + * Released under the MIT license + */ + +#ifndef EXTC_METAMACROS_H +#define EXTC_METAMACROS_H + +/** + * Executes one or more expressions (which may have a void type, such as a call + * to a function that returns no value) and always returns true. + */ +#define metamacro_exprify(...) \ + ((__VA_ARGS__), true) + +/** + * Returns a string representation of VALUE after full macro expansion. + */ +#define metamacro_stringify(VALUE) \ + metamacro_stringify_(VALUE) + +/** + * Returns A and B concatenated after full macro expansion. + */ +#define metamacro_concat(A, B) \ + metamacro_concat_(A, B) + +/** + * Returns the Nth variadic argument (starting from zero). At least + * N + 1 variadic arguments must be given. N must be between zero and twenty, + * inclusive. + */ +#define metamacro_at(N, ...) \ + metamacro_concat(metamacro_at, N)(__VA_ARGS__) + +/** + * Returns the number of arguments (up to twenty) provided to the macro. At + * least one argument must be provided. + * + * Inspired by P99: http://p99.gforge.inria.fr + */ +#define metamacro_argcount(...) \ + metamacro_at(20, __VA_ARGS__, 20, 19, 18, 17, 16, 15, 14, 13, 12, 11, 10, 9, 8, 7, 6, 5, 4, 3, 2, 1) + +/** + * Identical to #metamacro_foreach_cxt, except that no CONTEXT argument is + * given. Only the index and current argument will thus be passed to MACRO. + */ +#define metamacro_foreach(MACRO, SEP, ...) \ + metamacro_foreach_cxt(metamacro_foreach_iter, SEP, MACRO, __VA_ARGS__) + +/** + * For each consecutive variadic argument (up to twenty), MACRO is passed the + * zero-based index of the current argument, CONTEXT, and then the argument + * itself. The results of adjoining invocations of MACRO are then separated by + * SEP. + * + * Inspired by P99: http://p99.gforge.inria.fr + */ +#define metamacro_foreach_cxt(MACRO, SEP, CONTEXT, ...) \ + metamacro_concat(metamacro_foreach_cxt, metamacro_argcount(__VA_ARGS__))(MACRO, SEP, CONTEXT, __VA_ARGS__) + +/** + * Identical to #metamacro_foreach_cxt. This can be used when the former would + * fail due to recursive macro expansion. + */ +#define metamacro_foreach_cxt_recursive(MACRO, SEP, CONTEXT, ...) \ + metamacro_concat(metamacro_foreach_cxt_recursive, metamacro_argcount(__VA_ARGS__))(MACRO, SEP, CONTEXT, __VA_ARGS__) + +/** + * In consecutive order, appends each variadic argument (up to twenty) onto + * BASE. The resulting concatenations are then separated by SEP. + * + * This is primarily useful to manipulate a list of macro invocations into instead + * invoking a different, possibly related macro. + */ +#define metamacro_foreach_concat(BASE, SEP, ...) \ + metamacro_foreach_cxt(metamacro_foreach_concat_iter, SEP, BASE, __VA_ARGS__) + +/** + * Iterates COUNT times, each time invoking MACRO with the current index + * (starting at zero) and CONTEXT. The results of adjoining invocations of MACRO + * are then separated by SEP. + * + * COUNT must be an integer between zero and twenty, inclusive. + */ +#define metamacro_for_cxt(COUNT, MACRO, SEP, CONTEXT) \ + metamacro_concat(metamacro_for_cxt, COUNT)(MACRO, SEP, CONTEXT) + +/** + * Returns the first argument given. At least one argument must be provided. + * + * This is useful when implementing a variadic macro, where you may have only + * one variadic argument, but no way to retrieve it (for example, because \c ... + * always needs to match at least one argument). + * + * @code + +#define varmacro(...) \ + metamacro_head(__VA_ARGS__) + + * @endcode + */ +#define metamacro_head(...) \ + metamacro_head_(__VA_ARGS__, 0) + +/** + * Returns every argument except the first. At least two arguments must be + * provided. + */ +#define metamacro_tail(...) \ + metamacro_tail_(__VA_ARGS__) + +/** + * Returns the first N (up to twenty) variadic arguments as a new argument list. + * At least N variadic arguments must be provided. + */ +#define metamacro_take(N, ...) \ + metamacro_concat(metamacro_take, N)(__VA_ARGS__) + +/** + * Removes the first N (up to twenty) variadic arguments from the given argument + * list. At least N variadic arguments must be provided. + */ +#define metamacro_drop(N, ...) \ + metamacro_concat(metamacro_drop, N)(__VA_ARGS__) + +/** + * Decrements VAL, which must be a number between zero and twenty, inclusive. + * + * This is primarily useful when dealing with indexes and counts in + * metaprogramming. + */ +#define metamacro_dec(VAL) \ + metamacro_at(VAL, -1, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19) + +/** + * Increments VAL, which must be a number between zero and twenty, inclusive. + * + * This is primarily useful when dealing with indexes and counts in + * metaprogramming. + */ +#define metamacro_inc(VAL) \ + metamacro_at(VAL, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21) + +/** + * If A is equal to B, the next argument list is expanded; otherwise, the + * argument list after that is expanded. A and B must be numbers between zero + * and twenty, inclusive. Additionally, B must be greater than or equal to A. + * + * @code + +// expands to true +metamacro_if_eq(0, 0)(true)(false) + +// expands to false +metamacro_if_eq(0, 1)(true)(false) + + * @endcode + * + * This is primarily useful when dealing with indexes and counts in + * metaprogramming. + */ +#define metamacro_if_eq(A, B) \ + metamacro_concat(metamacro_if_eq, A)(B) + +/** + * Identical to #metamacro_if_eq. This can be used when the former would fail + * due to recursive macro expansion. + */ +#define metamacro_if_eq_recursive(A, B) \ + metamacro_concat(metamacro_if_eq_recursive, A)(B) + +/** + * Returns 1 if N is an even number, or 0 otherwise. N must be between zero and + * twenty, inclusive. + * + * For the purposes of this test, zero is considered even. + */ +#define metamacro_is_even(N) \ + metamacro_at(N, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1) + +/** + * Returns the logical NOT of B, which must be the number zero or one. + */ +#define metamacro_not(B) \ + metamacro_at(B, 1, 0) + +// IMPLEMENTATION DETAILS FOLLOW! +// Do not write code that depends on anything below this line. +#define metamacro_stringify_(VALUE) # VALUE +#define metamacro_concat_(A, B) A ## B +#define metamacro_foreach_iter(INDEX, MACRO, ARG) MACRO(INDEX, ARG) +#define metamacro_head_(FIRST, ...) FIRST +#define metamacro_tail_(FIRST, ...) __VA_ARGS__ +#define metamacro_consume_(...) +#define metamacro_expand_(...) __VA_ARGS__ + +// implemented from scratch so that metamacro_concat() doesn't end up nesting +#define metamacro_foreach_concat_iter(INDEX, BASE, ARG) metamacro_foreach_concat_iter_(BASE, ARG) +#define metamacro_foreach_concat_iter_(BASE, ARG) BASE ## ARG + +// metamacro_at expansions +#define metamacro_at0(...) metamacro_head(__VA_ARGS__) +#define metamacro_at1(_0, ...) metamacro_head(__VA_ARGS__) +#define metamacro_at2(_0, _1, ...) metamacro_head(__VA_ARGS__) +#define metamacro_at3(_0, _1, _2, ...) metamacro_head(__VA_ARGS__) +#define metamacro_at4(_0, _1, _2, _3, ...) metamacro_head(__VA_ARGS__) +#define metamacro_at5(_0, _1, _2, _3, _4, ...) metamacro_head(__VA_ARGS__) +#define metamacro_at6(_0, _1, _2, _3, _4, _5, ...) metamacro_head(__VA_ARGS__) +#define metamacro_at7(_0, _1, _2, _3, _4, _5, _6, ...) metamacro_head(__VA_ARGS__) +#define metamacro_at8(_0, _1, _2, _3, _4, _5, _6, _7, ...) metamacro_head(__VA_ARGS__) +#define metamacro_at9(_0, _1, _2, _3, _4, _5, _6, _7, _8, ...) metamacro_head(__VA_ARGS__) +#define metamacro_at10(_0, _1, _2, _3, _4, _5, _6, _7, _8, _9, ...) metamacro_head(__VA_ARGS__) +#define metamacro_at11(_0, _1, _2, _3, _4, _5, _6, _7, _8, _9, _10, ...) metamacro_head(__VA_ARGS__) +#define metamacro_at12(_0, _1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11, ...) metamacro_head(__VA_ARGS__) +#define metamacro_at13(_0, _1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11, _12, ...) metamacro_head(__VA_ARGS__) +#define metamacro_at14(_0, _1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11, _12, _13, ...) metamacro_head(__VA_ARGS__) +#define metamacro_at15(_0, _1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11, _12, _13, _14, ...) metamacro_head(__VA_ARGS__) +#define metamacro_at16(_0, _1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11, _12, _13, _14, _15, ...) metamacro_head(__VA_ARGS__) +#define metamacro_at17(_0, _1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11, _12, _13, _14, _15, _16, ...) metamacro_head(__VA_ARGS__) +#define metamacro_at18(_0, _1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11, _12, _13, _14, _15, _16, _17, ...) metamacro_head(__VA_ARGS__) +#define metamacro_at19(_0, _1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11, _12, _13, _14, _15, _16, _17, _18, ...) metamacro_head(__VA_ARGS__) +#define metamacro_at20(_0, _1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11, _12, _13, _14, _15, _16, _17, _18, _19, ...) metamacro_head(__VA_ARGS__) + +// metamacro_foreach_cxt expansions +#define metamacro_foreach_cxt0(MACRO, SEP, CONTEXT) +#define metamacro_foreach_cxt1(MACRO, SEP, CONTEXT, _0) MACRO(0, CONTEXT, _0) + +#define metamacro_foreach_cxt2(MACRO, SEP, CONTEXT, _0, _1) \ + metamacro_foreach_cxt1(MACRO, SEP, CONTEXT, _0) \ + SEP \ + MACRO(1, CONTEXT, _1) + +#define metamacro_foreach_cxt3(MACRO, SEP, CONTEXT, _0, _1, _2) \ + metamacro_foreach_cxt2(MACRO, SEP, CONTEXT, _0, _1) \ + SEP \ + MACRO(2, CONTEXT, _2) + +#define metamacro_foreach_cxt4(MACRO, SEP, CONTEXT, _0, _1, _2, _3) \ + metamacro_foreach_cxt3(MACRO, SEP, CONTEXT, _0, _1, _2) \ + SEP \ + MACRO(3, CONTEXT, _3) + +#define metamacro_foreach_cxt5(MACRO, SEP, CONTEXT, _0, _1, _2, _3, _4) \ + metamacro_foreach_cxt4(MACRO, SEP, CONTEXT, _0, _1, _2, _3) \ + SEP \ + MACRO(4, CONTEXT, _4) + +#define metamacro_foreach_cxt6(MACRO, SEP, CONTEXT, _0, _1, _2, _3, _4, _5) \ + metamacro_foreach_cxt5(MACRO, SEP, CONTEXT, _0, _1, _2, _3, _4) \ + SEP \ + MACRO(5, CONTEXT, _5) + +#define metamacro_foreach_cxt7(MACRO, SEP, CONTEXT, _0, _1, _2, _3, _4, _5, _6) \ + metamacro_foreach_cxt6(MACRO, SEP, CONTEXT, _0, _1, _2, _3, _4, _5) \ + SEP \ + MACRO(6, CONTEXT, _6) + +#define metamacro_foreach_cxt8(MACRO, SEP, CONTEXT, _0, _1, _2, _3, _4, _5, _6, _7) \ + metamacro_foreach_cxt7(MACRO, SEP, CONTEXT, _0, _1, _2, _3, _4, _5, _6) \ + SEP \ + MACRO(7, CONTEXT, _7) + +#define metamacro_foreach_cxt9(MACRO, SEP, CONTEXT, _0, _1, _2, _3, _4, _5, _6, _7, _8) \ + metamacro_foreach_cxt8(MACRO, SEP, CONTEXT, _0, _1, _2, _3, _4, _5, _6, _7) \ + SEP \ + MACRO(8, CONTEXT, _8) + +#define metamacro_foreach_cxt10(MACRO, SEP, CONTEXT, _0, _1, _2, _3, _4, _5, _6, _7, _8, _9) \ + metamacro_foreach_cxt9(MACRO, SEP, CONTEXT, _0, _1, _2, _3, _4, _5, _6, _7, _8) \ + SEP \ + MACRO(9, CONTEXT, _9) + +#define metamacro_foreach_cxt11(MACRO, SEP, CONTEXT, _0, _1, _2, _3, _4, _5, _6, _7, _8, _9, _10) \ + metamacro_foreach_cxt10(MACRO, SEP, CONTEXT, _0, _1, _2, _3, _4, _5, _6, _7, _8, _9) \ + SEP \ + MACRO(10, CONTEXT, _10) + +#define metamacro_foreach_cxt12(MACRO, SEP, CONTEXT, _0, _1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11) \ + metamacro_foreach_cxt11(MACRO, SEP, CONTEXT, _0, _1, _2, _3, _4, _5, _6, _7, _8, _9, _10) \ + SEP \ + MACRO(11, CONTEXT, _11) + +#define metamacro_foreach_cxt13(MACRO, SEP, CONTEXT, _0, _1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11, _12) \ + metamacro_foreach_cxt12(MACRO, SEP, CONTEXT, _0, _1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11) \ + SEP \ + MACRO(12, CONTEXT, _12) + +#define metamacro_foreach_cxt14(MACRO, SEP, CONTEXT, _0, _1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11, _12, _13) \ + metamacro_foreach_cxt13(MACRO, SEP, CONTEXT, _0, _1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11, _12) \ + SEP \ + MACRO(13, CONTEXT, _13) + +#define metamacro_foreach_cxt15(MACRO, SEP, CONTEXT, _0, _1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11, _12, _13, _14) \ + metamacro_foreach_cxt14(MACRO, SEP, CONTEXT, _0, _1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11, _12, _13) \ + SEP \ + MACRO(14, CONTEXT, _14) + +#define metamacro_foreach_cxt16(MACRO, SEP, CONTEXT, _0, _1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11, _12, _13, _14, _15) \ + metamacro_foreach_cxt15(MACRO, SEP, CONTEXT, _0, _1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11, _12, _13, _14) \ + SEP \ + MACRO(15, CONTEXT, _15) + +#define metamacro_foreach_cxt17(MACRO, SEP, CONTEXT, _0, _1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11, _12, _13, _14, _15, _16) \ + metamacro_foreach_cxt16(MACRO, SEP, CONTEXT, _0, _1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11, _12, _13, _14, _15) \ + SEP \ + MACRO(16, CONTEXT, _16) + +#define metamacro_foreach_cxt18(MACRO, SEP, CONTEXT, _0, _1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11, _12, _13, _14, _15, _16, _17) \ + metamacro_foreach_cxt17(MACRO, SEP, CONTEXT, _0, _1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11, _12, _13, _14, _15, _16) \ + SEP \ + MACRO(17, CONTEXT, _17) + +#define metamacro_foreach_cxt19(MACRO, SEP, CONTEXT, _0, _1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11, _12, _13, _14, _15, _16, _17, _18) \ + metamacro_foreach_cxt18(MACRO, SEP, CONTEXT, _0, _1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11, _12, _13, _14, _15, _16, _17) \ + SEP \ + MACRO(18, CONTEXT, _18) + +#define metamacro_foreach_cxt20(MACRO, SEP, CONTEXT, _0, _1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11, _12, _13, _14, _15, _16, _17, _18, _19) \ + metamacro_foreach_cxt19(MACRO, SEP, CONTEXT, _0, _1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11, _12, _13, _14, _15, _16, _17, _18) \ + SEP \ + MACRO(19, CONTEXT, _19) + +// metamacro_foreach_cxt_recursive expansions +#define metamacro_foreach_cxt_recursive0(MACRO, SEP, CONTEXT) +#define metamacro_foreach_cxt_recursive1(MACRO, SEP, CONTEXT, _0) MACRO(0, CONTEXT, _0) + +#define metamacro_foreach_cxt_recursive2(MACRO, SEP, CONTEXT, _0, _1) \ + metamacro_foreach_cxt_recursive1(MACRO, SEP, CONTEXT, _0) \ + SEP \ + MACRO(1, CONTEXT, _1) + +#define metamacro_foreach_cxt_recursive3(MACRO, SEP, CONTEXT, _0, _1, _2) \ + metamacro_foreach_cxt_recursive2(MACRO, SEP, CONTEXT, _0, _1) \ + SEP \ + MACRO(2, CONTEXT, _2) + +#define metamacro_foreach_cxt_recursive4(MACRO, SEP, CONTEXT, _0, _1, _2, _3) \ + metamacro_foreach_cxt_recursive3(MACRO, SEP, CONTEXT, _0, _1, _2) \ + SEP \ + MACRO(3, CONTEXT, _3) + +#define metamacro_foreach_cxt_recursive5(MACRO, SEP, CONTEXT, _0, _1, _2, _3, _4) \ + metamacro_foreach_cxt_recursive4(MACRO, SEP, CONTEXT, _0, _1, _2, _3) \ + SEP \ + MACRO(4, CONTEXT, _4) + +#define metamacro_foreach_cxt_recursive6(MACRO, SEP, CONTEXT, _0, _1, _2, _3, _4, _5) \ + metamacro_foreach_cxt_recursive5(MACRO, SEP, CONTEXT, _0, _1, _2, _3, _4) \ + SEP \ + MACRO(5, CONTEXT, _5) + +#define metamacro_foreach_cxt_recursive7(MACRO, SEP, CONTEXT, _0, _1, _2, _3, _4, _5, _6) \ + metamacro_foreach_cxt_recursive6(MACRO, SEP, CONTEXT, _0, _1, _2, _3, _4, _5) \ + SEP \ + MACRO(6, CONTEXT, _6) + +#define metamacro_foreach_cxt_recursive8(MACRO, SEP, CONTEXT, _0, _1, _2, _3, _4, _5, _6, _7) \ + metamacro_foreach_cxt_recursive7(MACRO, SEP, CONTEXT, _0, _1, _2, _3, _4, _5, _6) \ + SEP \ + MACRO(7, CONTEXT, _7) + +#define metamacro_foreach_cxt_recursive9(MACRO, SEP, CONTEXT, _0, _1, _2, _3, _4, _5, _6, _7, _8) \ + metamacro_foreach_cxt_recursive8(MACRO, SEP, CONTEXT, _0, _1, _2, _3, _4, _5, _6, _7) \ + SEP \ + MACRO(8, CONTEXT, _8) + +#define metamacro_foreach_cxt_recursive10(MACRO, SEP, CONTEXT, _0, _1, _2, _3, _4, _5, _6, _7, _8, _9) \ + metamacro_foreach_cxt_recursive9(MACRO, SEP, CONTEXT, _0, _1, _2, _3, _4, _5, _6, _7, _8) \ + SEP \ + MACRO(9, CONTEXT, _9) + +#define metamacro_foreach_cxt_recursive11(MACRO, SEP, CONTEXT, _0, _1, _2, _3, _4, _5, _6, _7, _8, _9, _10) \ + metamacro_foreach_cxt_recursive10(MACRO, SEP, CONTEXT, _0, _1, _2, _3, _4, _5, _6, _7, _8, _9) \ + SEP \ + MACRO(10, CONTEXT, _10) + +#define metamacro_foreach_cxt_recursive12(MACRO, SEP, CONTEXT, _0, _1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11) \ + metamacro_foreach_cxt_recursive11(MACRO, SEP, CONTEXT, _0, _1, _2, _3, _4, _5, _6, _7, _8, _9, _10) \ + SEP \ + MACRO(11, CONTEXT, _11) + +#define metamacro_foreach_cxt_recursive13(MACRO, SEP, CONTEXT, _0, _1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11, _12) \ + metamacro_foreach_cxt_recursive12(MACRO, SEP, CONTEXT, _0, _1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11) \ + SEP \ + MACRO(12, CONTEXT, _12) + +#define metamacro_foreach_cxt_recursive14(MACRO, SEP, CONTEXT, _0, _1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11, _12, _13) \ + metamacro_foreach_cxt_recursive13(MACRO, SEP, CONTEXT, _0, _1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11, _12) \ + SEP \ + MACRO(13, CONTEXT, _13) + +#define metamacro_foreach_cxt_recursive15(MACRO, SEP, CONTEXT, _0, _1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11, _12, _13, _14) \ + metamacro_foreach_cxt_recursive14(MACRO, SEP, CONTEXT, _0, _1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11, _12, _13) \ + SEP \ + MACRO(14, CONTEXT, _14) + +#define metamacro_foreach_cxt_recursive16(MACRO, SEP, CONTEXT, _0, _1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11, _12, _13, _14, _15) \ + metamacro_foreach_cxt_recursive15(MACRO, SEP, CONTEXT, _0, _1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11, _12, _13, _14) \ + SEP \ + MACRO(15, CONTEXT, _15) + +#define metamacro_foreach_cxt_recursive17(MACRO, SEP, CONTEXT, _0, _1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11, _12, _13, _14, _15, _16) \ + metamacro_foreach_cxt_recursive16(MACRO, SEP, CONTEXT, _0, _1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11, _12, _13, _14, _15) \ + SEP \ + MACRO(16, CONTEXT, _16) + +#define metamacro_foreach_cxt_recursive18(MACRO, SEP, CONTEXT, _0, _1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11, _12, _13, _14, _15, _16, _17) \ + metamacro_foreach_cxt_recursive17(MACRO, SEP, CONTEXT, _0, _1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11, _12, _13, _14, _15, _16) \ + SEP \ + MACRO(17, CONTEXT, _17) + +#define metamacro_foreach_cxt_recursive19(MACRO, SEP, CONTEXT, _0, _1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11, _12, _13, _14, _15, _16, _17, _18) \ + metamacro_foreach_cxt_recursive18(MACRO, SEP, CONTEXT, _0, _1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11, _12, _13, _14, _15, _16, _17) \ + SEP \ + MACRO(18, CONTEXT, _18) + +#define metamacro_foreach_cxt_recursive20(MACRO, SEP, CONTEXT, _0, _1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11, _12, _13, _14, _15, _16, _17, _18, _19) \ + metamacro_foreach_cxt_recursive19(MACRO, SEP, CONTEXT, _0, _1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11, _12, _13, _14, _15, _16, _17, _18) \ + SEP \ + MACRO(19, CONTEXT, _19) + +// metamacro_for_cxt expansions +#define metamacro_for_cxt0(MACRO, SEP, CONTEXT) +#define metamacro_for_cxt1(MACRO, SEP, CONTEXT) MACRO(0, CONTEXT) + +#define metamacro_for_cxt2(MACRO, SEP, CONTEXT) \ + metamacro_for_cxt1(MACRO, SEP, CONTEXT) \ + SEP \ + MACRO(1, CONTEXT) + +#define metamacro_for_cxt3(MACRO, SEP, CONTEXT) \ + metamacro_for_cxt2(MACRO, SEP, CONTEXT) \ + SEP \ + MACRO(2, CONTEXT) + +#define metamacro_for_cxt4(MACRO, SEP, CONTEXT) \ + metamacro_for_cxt3(MACRO, SEP, CONTEXT) \ + SEP \ + MACRO(3, CONTEXT) + +#define metamacro_for_cxt5(MACRO, SEP, CONTEXT) \ + metamacro_for_cxt4(MACRO, SEP, CONTEXT) \ + SEP \ + MACRO(4, CONTEXT) + +#define metamacro_for_cxt6(MACRO, SEP, CONTEXT) \ + metamacro_for_cxt5(MACRO, SEP, CONTEXT) \ + SEP \ + MACRO(5, CONTEXT) + +#define metamacro_for_cxt7(MACRO, SEP, CONTEXT) \ + metamacro_for_cxt6(MACRO, SEP, CONTEXT) \ + SEP \ + MACRO(6, CONTEXT) + +#define metamacro_for_cxt8(MACRO, SEP, CONTEXT) \ + metamacro_for_cxt7(MACRO, SEP, CONTEXT) \ + SEP \ + MACRO(7, CONTEXT) + +#define metamacro_for_cxt9(MACRO, SEP, CONTEXT) \ + metamacro_for_cxt8(MACRO, SEP, CONTEXT) \ + SEP \ + MACRO(8, CONTEXT) + +#define metamacro_for_cxt10(MACRO, SEP, CONTEXT) \ + metamacro_for_cxt9(MACRO, SEP, CONTEXT) \ + SEP \ + MACRO(9, CONTEXT) + +#define metamacro_for_cxt11(MACRO, SEP, CONTEXT) \ + metamacro_for_cxt10(MACRO, SEP, CONTEXT) \ + SEP \ + MACRO(10, CONTEXT) + +#define metamacro_for_cxt12(MACRO, SEP, CONTEXT) \ + metamacro_for_cxt11(MACRO, SEP, CONTEXT) \ + SEP \ + MACRO(11, CONTEXT) + +#define metamacro_for_cxt13(MACRO, SEP, CONTEXT) \ + metamacro_for_cxt12(MACRO, SEP, CONTEXT) \ + SEP \ + MACRO(12, CONTEXT) + +#define metamacro_for_cxt14(MACRO, SEP, CONTEXT) \ + metamacro_for_cxt13(MACRO, SEP, CONTEXT) \ + SEP \ + MACRO(13, CONTEXT) + +#define metamacro_for_cxt15(MACRO, SEP, CONTEXT) \ + metamacro_for_cxt14(MACRO, SEP, CONTEXT) \ + SEP \ + MACRO(14, CONTEXT) + +#define metamacro_for_cxt16(MACRO, SEP, CONTEXT) \ + metamacro_for_cxt15(MACRO, SEP, CONTEXT) \ + SEP \ + MACRO(15, CONTEXT) + +#define metamacro_for_cxt17(MACRO, SEP, CONTEXT) \ + metamacro_for_cxt16(MACRO, SEP, CONTEXT) \ + SEP \ + MACRO(16, CONTEXT) + +#define metamacro_for_cxt18(MACRO, SEP, CONTEXT) \ + metamacro_for_cxt17(MACRO, SEP, CONTEXT) \ + SEP \ + MACRO(17, CONTEXT) + +#define metamacro_for_cxt19(MACRO, SEP, CONTEXT) \ + metamacro_for_cxt18(MACRO, SEP, CONTEXT) \ + SEP \ + MACRO(18, CONTEXT) + +#define metamacro_for_cxt20(MACRO, SEP, CONTEXT) \ + metamacro_for_cxt19(MACRO, SEP, CONTEXT) \ + SEP \ + MACRO(19, CONTEXT) + +// metamacro_if_eq expansions +#define metamacro_if_eq0(VALUE) \ + metamacro_concat(metamacro_if_eq0_, VALUE) + +#define metamacro_if_eq0_0(...) __VA_ARGS__ metamacro_consume_ +#define metamacro_if_eq0_1(...) metamacro_expand_ +#define metamacro_if_eq0_2(...) metamacro_expand_ +#define metamacro_if_eq0_3(...) metamacro_expand_ +#define metamacro_if_eq0_4(...) metamacro_expand_ +#define metamacro_if_eq0_5(...) metamacro_expand_ +#define metamacro_if_eq0_6(...) metamacro_expand_ +#define metamacro_if_eq0_7(...) metamacro_expand_ +#define metamacro_if_eq0_8(...) metamacro_expand_ +#define metamacro_if_eq0_9(...) metamacro_expand_ +#define metamacro_if_eq0_10(...) metamacro_expand_ +#define metamacro_if_eq0_11(...) metamacro_expand_ +#define metamacro_if_eq0_12(...) metamacro_expand_ +#define metamacro_if_eq0_13(...) metamacro_expand_ +#define metamacro_if_eq0_14(...) metamacro_expand_ +#define metamacro_if_eq0_15(...) metamacro_expand_ +#define metamacro_if_eq0_16(...) metamacro_expand_ +#define metamacro_if_eq0_17(...) metamacro_expand_ +#define metamacro_if_eq0_18(...) metamacro_expand_ +#define metamacro_if_eq0_19(...) metamacro_expand_ +#define metamacro_if_eq0_20(...) metamacro_expand_ + +#define metamacro_if_eq1(VALUE) metamacro_if_eq0(metamacro_dec(VALUE)) +#define metamacro_if_eq2(VALUE) metamacro_if_eq1(metamacro_dec(VALUE)) +#define metamacro_if_eq3(VALUE) metamacro_if_eq2(metamacro_dec(VALUE)) +#define metamacro_if_eq4(VALUE) metamacro_if_eq3(metamacro_dec(VALUE)) +#define metamacro_if_eq5(VALUE) metamacro_if_eq4(metamacro_dec(VALUE)) +#define metamacro_if_eq6(VALUE) metamacro_if_eq5(metamacro_dec(VALUE)) +#define metamacro_if_eq7(VALUE) metamacro_if_eq6(metamacro_dec(VALUE)) +#define metamacro_if_eq8(VALUE) metamacro_if_eq7(metamacro_dec(VALUE)) +#define metamacro_if_eq9(VALUE) metamacro_if_eq8(metamacro_dec(VALUE)) +#define metamacro_if_eq10(VALUE) metamacro_if_eq9(metamacro_dec(VALUE)) +#define metamacro_if_eq11(VALUE) metamacro_if_eq10(metamacro_dec(VALUE)) +#define metamacro_if_eq12(VALUE) metamacro_if_eq11(metamacro_dec(VALUE)) +#define metamacro_if_eq13(VALUE) metamacro_if_eq12(metamacro_dec(VALUE)) +#define metamacro_if_eq14(VALUE) metamacro_if_eq13(metamacro_dec(VALUE)) +#define metamacro_if_eq15(VALUE) metamacro_if_eq14(metamacro_dec(VALUE)) +#define metamacro_if_eq16(VALUE) metamacro_if_eq15(metamacro_dec(VALUE)) +#define metamacro_if_eq17(VALUE) metamacro_if_eq16(metamacro_dec(VALUE)) +#define metamacro_if_eq18(VALUE) metamacro_if_eq17(metamacro_dec(VALUE)) +#define metamacro_if_eq19(VALUE) metamacro_if_eq18(metamacro_dec(VALUE)) +#define metamacro_if_eq20(VALUE) metamacro_if_eq19(metamacro_dec(VALUE)) + +// metamacro_if_eq_recursive expansions +#define metamacro_if_eq_recursive0(VALUE) \ + metamacro_concat(metamacro_if_eq_recursive0_, VALUE) + +#define metamacro_if_eq_recursive0_0(...) __VA_ARGS__ metamacro_consume_ +#define metamacro_if_eq_recursive0_1(...) metamacro_expand_ +#define metamacro_if_eq_recursive0_2(...) metamacro_expand_ +#define metamacro_if_eq_recursive0_3(...) metamacro_expand_ +#define metamacro_if_eq_recursive0_4(...) metamacro_expand_ +#define metamacro_if_eq_recursive0_5(...) metamacro_expand_ +#define metamacro_if_eq_recursive0_6(...) metamacro_expand_ +#define metamacro_if_eq_recursive0_7(...) metamacro_expand_ +#define metamacro_if_eq_recursive0_8(...) metamacro_expand_ +#define metamacro_if_eq_recursive0_9(...) metamacro_expand_ +#define metamacro_if_eq_recursive0_10(...) metamacro_expand_ +#define metamacro_if_eq_recursive0_11(...) metamacro_expand_ +#define metamacro_if_eq_recursive0_12(...) metamacro_expand_ +#define metamacro_if_eq_recursive0_13(...) metamacro_expand_ +#define metamacro_if_eq_recursive0_14(...) metamacro_expand_ +#define metamacro_if_eq_recursive0_15(...) metamacro_expand_ +#define metamacro_if_eq_recursive0_16(...) metamacro_expand_ +#define metamacro_if_eq_recursive0_17(...) metamacro_expand_ +#define metamacro_if_eq_recursive0_18(...) metamacro_expand_ +#define metamacro_if_eq_recursive0_19(...) metamacro_expand_ +#define metamacro_if_eq_recursive0_20(...) metamacro_expand_ + +#define metamacro_if_eq_recursive1(VALUE) metamacro_if_eq_recursive0(metamacro_dec(VALUE)) +#define metamacro_if_eq_recursive2(VALUE) metamacro_if_eq_recursive1(metamacro_dec(VALUE)) +#define metamacro_if_eq_recursive3(VALUE) metamacro_if_eq_recursive2(metamacro_dec(VALUE)) +#define metamacro_if_eq_recursive4(VALUE) metamacro_if_eq_recursive3(metamacro_dec(VALUE)) +#define metamacro_if_eq_recursive5(VALUE) metamacro_if_eq_recursive4(metamacro_dec(VALUE)) +#define metamacro_if_eq_recursive6(VALUE) metamacro_if_eq_recursive5(metamacro_dec(VALUE)) +#define metamacro_if_eq_recursive7(VALUE) metamacro_if_eq_recursive6(metamacro_dec(VALUE)) +#define metamacro_if_eq_recursive8(VALUE) metamacro_if_eq_recursive7(metamacro_dec(VALUE)) +#define metamacro_if_eq_recursive9(VALUE) metamacro_if_eq_recursive8(metamacro_dec(VALUE)) +#define metamacro_if_eq_recursive10(VALUE) metamacro_if_eq_recursive9(metamacro_dec(VALUE)) +#define metamacro_if_eq_recursive11(VALUE) metamacro_if_eq_recursive10(metamacro_dec(VALUE)) +#define metamacro_if_eq_recursive12(VALUE) metamacro_if_eq_recursive11(metamacro_dec(VALUE)) +#define metamacro_if_eq_recursive13(VALUE) metamacro_if_eq_recursive12(metamacro_dec(VALUE)) +#define metamacro_if_eq_recursive14(VALUE) metamacro_if_eq_recursive13(metamacro_dec(VALUE)) +#define metamacro_if_eq_recursive15(VALUE) metamacro_if_eq_recursive14(metamacro_dec(VALUE)) +#define metamacro_if_eq_recursive16(VALUE) metamacro_if_eq_recursive15(metamacro_dec(VALUE)) +#define metamacro_if_eq_recursive17(VALUE) metamacro_if_eq_recursive16(metamacro_dec(VALUE)) +#define metamacro_if_eq_recursive18(VALUE) metamacro_if_eq_recursive17(metamacro_dec(VALUE)) +#define metamacro_if_eq_recursive19(VALUE) metamacro_if_eq_recursive18(metamacro_dec(VALUE)) +#define metamacro_if_eq_recursive20(VALUE) metamacro_if_eq_recursive19(metamacro_dec(VALUE)) + +// metamacro_take expansions +#define metamacro_take0(...) +#define metamacro_take1(...) metamacro_head(__VA_ARGS__) +#define metamacro_take2(...) metamacro_head(__VA_ARGS__), metamacro_take1(metamacro_tail(__VA_ARGS__)) +#define metamacro_take3(...) metamacro_head(__VA_ARGS__), metamacro_take2(metamacro_tail(__VA_ARGS__)) +#define metamacro_take4(...) metamacro_head(__VA_ARGS__), metamacro_take3(metamacro_tail(__VA_ARGS__)) +#define metamacro_take5(...) metamacro_head(__VA_ARGS__), metamacro_take4(metamacro_tail(__VA_ARGS__)) +#define metamacro_take6(...) metamacro_head(__VA_ARGS__), metamacro_take5(metamacro_tail(__VA_ARGS__)) +#define metamacro_take7(...) metamacro_head(__VA_ARGS__), metamacro_take6(metamacro_tail(__VA_ARGS__)) +#define metamacro_take8(...) metamacro_head(__VA_ARGS__), metamacro_take7(metamacro_tail(__VA_ARGS__)) +#define metamacro_take9(...) metamacro_head(__VA_ARGS__), metamacro_take8(metamacro_tail(__VA_ARGS__)) +#define metamacro_take10(...) metamacro_head(__VA_ARGS__), metamacro_take9(metamacro_tail(__VA_ARGS__)) +#define metamacro_take11(...) metamacro_head(__VA_ARGS__), metamacro_take10(metamacro_tail(__VA_ARGS__)) +#define metamacro_take12(...) metamacro_head(__VA_ARGS__), metamacro_take11(metamacro_tail(__VA_ARGS__)) +#define metamacro_take13(...) metamacro_head(__VA_ARGS__), metamacro_take12(metamacro_tail(__VA_ARGS__)) +#define metamacro_take14(...) metamacro_head(__VA_ARGS__), metamacro_take13(metamacro_tail(__VA_ARGS__)) +#define metamacro_take15(...) metamacro_head(__VA_ARGS__), metamacro_take14(metamacro_tail(__VA_ARGS__)) +#define metamacro_take16(...) metamacro_head(__VA_ARGS__), metamacro_take15(metamacro_tail(__VA_ARGS__)) +#define metamacro_take17(...) metamacro_head(__VA_ARGS__), metamacro_take16(metamacro_tail(__VA_ARGS__)) +#define metamacro_take18(...) metamacro_head(__VA_ARGS__), metamacro_take17(metamacro_tail(__VA_ARGS__)) +#define metamacro_take19(...) metamacro_head(__VA_ARGS__), metamacro_take18(metamacro_tail(__VA_ARGS__)) +#define metamacro_take20(...) metamacro_head(__VA_ARGS__), metamacro_take19(metamacro_tail(__VA_ARGS__)) + +// metamacro_drop expansions +#define metamacro_drop0(...) __VA_ARGS__ +#define metamacro_drop1(...) metamacro_tail(__VA_ARGS__) +#define metamacro_drop2(...) metamacro_drop1(metamacro_tail(__VA_ARGS__)) +#define metamacro_drop3(...) metamacro_drop2(metamacro_tail(__VA_ARGS__)) +#define metamacro_drop4(...) metamacro_drop3(metamacro_tail(__VA_ARGS__)) +#define metamacro_drop5(...) metamacro_drop4(metamacro_tail(__VA_ARGS__)) +#define metamacro_drop6(...) metamacro_drop5(metamacro_tail(__VA_ARGS__)) +#define metamacro_drop7(...) metamacro_drop6(metamacro_tail(__VA_ARGS__)) +#define metamacro_drop8(...) metamacro_drop7(metamacro_tail(__VA_ARGS__)) +#define metamacro_drop9(...) metamacro_drop8(metamacro_tail(__VA_ARGS__)) +#define metamacro_drop10(...) metamacro_drop9(metamacro_tail(__VA_ARGS__)) +#define metamacro_drop11(...) metamacro_drop10(metamacro_tail(__VA_ARGS__)) +#define metamacro_drop12(...) metamacro_drop11(metamacro_tail(__VA_ARGS__)) +#define metamacro_drop13(...) metamacro_drop12(metamacro_tail(__VA_ARGS__)) +#define metamacro_drop14(...) metamacro_drop13(metamacro_tail(__VA_ARGS__)) +#define metamacro_drop15(...) metamacro_drop14(metamacro_tail(__VA_ARGS__)) +#define metamacro_drop16(...) metamacro_drop15(metamacro_tail(__VA_ARGS__)) +#define metamacro_drop17(...) metamacro_drop16(metamacro_tail(__VA_ARGS__)) +#define metamacro_drop18(...) metamacro_drop17(metamacro_tail(__VA_ARGS__)) +#define metamacro_drop19(...) metamacro_drop18(metamacro_tail(__VA_ARGS__)) +#define metamacro_drop20(...) metamacro_drop19(metamacro_tail(__VA_ARGS__)) + +#endif diff --git a/FScriptIBPlugin/English.lproj/FScriptIBPluginInspector.nib/designable.nib b/FScriptIBPlugin/English.lproj/FScriptIBPluginInspector.nib/designable.nib deleted file mode 100644 index 2b920ce..0000000 --- a/FScriptIBPlugin/English.lproj/FScriptIBPluginInspector.nib/designable.nib +++ /dev/null @@ -1,1341 +0,0 @@ - - - - - - 9A292 - 579 - 881.1 - 285.00 - - YES - - - - YES - com.apple.InterfaceBuilderKit - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.AppKitPalettes - - - YES - - IBInspector - - - FirstResponder - - - NSApplication - - - - 256 - - YES - - - 268 - {{157, 179}, {15, 22}} - - - YES - - 68025888 - 131072 - - LucidaGrande - 1.100000e+01 - 3100 - - - 2.200000e+01 - 1.000000e+04 - 1.000000e+00 - YES - YES - - - - - 268 - {{84, 273}, {180, 19}} - - - YES - - -1804468671 - -1874721792 - - - - YES - - 6 - System - textBackgroundColor - - 3 - MQA - - - - 6 - - textColor - - 3 - MAA - - - - - - - 268 - {{81, 206}, {120, 18}} - - - YES - - 67239424 - 131072 - Switch Long Name - - - 1211912703 - 2 - - NSImage - NSSwitch - - - NSSwitch - - - - 200 - 25 - - - - NSTextField - NSTextField - - 268 - {{84, 165}, {67, 14}} - - - YES - - 67239424 - 138412032 - Minimum - - - - 6 - - controlColor - - 3 - MC42NjY2NjY2OQA - - - - 6 - - controlTextColor - - - - - - - 268 - {{175, 226}, {57, 18}} - - - YES - - 67239424 - 131072 - Switch - - - 1211912703 - 2 - - - - - 200 - 25 - - - - - 268 - {{81, 246}, {186, 22}} - - - YES - - -2076049856 - 133120 - - - 109199615 - 1 - - - 1.100000e+01 - 16 - - - - 400 - 75 - - - Item1 - - 1048576 - 2147483647 - 1 - - - NSMenuCheckmark - - - - NSMenuMixedState - - _popUpItemAction: - - - - OtherViews - - YES - - - - Item2 - - 1048576 - 2147483647 - - - _popUpItemAction: - - - - - Item3 - - 1048576 - 2147483647 - - - _popUpItemAction: - - - - - 3 - YES - YES - 1 - - - - - 268 - {{8, 183}, {70, 14}} - - - YES - - 67239488 - 4326400 - Numbers - - LucidaGrande-Bold - 1.100000e+01 - 16 - - - - - - - - NSTextField - NSTextField - - 268 - {{178, 165}, {67, 14}} - - - YES - - 67239424 - 138412032 - Maximum - - - - - - - - - 268 - {{81, 226}, {57, 18}} - - - YES - - 67239424 - 131072 - Switch - - - 1211912703 - 2 - - - - - 200 - 25 - - - - NSTextField - NSTextField - - 268 - {{84, 181}, {67, 19}} - - - YES - - -1804468671 - -2143288320 - - - - - YES - - YES - allowsFloats - attributedStringForZero - formatterBehavior - groupingSeparator - locale - maximum - minimum - negativeFormat - positiveFormat - usesGroupingSeparator - - - YES - - - 0 - - YES - - YES - - - YES - - - - - , - - - - - - -0 - 0 - - - - - - - - - - - - - NaN - - - - - - . - - NO - NO - YES - - - YES - - - - - - NSTextField - NSTextField - - 268 - {{178, 181}, {67, 19}} - - - YES - - -1804468671 - -2143288320 - - - - - YES - - YES - allowsFloats - attributedStringForZero - formatterBehavior - groupingSeparator - locale - maximum - minimum - negativeFormat - positiveFormat - usesGroupingSeparator - - - YES - - - 0 - - - - , - - - - -0 - 0 - - - - - - - - - - - - - - - - - - - - - NO - NO - YES - - - YES - - - - - - - 268 - {{8, 275}, {70, 14}} - - - YES - - 67239488 - 4326400 - Label - - - - - - - - - 268 - - YES - - YES - NSColor pasteboard type - - - {{84, 130}, {86, 27}} - - - YES - YES - - 1 - MC4wNTgxMzA0OTkgMC4wNTU1NDE4OTkgMQA - - - - - 268 - {{251, 179}, {15, 22}} - - - YES - - 68025888 - 131072 - - - 2.200000e+01 - 1.000000e+04 - 1.000000e+00 - YES - YES - - - - {272, 296} - - - NSView - NSResponder - - - - - YES - - - inspectorView - - - - 36 - - - - - YES - - 0 - - YES - - - - - - -2 - - - RmlsZSdzIE93bmVyA - - - -1 - - - First Responder - - - -3 - - - Application - - - 21 - - - YES - - - - - - - - - - - - - - - - - Inspector View - - - 51 - - - YES - - - - Stepper-2 - - - 52 - - - YES - - - - - - - 53 - - - YES - - - - - - - 54 - - - YES - - - - NSTextField1 - - - 55 - - - YES - - - - - - - 56 - - - YES - - - - - - - 57 - - - YES - - - - - - - 58 - - - YES - - - - NSTextField11 - - - 59 - - - YES - - - - - - - 60 - - - YES - - - - NSTextField - - - 61 - - - YES - - - - NSTextField2 - - - 62 - - - YES - - - - - - - 63 - - - - - - 64 - - - YES - - - - Stepper-3 - - - 65 - - - Stepper Cell-3 - - - 66 - - - - - - 67 - - - YES - - - - Text Field Cell-5 - - - 68 - - - - - - 69 - - - YES - - - - Text Field Cell-1 - - - 70 - - - - - - 71 - - - - - - 72 - - - Text Field Cell-3 - - - 73 - - - - - - 74 - - - YES - - - - - - - 75 - - - YES - - - - - - - - - 76 - - - - - - 77 - - - - - - 78 - - - - - - 79 - - - - - - 80 - - - Text Field Cell-6 - - - 81 - - - - - - 82 - - - - - - 83 - - - Stepper Cell-2 - - - - - YES - - YES - -1.IBPluginDependency - -2.IBPluginDependency - -3.IBPluginDependency - -3.ImportedFromIB2 - 21.GUserGuides - 21.IBPluginDependency - 21.IBUserGuides - 21.ImportedFromIB2 - 21.WindowOrigin - 21.editorWindowContentRectSynchronizationRect - 51.IBPluginDependency - 51.Palette - 52.IBPluginDependency - 53.IBPluginDependency - 54.CustomClassName - 54.IBPluginDependency - 54.ImportedFromIB2 - 55.IBPluginDependency - 56.IBPluginDependency - 57.IBPluginDependency - 58.CustomClassName - 58.IBPluginDependency - 58.ImportedFromIB2 - 59.IBPluginDependency - 60.CustomClassName - 60.IBPluginDependency - 60.ImportedFromIB2 - 61.CustomClassName - 61.IBPluginDependency - 61.ImportedFromIB2 - 62.IBPluginDependency - 63.IBPluginDependency - 64.IBPluginDependency - 64.Palette - 65.IBPluginDependency - 66.IBPluginDependency - 67.IBPluginDependency - 68.IBPluginDependency - 69.IBPluginDependency - 70.IBPluginDependency - 71.IBPluginDependency - 72.IBPluginDependency - 73.IBPluginDependency - 74.IBPluginDependency - 75.IBPluginDependency - 75.editorWindowContentRectSynchronizationRect - 76.IBPluginDependency - 77.IBPluginDependency - 78.IBPluginDependency - 79.IBPluginDependency - 80.IBPluginDependency - 81.IBPluginDependency - 82.IBPluginDependency - 83.IBPluginDependency - - - YES - - - - - - YES - - - 9.000000e+01 - 0 - - - - 2.270000e+02 - 0 - - - com.apple.InterfaceBuilder.CocoaPlugin - - YES - - - 8.400000e+01 - 0 - - - - 2.640000e+02 - 0 - - - - 1.780000e+02 - 0 - - - - 4.000000e+00 - 3 - - - - 8.000000e+00 - 0 - - - - 4.000000e+00 - 1 - - - - 1.700000e+02 - 0 - - - - {155, 478} - {{474, 671}, {272, 296}} - - com.yourcompany.AppKitPalettes - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.AppKitPalettes - - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.AppKitPalettes - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.AppKitPalettes - - - com.apple.AppKitPalettes - - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.AppKitPalettes - com.yourcompany.AppKitPalettes - com.apple.AppKitPalettes - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.AppKitPalettes - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.AppKitPalettes - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.AppKitPalettes - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - {{117, 885}, {186, 54}} - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.AppKitPalettes - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.AppKitPalettes - - - - YES - - YES - - - YES - - - - - YES - - YES - - - YES - - - - 83 - - - - AMTokenField - - - NSTokenField - - YES - - YES - - - YES - - - - YES - - YES - - - YES - - - - - - 0 - - YnBsaXN0MDDUAAEAAgADAAQABQAGBGMEZFkkYXJjaGl2ZXJYJG9iamVjdHNYJHZlcnNpb25UJHRvcF8Q -D05TS2V5ZWRBcmNoaXZlcq8RARcABwAIAC0AMQAyADgAOQA9AEEARQBNAAcAXgBvAHsAfACQAJgAmQCc -AKAApgCuAK8AvQC+AMgAyQDKAM8A0QDWANcA2gDdAOAA6ADpAP8BAAEFAQYBBwEKAQYBDgERARQBFwDf -AN8BIgEjASsBLAExATIBNQE6ATsBPgFGAUcBUAFRAVkBWgFxAXUBiQGOAY8BkwGUAZgBmQGaAZwBnQGj -AawBmQGtAbYBmQG3AbsBvQHBAcQBzAHNAdYB1wHaAdsA3wDfAeUB5gHtAe4B9gH3AVACAADfAN8CCgIL -AhYCOAJRAlICUwJUAlUCVgJXAlgCWQJaAlsCXAJdAlwCYwJnAmoCbQJuAnICdQFjAIwCdgJ3AngCewC9 -An4CggKDAoQChwDfAN8CkQKSApsCrQJRAlICUwJUAlUCVgJXAlgCWQJaAlsCXALFAlwCdQCMAnYCdwLJ -AswC0ALYAtkC4ALhAu0C8QLyAvMC9wL6AwIDAwMJAAcApAClAwoDDQMOAxIDOAM7AzwDPgNkA4sDsgOz -A7QDtQO2A7cDuAO5A7oDuwO8A70DvgO/A8ADwQPCA8MA3wPEA8UDxgPHA8gDyQPKA8sDzAPNA84DzwPQ -A9ED0gPTA9QD1QPcA+MECwQzBDQENQQ2BDcEOAQ5BDoEOwQ8BD0EPgQ/BEAEQQRCBEMERARFBEYERwRI -BEkESgFlBEsETARNBE4ETwRQBFEEUgRTBFQEVQRWBFcEWgRdBGBVJG51bGzfEBIACQAKAAsADAANAA4A -DwAQABEAEgATABQAFQAWABcAGAAZABoAGwAcAB0AHgAfACAAIQAiACMAJAAlACYAJwAoACkAKgArACxW -TlNSb290ViRjbGFzc11OU09iamVjdHNLZXlzXxAPTlNDbGFzc2VzVmFsdWVzXU5TQ29ubmVjdGlvbnNb -TlNOYW1lc0tleXNbTlNGcmFtZXdvcmtdTlNDbGFzc2VzS2V5c1pOU09pZHNLZXlzXU5TTmFtZXNWYWx1 -ZXNfEBlOU0FjY2Vzc2liaWxpdHlDb25uZWN0b3JzXU5TRm9udE1hbmFnZXJfEBBOU1Zpc2libGVXaW5k -b3dzXxAPTlNPYmplY3RzVmFsdWVzXxAXTlNBY2Nlc3NpYmlsaXR5T2lkc0tleXNZTlNOZXh0T2lkXxAZ -TlNBY2Nlc3NpYmlsaXR5T2lkc1ZhbHVlc1xOU09pZHNWYWx1ZXOAAoEBFoC/gOuACIDEgAWA6oDsgMWB -AROAAIAGgMOBARQQVYEBFYDt0gAKAC4ALwAwW05TQ2xhc3NOYW1lgASAA1tJQkluc3BlY3RvctIAMwA0 -ADUANlgkY2xhc3Nlc1okY2xhc3NuYW1logA2ADdeTlNDdXN0b21PYmplY3RYTlNPYmplY3RfEBBJQkNv -Y29hRnJhbWV3b3Jr0gAKADoAOwA8Wk5TLm9iamVjdHOAB6DSADMANAA+AD+jAD8AQAA3XE5TTXV0YWJs -ZVNldFVOU1NldNIACgA6AEIAQ4BVoQBEgAnUAAoARgBHAEgASQBKABsATF1OU0Rlc3RpbmF0aW9uWE5T -U291cmNlV05TTGFiZWyAvoAKgAKAvdkATgAKAE8AUABRAFIALgBTAFQAVQBWAFcAWABZAFUAWwBcAF1f -EA9OU05leHRSZXNwb25kZXJaTlNTdWJ2aWV3c1hOU3ZGbGFnc1tOU0ZyYW1lU2l6ZVhOU1dpbmRvd1tO -U0V4dGVuc2lvbltOU1N1cGVydmlld4ALgLyADBEBAIC4gAuAuoC7gLnSAAoAOgBCAGCAVa4AYQBiAGMA -ZABlAGYAZwBoAGkAagBrAGwAbQBugA2AFYAjgDCAPIBAgFmAX4BlgGmAkICrgK+AtdgATgAKAHAAcQBQ -AHIAUgBUAEoAdAB1AHYAdwB4AFUASldOU0ZyYW1lVk5TQ2VsbFlOU0VuYWJsZWSACoAUgA6ADxEBDAmA -C4AKXxAWe3sxNTcsIDE3OX0sIHsxNSwgMjJ9fdoAfQB+AAoAfwCAAIEAggCDAIQAhQCGAIcAiACJAHgA -iwCMAGEAjgB4V05TVmFsdWVbTlNDZWxsRmxhZ3NbTlNJbmNyZW1lbnRcTlNWYWx1ZVdyYXBzWU5TU3Vw -cG9ydFpOU01heFZhbHVlXU5TQ29udHJvbFZpZXdcTlNDZWxsRmxhZ3MyXE5TQXV0b3JlcGVhdCNANgAA -AAAAABIEDf4ggBMjP/AAAAAAAAAJgBAjQMOIAAAAAACADRIAAgAACdQACgCRAJIAkwCUAJUAlgCXVk5T -U2l6ZVZOU05hbWVYTlNmRmxhZ3OAEiNAJgAAAAAAAIAREQwcXEx1Y2lkYUdyYW5kZdIAMwA0AJoAm6IA -mwA3Vk5TRm9udNIAMwA0AJ0AnqQAngCfAHEAN11OU1N0ZXBwZXJDZWxsXE5TQWN0aW9uQ2VsbNIAMwA0 -AKEAoqUAogCjAKQApQA3WU5TU3RlcHBlcllOU0NvbnRyb2xWTlNWaWV3W05TUmVzcG9uZGVy2ABOAAoA -cABxAFAAcgBSAFQASgCoAKkAqgB3AHgAVQBKgAqAIoAWgBcJgAuACl8QFnt7ODQsIDI3M30sIHsxODAs -IDE5fX3ZAH4ACgCwALEAgQCDAIQAsgCzALQAtQC2ALcAiwBiALoAeAC8XxARTlNCYWNrZ3JvdW5kQ29s -b3JaTlNDb250ZW50c18QEU5TRHJhd3NCYWNrZ3JvdW5kW05TVGV4dENvbG9yE/////+Ucf5BgCGAGYAY -gBCAFRP/////kEIEAAmAHlDVAAoAvwDAAMEAwgDDAMQAxQDGAMdXTlNDb2xvclxOU0NvbG9yU3BhY2Vb -TlNDb2xvck5hbWVdTlNDYXRhbG9nTmFtZYAdgBwQBoAbgBpWU3lzdGVtXxATdGV4dEJhY2tncm91bmRD -b2xvctMACgDAAMsAwwDNAM5XTlNXaGl0ZYAdEANCMQDSADMANADQAL+iAL8AN9UACgC/AMAAwQDCAMMA -0wDFANQAx4AdgCCAH4AaWXRleHRDb2xvctMACgDAAMsAwwDNANmAHUIwANIAMwA0ANsA3KQA3ACfAHEA -N18QD05TVGV4dEZpZWxkQ2VsbNIAMwA0AN4A36UA3wCjAKQApQA3W05TVGV4dEZpZWxk2ABOAAoAcABx -AFAAcgBSAFQASgDiAOMA5AB3AHgAVQBKgAqAL4AkgCUJgAuACl8QFnt7ODEsIDIwNn0sIHsxMjAsIDE4 -fX3eAH4ACgDqAOsA7ADtAO4A7wCxAIEAgwDwAIQA8QDyAPMAtwD1APYA9wD4ALcA+gCLAGMA/QCOAP5f -EBNOU0FsdGVybmF0ZUNvbnRlbnRzXU5TTm9ybWFsSW1hZ2VfEBJOU1BlcmlvZGljSW50ZXJ2YWxeTlNC -dXR0b25GbGFnczJfEBBOU0FsdGVybmF0ZUltYWdlXxAPTlNLZXlFcXVpdmFsZW50XxAPTlNQZXJpb2Rp -Y0RlbGF5XU5TQnV0dG9uRmxhZ3MSBAH+AIAugBiAJxAZEAKAK4AYgCaAEIAjEMgSSDxR/18QEFN3aXRj -aCBMb25nIE5hbWXTAAoALgEBAQIBAwEEXk5TUmVzb3VyY2VOYW1lgCqAKIApV05TSW1hZ2VYTlNTd2l0 -Y2jSADMANAEIAQmiAQkAN18QEE5TQ3VzdG9tUmVzb3VyY2XSAAoBCwEMAQ1bTlNJbWFnZU5hbWWALYAs -0gAzADQBDwEQogEQADdfEBNOU0J1dHRvbkltYWdlU291cmNl0gAzADQBEgETpAETAJ8AcQA3XE5TQnV0 -dG9uQ2VsbNIAMwA0ARUBFqUBFgCjAKQApQA3WE5TQnV0dG9u2gBOAAoAcAEYAHEAUAByAFIALgBUAEoB -GgEbARwBHQB3AHgAVQEgAEpfEBNOU09yaWdpbmFsQ2xhc3NOYW1lgAqAO4AzgDKANAmAC4AxgApfEBV7 -ezg0LCAxNjV9LCB7NjcsIDE0fX3YAH4ACgCwALEAgQCDAIQAswDyALUBJQEmAIsAZAEpASqAIYA2gDWA -EIAwEghAAACAOVdNaW5pbXVt1QAKAL8AwADBAMIAwwEuAMUBLwDHgB2AOIA3gBpcY29udHJvbENvbG9y -0wAKAMAAywDDAM0BNIAdSzAuNjY2NjY2NjkA1QAKAL8AwADBAMIAwwDTAMUBOADHgB2AIIA6gBpfEBBj -b250cm9sVGV4dENvbG9y0gAzADQBPAE9ogE9ADdeTlNDbGFzc1N3YXBwZXLYAE4ACgBwAHEAUAByAFIA -VABKAOIBQQFCAHcAeABVAEqACoAvgD2APgmAC4AKXxAWe3sxNzUsIDIyNn0sIHs1NywgMTh9fd4AfgAK -AOoA6wDsAO0A7gDvALEAgQCDAPAAhADxAPIA8wC3APUA9gD3APgAtwFNAIsAZQD9AI4A/oAugBiAJ4Ar -gBiAP4AQgDxWU3dpdGNo2ABOAAoAcABxAFAAcgBSAFQASgFTAVQBVQB3AHgAVQBKgAqAWIBBgEIJgAuA -Cl8QFnt7ODEsIDI0Nn0sIHsxODYsIDIyfX3fEBIAfgAKAVsA6gDsAO0A7gDvAIEBXACDAV0BXgFfAPAA -hAFgAPEBYQFiAWMAtwFlAWMBZgC3AIsBaQBmAM0AeAB4AW0BbgFvAXBfEA9OU0Fycm93UG9zaXRpb25a -TlNNZW51SXRlbV8QD05TUHJlZmVycmVkRWRnZV8QEk5TVXNlc0l0ZW1Gcm9tTWVudV1OU0FsdGVyc1N0 -YXRlVk5TTWVudRP/////hEH+QIBXEAGAGBBLgEOAGIAQgESAQAkJEQGQEgACCACARRIGgkD/1AAKAJEA -kgCTAJQAlQCWAXSAEoAREBDbAXYACgF3AXgBeQF6AXsBfAFgAX0BfgFVAYABgQGCALcBhAGFAYYBbwGI -AWNYTlNUYXJnZXRXTlNUaXRsZV8QEU5TS2V5RXF1aXZNb2RNYXNrWk5TS2V5RXF1aXZdTlNNbmVtb25p -Y0xvY1lOU09uSW1hZ2VcTlNNaXhlZEltYWdlWE5TQWN0aW9uV05TU3RhdGWAQoBMgEYSABAAAIAYEn// -//+AR4BJgEWAS9MACgF3AYoBiwGMAY1bTlNNZW51SXRlbXOAVoBNgE5VSXRlbTHTAAoALgEBAQIBAwGS -gCqAKIBIXxAPTlNNZW51Q2hlY2ttYXJr0wAKAC4BAQECAQMBl4AqgCiASl8QEE5TTWVudU1peGVkU3Rh -dGVfEBFfcG9wVXBJdGVtQWN0aW9uOtIAMwA0AZsBXKIBXAA3Wk90aGVyVmlld3PSAAoAOgBCAZ+AVaMB -aQGhAaKARIBPgFLaAXYACgF3AXgBeQF6AXsBfAFgAX0BVQGAAaYBggC3AYQBhQGGAW8Bq4BCgEyAUIAY -gEeASYBFgFFVSXRlbTLaAXYACgF3AXgBeQF6AXsBfAFgAX0BVQGAAbABggC3AYQBhQGGAW8BtYBCgEyA -U4AYgEeASYBFgFRVSXRlbTPSADMANAG4AbmjAbkBugA3Xk5TTXV0YWJsZUFycmF5V05TQXJyYXnSADMA -NAG8AWCiAWAAN9IAMwA0Ab4Bv6YBvwHAARMAnwBxADdfEBFOU1BvcFVwQnV0dG9uQ2VsbF5OU01lbnVJ -dGVtQ2VsbNIAMwA0AcIBw6YBwwEWAKMApAClADddTlNQb3BVcEJ1dHRvbtgATgAKAHAAcQBQAHIAUgBU -AEoAqAHHAcgAdwB4AFUASoAKgCKAWoBbCYALgApfEBR7ezgsIDE4M30sIHs3MCwgMTR9fdgAfgAKALAA -sQCBAIMAhACzAc4AtQElAdEB0gBnAdQBKhIEAf5AgCGANoBcgF2AWRIAQgQAgDlXTnVtYmVyc9QACgCR -AJIAkwCUAJUB2QF0gBKAXl8QEUx1Y2lkYUdyYW5kZS1Cb2xk2gBOAAoAcAEYAHEAUAByAFIALgBUAEoB -GgHeAd8B4AB3AHgAVQHjAEqACoA7gGKAYYBjCYALgGCACl8QFnt7MTc4LCAxNjV9LCB7NjcsIDE0fX3Y -AH4ACgCwALEAgQCDAIQAswDyALUBJQHpAIsAaAEpASqAIYA2gGSAEIBfgDlXTWF4aW11bdgATgAKAHAA -cQBQAHIAUgBUAEoA4gHxAfIAdwB4AFUASoAKgC+AZoBnCYALgApfEBV7ezgxLCAyMjZ9LCB7NTcsIDE4 -fX3eAH4ACgDqAOsA7ADtAO4A7wCxAIEAgwDwAIQA8QDyAPMAtwD1APYA9wD4ALcB/QCLAGkA/QCOAP6A -LoAYgCeAK4AYgGiAEIBl2gBOAAoAcAEYAHEAUAByAFIALgBUAEoBGgIDAgQCBQB3AHgAVQIIAEqACoA7 -gGyAa4BtCYALgGqACl8QFXt7ODQsIDE4MX0sIHs2NywgMTl9fdoAfgAKALAAsQCBAIMCDACEALIAswC0 -ALUAtgC3AIsAagISAhMAeAC8W05TRm9ybWF0dGVygCGAGYAYgBCAaYBuE/////+AQAQACYAe3xARAAoC -FwIYAhkCGgIbAhwCHQIeAh8CIAIhAiICIwIkAiUCJgInAigCKQIqACYCLAAmAi4CLwIwAHgCMgAmAjQC -NQI2AjZWTlMubmlsWk5TLmRlY2ltYWxWTlMubmFuW05TLnJvdW5kaW5nV05TLnplcm9fEBBOUy5uZWdh -dGl2ZWF0dHJzVk5TLm1heF1OUy5hdHRyaWJ1dGVzXxARTlMucG9zaXRpdmVmb3JtYXRfEA9OUy5hbGxv -d3NmbG9hdHNfEBFOUy5uZWdhdGl2ZWZvcm1hdF8QEE5TLnBvc2l0aXZlYXR0cnNbTlMudGhvdXNhbmRW -TlMubWluXE5TLmxvY2FsaXplZF8QD05TLmhhc3Rob3VzYW5kc4CPgIqAjoCMgACAfIAAgIaAb4B7CYCH -gACAiIB6CAjTAAoCOQA6AjoCOwJGV05TLmtleXOAiaoCPAI9Aj4CPwJAAkECQgJDAkQCRYBwgHGAcoBz -gHSAdYB2gHeAeIB5qgI1AjACLAJKAksCTAJNAi4CMgI0gHqAe4B8gIGAgoCEgIWAhoCHgIhXbWluaW11 -bV5wb3NpdGl2ZUZvcm1hdF8QF2F0dHJpYnV0ZWRTdHJpbmdGb3JaZXJvXxAVdXNlc0dyb3VwaW5nU2Vw -YXJhdG9yVmxvY2FsZV8QEWZvcm1hdHRlckJlaGF2aW9yXGFsbG93c0Zsb2F0c1dtYXhpbXVtXm5lZ2F0 -aXZlRm9ybWF0XxARZ3JvdXBpbmdTZXBhcmF0b3IjAAAAAAAAAABRMNMACgJeAl8CYAJhAmJcTlNBdHRy -aWJ1dGVzWE5TU3RyaW5ngICAfoB90wAKAjkAOgJkAmUCZoB/oKDSADMANAJoAmmiAmkAN1xOU0RpY3Rp -b25hcnnSADMANAJrAmyiAmwAN18QEk5TQXR0cmlidXRlZFN0cmluZxAA0gAKAm8CcAC3XU5TLmlkZW50 -aWZpZXKAg4AY0gAzADQCcwJ0ogJ0ADdYTlNMb2NhbGURA+hSLTBRLNIAMwA0AnkCeqMCegJpADdfEBNO -U011dGFibGVEaWN0aW9uYXJ50gAKAl8CYAJ9gICAi9MACgJeAl8CYAJhAoGAgIB+gI1TTmFOUS7SADMA -NAKFAoajAoYCDAA3XxARTlNOdW1iZXJGb3JtYXR0ZXLaAE4ACgBwARgAcQBQAHIAUgAuAFQASgEaAooC -iwKMAHcAeABVAo8ASoAKgDuAk4CSgJQJgAuAkYAKXxAWe3sxNzgsIDE4MX0sIHs2NywgMTl9fdoAfgAK -ALAAsQCBAIMCDACEALIAswC0ALUAtgC3AIsAawKYAhMAeAC8gCGAGYAYgBCAkICVCYAe3xARAAoCFwIY -AhkCGgIbAhwCHQIeAh8CIAIhAiICIwIkAiUCJgInAp0CKQKfACYCoQAmAqMCpAKlAHgCpwAmAqkCqgI2 -AjaAj4CpgI6AqoAAgKOAAICmgJaAogmAp4AAgKiAoQgI0wAKAjkAOgI6Aq8CuoCJqgKwArECsgKzArQC -tQK2ArcCuAK5gJeAmICZgJqAm4CcgJ2AnoCfgKCqAqoCpQKhAkoCSwLAAk0CowKnAqmAoYCigKOAgYCC -gKWAhYCmgKeAqNMACgJeAl8CYAJhAsiAgIB+gKTSAAoCXwJgAn2AgICL0wAKAl4CXwJgAmECgYCAgH6A -jdgATgAKAHAAcQBQAHIAUgBUAEoAqALTAtQAdwB4AFUASoAKgCKArICtCYALgApfEBR7ezgsIDI3NX0s -IHs3MCwgMTR9fdgAfgAKALAAsQCBAIMAhACzAc4AtQElAtwB0gBsAdQBKoAhgDaAroBdgKuAOVVMYWJl -bNoATgAKAHAAvwLiAFAAcgBSAuMAVABKAuUC5gLnAugAdwB4AFUAeABKW05TRHJhZ1R5cGVzXE5TSXNC -b3JkZXJlZIAKgLSAsoCzgLAJgAsJgArSAAoAOgA7Au+AB6EC8ICxXxAXTlNDb2xvciBwYXN0ZWJvYXJk -IHR5cGVfEBV7ezg0LCAxMzB9LCB7ODYsIDI3fX3TAAoAwAL0AMMBYwL2VU5TUkdCgB1PEBowLjA1ODEz -MDQ5OSAwLjA1NTU0MTg5OSAxANIAMwA0AvgC+aUC+QCjAKQApQA3W05TQ29sb3JXZWxs2ABOAAoAcABx -AFAAcgBSAFQASgB0Av0C/gB3AHgAVQBKgAqAFIC2gLcJgAuACl8QFnt7MjUxLCAxNzl9LCB7MTUsIDIy -fX3aAH0AfgAKAH8AgACBAIIAgwCEAIUAhgCHAIgAiQB4AIsAjABuAI4AeIATCYAQgLUJWnsyNzIsIDI5 -Nn3SADMANAMLAwykAwwApAClADdcTlNDdXN0b21WaWV3XWluc3BlY3RvclZpZXfSADMANAMPAxCjAxAD -EQA3XxAUTlNOaWJPdXRsZXRDb25uZWN0b3JeTlNOaWJDb25uZWN0b3LSAAoAOgMTAxSAwq8QIwGiAxYA -dgIFAcgBaQBpAowAZgL+AGIBoQCqAhIAbQBoAR0AagBhAGUB8gFCAW8B4ABsAG4AYwBKAOQBVQBrAtQC -mABnAGSAUoDAgA+AbYBbgESAZYCUgECAt4AVgE+AF4BugK+AX4A0gGmADYA8gGeAPoBFgGOAq4C1gCOA -CoAlgEKAkICtgJWAWYAw0gAKAC4ALwM6gASAwV1OU0FwcGxpY2F0aW9u0gAzADQDPQG6ogG6ADfSAAoA -OgMTA0CAwq8QIwFvABsAYQBqAGcBbwBKAGsASgBuAEoBbwBiAgUASgBKAGQASgBKAEoAaQBlAVUAaABK -AEoASgAbAGMAZgBKAGwCjABKAEqARYACgA2AaYBZgEWACoCQgAqAtYAKgEWAFYBtgAqACoAwgAqACoAK -gGWAPIBCgF+ACoAKgAqAAoAjgECACoCrgJSACoAK0gAKADoDEwNmgMKvECQBogMWAHYCBQHIAWkAaQKM -AGYC/gBiAaEAqgISABsAbQBoAR0AagBhAGUB8gFCAW8B4ABsAG4AYwBKAOQBVQBrAtQCmABnAGSAUoDA -gA+AbYBbgESAZYCUgECAt4AVgE+AF4BugAKAr4BfgDSAaYANgDyAZ4A+gEWAY4CrgLWAI4AKgCWAQoCQ -gK2AlYBZgDDSAAoAOgMTA42Awq8QJAOOA48DkAORA5IDkwOUA5UDlgOXA5gDmQOaA5sDnAOdA54DnwOg -A6EDogOjA6QDpQOmA6cDqAOpA6oDqwOsA60DrgOvA7ADsYDGgMeAyIDJgMqAy4DMgM2AzoDPgNCA0YDS -gNOA1IDVgNaA14DYgNmA2oDbgNyA3YDegN+A4IDhgOKA44DkgOWA5oDngOiA6V8QEU1lbnUgSXRlbSAo -SXRlbTMpW0FwcGxpY2F0aW9uXlN0ZXBwZXIgQ2VsbC0yXxARVGV4dCBGaWVsZCBDZWxsLTFfEBlUZXh0 -IEZpZWxkIENlbGwgKE51bWJlcnMpXxARTWVudSBJdGVtIChJdGVtMSlfEBZDaGVjayBCb3ggLSAoU3dp -dGNoKS0xXxARVGV4dCBGaWVsZCBDZWxsLTVfEBdQb3AgVXAgQnV0dG9uIC0gKEl0ZW0xKV5TdGVwcGVy -IENlbGwtM1pUZXh0IEZpZWxkXxARTWVudSBJdGVtIChJdGVtMilfEA9UZXh0IEZpZWxkIENlbGxfEBBO -dW1iZXIgRm9ybWF0dGVyXEZpbGUncyBPd25lclpDb2xvciBXZWxsXU5TVGV4dEZpZWxkMTFfEBFUZXh0 -IEZpZWxkIENlbGwtNllTdGVwcGVyLTJfEBRDaGVjayBCb3ggLSAoU3dpdGNoKV8QG0NoZWNrIEJveCBD -ZWxsIC0gKFN3aXRjaCktMV8QGUNoZWNrIEJveCBDZWxsIC0gKFN3aXRjaClUTWVudV8QEVRleHQgRmll -bGQgQ2VsbC0zXxASVGV4dCBGaWVsZCAoTGFiZWwpWVN0ZXBwZXItM18QHkNoZWNrIEJveCAtIChTd2l0 -Y2ggTG9uZyBOYW1lKV5JbnNwZWN0b3IgVmlld18QI0NoZWNrIEJveCBDZWxsIC0gKFN3aXRjaCBMb25n -IE5hbWUpXxAcUG9wIFVwIEJ1dHRvbiBDZWxsIC0gKEl0ZW0xKVxOU1RleHRGaWVsZDJfEBdUZXh0IEZp -ZWxkIENlbGwgKExhYmVsKV8QEk51bWJlciBGb3JtYXR0ZXItMV8QFFRleHQgRmllbGQgKE51bWJlcnMp -XE5TVGV4dEZpZWxkMdIACgA6AxMD14DCpABoAGoAawBkgF+AaYCQgDDSAAoAOgMTA96AwqQB4wIIAo8B -IIBggGqAkYAx0gAKADoDEwPlgMKvECUBogMWAHYCBQHIAWkAaQKMAGYC/gBiAaEAqgISABsAbQBoAR0A -agBhAGUB8gBEAUIBbwHgAGwAbgBjAEoA5AFVAGsC1AKYAGcAZIBSgMCAD4BtgFuARIBlgJSAQIC3gBWA -T4AXgG6AAoCvgF+ANIBpgA2APIBngAmAPoBFgGOAq4C1gCOACoAlgEKAkICtgJWAWYAw0gAKADoDEwQN -gMKvECUEDgQPBBAEEQQSBBMEFAQVBBYEFwQYBBkEGgQbBBwEHQQeBB8EIAQhBCIEIwQkBCUEJgQnBCgE -KQQqBCsELAQtBC4ELwQwBDEEMoDugO+A8IDxgPKA84D0gPWA9oD3gPiA+YD6gPuA/ID9gP6A/4EBAIEB -AYEBAoEBA4EBBIEBBYEBBoEBB4EBCIEBCYEBCoEBC4EBDIEBDYEBDoEBD4EBEIEBEYEBEhBME/////// -///9EFMQRRBJEE4QOxBDEDgQQRA0EE0QUhBGEFQQPxA6EFAQPBAzEDcQRxAkEE8QSBA+EEAQNRAVEFEQ -ShA9EEIQRBA5EDbSAAoAOgBCBFmAVaDSAAoAOgMTBFyAwqDSAAoAOgMTBF+AwqDSADMANARhBGKiBGIA -N15OU0lCT2JqZWN0RGF0YRIAAYag0QRlBGZdSUIub2JqZWN0ZGF0YYABAAgAGQAjACwANQA6AEwCfgKE -As8C1gLdAusC/QMLAxcDIwMxAzwDSgNmA3QDhwOZA7MDvQPZA+YD6APrA+0D7wPxA/MD9QP3A/kD+wP+ -BAAEAgQEBAcECQQMBA4EFwQjBCUEJwQzBDwERQRQBFUEZARtBIAEiQSUBJYElwSgBKcEtAS6BMMExQTI -BMoE2wTpBPIE+gT8BP4FAAUCBScFOQVEBU0FWQViBW4FegV8BX4FgAWDBYUFhwWJBYsFjQWWBZgFtQW3 -BbkFuwW9Bb8FwQXDBcUFxwXJBcsFzQXPBdEF8gX6BgEGCwYNBg8GEQYTBhYGFwYZBhsGNAZdBmUGcQZ9 -BooGlAafBq0GugbHBtAG1QbXBuAG4QbjBuwG7gbzBvQHBQcMBxMHHAceBycHKQcsBzkHQgdHB04HVwdg -B24HeweEB48HmQejB6oHtgfXB9kH2wfdB98H4AfiB+QH/QgiCDYIQQhVCGEIaghsCG4IcAhyCHQIfQh+ -CIAIgQiWCJ4Iqwi3CMUIxwjJCMsIzQjPCNYI7Aj5CQEJAwkFCQgJEQkWCSsJLQkvCTEJMwk9CUoJTAlP -CVgJYQlzCXwJhwmTCbQJtgm4CboJvAm9Cb8JwQnaChMKKQo3CkwKWwpuCoAKkgqgCqUKpwqpCqsKrQqv -CrEKswq1CrcKuQq7CsAK0wrgCu8K8QrzCvUK/QsGCw8LFAsnCzALPAs+C0ALSQtOC2QLbQt2C4MLjAuX -C6ALyQvfC+EL4wvlC+cL6QvqC+wL7gvwDAgMKQwrDC0MLwwxDDMMOAw6DEIMVwxZDFsMXQxfDGwMeQx7 -DIcMnAyeDKAMogykDLcMwAzFDNQM9Qz3DPkM+wz9DP4NAA0CDRsNVA1WDVgNWg1cDV4NYA1iDWQNaw2M -DY4NkA2SDZQNlQ2XDZkNsg39Dg8OGg4sDkEOTw5WDl8OYQ5jDmUOZw5pDmsObQ5vDnEOcg5zDnYOew59 -DoIOkw6VDpcOmQ7GDs8O1w7rDvYPBA8ODxsPJA8sDy4PMA8yDzcPOQ8+D0APQg9ED0YPUw9fD2EPYw9l -D2sPeA96D3wPfg+QD50Pnw+hD6MPtg/KD9MP2A/jD+wP7g/1D/cP+Q/7ECQQJhAoECoQLBAuEDAQMhA0 -EDoQYxBlEGcQaRBrEG0QbxBxEHMQeRCCEIkQmBCgEKkQrhC3EMQQ2BDnEPAQ/RELESwRLhEwETIRNBE1 -ETcRORFQEXERdhF4EXoRfBF+EYARhRGHEY8RoBGiEaQRuBHhEeMR5RHnEekR6xHsEe4R8BHyEgsSLBIu -EjASMhI0EjYSOBJAEmESYxJlEmcSaRJqEmwSbhKGEr8SwRLDEsUSxxLJEssSzRLPEvgS+hL8Ev4TABMC -EwMTBRMHEwkTIRNKE1YTWBNaE1wTXhNgE2ITaxNsE24TtRO8E8cTzhPaE+IT9RP8FAoUHhQwFEQUVxRj -FGoUdxSJFIsUjRSPFJEUkxSVFJcUmRSbFJ0UnhSgFKIUpBSmFKcUqBS1FL0UvxTUFNYU2BTaFNwU3hTg -FOIU5BTmFOgU/RT/FQEVAxUFFQcVCRULFQ0VDxURFRkVKBVCFVoVYRV1FYIVihWZFa0VthW4FcUV0hXb -Fd0V3xXhFe4V8BXxFfIV+xYAFg0WFhYbFjAWMhY7FkkWSxZNFlYWWxZkFmcWahZsFnUWfBaSFpsWnRaf -FqwWrhawFrIWtha4FsEWyBbcFwUXBxcJFwsXDRcPFxAXEhcUFxYXLxdYF1oXXBdeF2AXYhdkF2UXZxeu -F7AXshe0F7YXuBe6F7wXvhfAF8IXwxfFF8cXyRfLF8wXzRfaF9wX8RfzF/UX9xf5F/sX/Rf/GAEYAxgF -GBoYHBgeGCAYIhgkGCYYKBgqGCwYLhg7GD0YPxhBGEoYTBhOGFsYXRhfGGEYghiEGIYYiBiKGIsYjRiP -GKYYxxjJGMsYzRjPGNEY0xjZGQIZDhkbGR0ZHxkhGSMZJRkmGSgZKRkrGTQZNhk5GTsZVRltGXoZgBmC -GZ8ZqBmzGb8Z4BniGeQZ5hnoGekZ6xntGgYaLxoxGjIaNBo2GjcaQhpLGlQaYRpvGngafxqWGqUarhqw -Gvka+xr9Gv8bARsDGwUbBxsJGwsbDRsPGxEbExsVGxcbGRsbGx0bHxshGyMbJRsnGykbKxstGy8bMRsz -GzUbNxs5GzsbPRs/G0gbShtMG1obYxtoG3Ebcxu8G74bwBvCG8QbxhvIG8obzBvOG9Ab0hvUG9Yb2Bva -G9wb3hvgG+Ib5BvmG+gb6hvsG+4b8BvyG/Qb9hv4G/ob/Bv+HAAcAhwLHA0cWBxaHFwcXhxgHGIcZBxm -HGgcahxsHG4ccBxyHHQcdhx4HHocfBx+HIAcghyEHIYciByKHIwcjhyQHJIclByWHJgcmhycHJ4coByp -HKsc9hz4HPoc/Bz+HQAdAh0EHQYdCB0KHQwdDh0QHRIdFB0WHRgdGh0cHR4dIB0iHSQdJh0oHSodLB0u -HTAdMh00HTYdOB06HTwdPh1SHV4dbR2BHZ0dsR3KHd4d+B4HHhIeJh44HkseWB5jHnEehR6PHqYexB7g -HuUe+R8OHxgfOR9IH24fjR+aH7QfyR/gH+0f9h/4IAEgAyAFIAcgCSASIBQgHSAfICEgIyAlIC4gMCB9 -IH8ggSCDIIUghyCJIIsgjSCPIJEgkyCVIJcgmSCbIJ0gnyChIKMgpSCnIKkgqyCtIK8gsSCzILUgtyC5 -ILsgvSC/IMEgwyDFIMcg0CDSIR8hISEjISUhJyEpISshLSEvITEhMyE1ITchOSE7IT0hPyFBIUMhRiFJ -IUwhTyFSIVUhWCFbIV4hYSFkIWchaiFtIXAhcyF2IXkhfCF+IYchiSGLIY0hjyGRIZMhlSGXIZkhmyGd -IZ8hoSGjIaUhpyGpIashrSGvIbEhsyG1IbchuSG7Ib0hvyHBIcMhxSHHIckhyyHUIdYh1yHgIeIh4yHs -Ie4h7yH4If0iDCIRIhYiJAAAAAAAAAICAAAAAAAABGcAAAAAAAAAAAAAAAAAACImA - - - BAtzdHJlYW10eXBlZIHoA4QBQISEhA5OU011dGFibGVBcnJheQCEhAdOU0FycmF5AISECE5TT2JqZWN0 -AIWEAWmBoQKShISECE5TU3RyaW5nAZWEASsBNIaShJeYATWGkoSXmAE2hpKEl5gBN4aShJeYATiGkoSX -mAE5hpKEl5gCMTCGkoSXmAIxMYaShJeYAjEyhpKEl5gCMTOGkoSXmAIxNIaShJeYAjE1hpKEl5gCMTaG -koSXmAIxN4aShJeYAjE5hpKEl5gCMjCGkoSXmAIyMoaShJeYAjIzhpKEl5gCMjSGkqaSpJKkkoSXmAIx -OIaShJeYAjIxhpKEl5gCMjWGkoSXmAIyN4aShJeYAjI5hpKEl5gCMzKGkoSXmAIzMIaShJeYAjMxhpKE -l5gCMzOGkoSXmAIzNYaSsJKEl5gCMzSGkqiSrJKEl5gCMjiGkqSSpJKqkoSXmAIyNoaShJeYAjM2hpKE -l5gCMziGkoSXmAI0MIaShJeYAjQxhpKEl5gCNDKGkoSXmAI0M4aShJeYAjQ0hpKokreStZK1koSXmAIz -OYaSpJKkkqqShJeYAjM3hpKEl5gCNDWGkoSXmAI0OYaShJeYAjUxhpKEl5gCNTOGkrCShJeYAjUyhpKE -l5gCNTSGkrCSs5KEl5gCNTWGkqiSwJKEl5gCNTCGkqSSpJKqkoSXmAI0NoaShJeYAjQ3hpKEl5gCNDiG -koSXmAI1NoaShJeYAjU4hpKoksuSuZK8krWStZKEl5gCNTmGkqSSpJKqkoSXmAI1N4aShJeYAjYwhpKE -l5gCNjKGkoSXmAI2M4aSqZKEl5gCNjSGkoSXmAI2N4aSupKEl5gCNjiGkoSXmAI2OYaSupKEl5gCNzCG -koSXmAI2NYaStZLQkoSXmAI2NoaShJeYAjcxhpLXkoSXmAI3M4aShJeYAjc0hpLXkrWS05LVktCShJeY -Ajc1hpKEl5gCNzaGkoSXmAI3N4aS15K1ktOS1ZLQkoSXmAI3OIaShJeYAjc5hpLSkoSXmAI3MoaSqJLP -krWStZKkkqSSqpKEl5gCNjGGkoSXmAI4MIaShJeYAjgyhpKEl5gCODSGkoSXmAI4NYaS45LCksWShJeY -AjgzhpKkkqSSqpKEl5gCODGGkoSXmAI4NoaShJeYAjkwhpKokumSwpLFkoSXmAI5MYaSpJKkkqqShJeY -Ajg3hpKEl5gCODiGkoSXmAI4OYaShJeYAjkyhpKEl5gCOTSGkqiS75K5kryStZK1koSXmAI5NYaSpJKk -kqqShJeYAjkzhpKEl5gCOTaGkoSXmAMxMDCGkoSXmAMxMDGGkoSXmAMxMDKGkoSXmAMxMDOGkoSXmAMx -MDSGkoSXmAMxMDWGkoSXmAMxMDaGkoSXmAMxMDeGkoSXmAMxMDiGkoSXmAMxMDmGkoSXmAMxMTCGkoSX -mAMxMTGGkoSXmAMxMTKGkoSXmAMxMTOGkoSXmAMxMTSGkoSXmAMxMTaGkoSXmAMxMTiGkoSXmAMxMTmG -koSXmAMxMjCGkoSXmAMxMTeGkoSXmAMxMjOGkrWShJeYAzExNYaShJeYAzEyMYaShJeYAzEyOIaShJeY -AzEyNIaShJeYAzEyNYaShJeYAzEyMoaShJeYAzEyNoaShJeYAzEyN4aShJeYAzEyOYaShJeYAzEzMIaS -hJeYAzEzMYaSBJKEl5gDMTMyhpIQkg+SA5INkgySDpKEl5gDMTMzhpK1kqiS85KukrKSpJKkkqqShJeY -Ajk3hpKEl5gCOTiGkoSXmAI5OYaShJeYAzEzNIaShJeYAzEzOIaShJeYAzEzOYaShJeYAzE0MIaShJeY -AzE0MYaShJeYAzE0MoaShJeYAzE0M4aShJeYAzE0NIaShJeYAzE0NYaShJeYAzE0NoaShJeYAzE0N4aS -hJeYAzE0OIaShJeYAzE0OYaShJeYAzE1MIaShJeYAzE1MYaShJeYAzE1MoaShJeYAzE1M4aSBJKEl5gD -MTU0hpIJkgiSC5KEl5gDMTU1hpKEl5gDMTU3hpKEl5gDMTU4hpKEl5gDMTU2hpKEl5gDMTU5hpKEl5gD -MTYwhpKEl5gDMTYxhpISkoSXmAMxNjKGkhSSBJIwki+SKZItkiySFZIukrWSqJIZkq6SspKkkqSSqpKE -l5gDMTM1hpKEl5gDMTM2hpKEl5gDMTM3hpKEl5gDMTYzhpKEl5gDMTY1hpLlkjaSwpLFkoSXmAMxNjaG -kqSSpJKqkoSXmAMxNjSGkoSXmAMxNjeGkoSXmAMxNjiGkoSXmAMxNjmGkoSXmAMxNzCGkoSXmAMxNzKG -kqSSpJKqkoSXmAMxNzGGkoSXmAMxNzOGkoSXmAMxNzWGkqiSQJKkkqSSqpKEl5gDMTc0hpKqkoSXmAMx -NzeGkqqShJeYAzE3NoaShJeYAzE3OIaShJeYAzE3OYaShJeYAzE4MIaShJeYAzE4MYaShJeYAzE4MoaS -hJeYAzE4M4aSnpKkkoSXmAMxODSGkoSXmAMxODWGkoSXmAMxODaGkoSXmAMxODeGkoSXmAMxODiGkp2S -hJeYAzE4OYaSnpJPkoSXmAMxOTCGkoSXmAMxOTGGkqCST5KEl5gDMTkyhpKEl5gDMTkzhpKikk+ShJeY -AzE5NIaShJeYAzE5NYaShJeYAzE5NoaSppKskreSwJLLks+S45Lpku+S85IZkjaSOpJAkqSST5KEl5gD -MTk3hpKEl5gDMTk4hpKEl5gDMTk5hpKnkqaSpJKEl5gDMjAwhpKEl5gDMjAxhpKEl5gDMjAyhpKtkqyS -pJK1koSXmAMyMDOGkoSXmAMyMDSGkriSt5KkkrWShJeYAzIwNYaShJeYAzIwNoaSwZLAkqSShJeYAzIw -N4aShJeYAzIwOIaShJeYAzIwOYaSzJLLkqSStZKEl5gDMjEwhpKEl5gDMjExhpLQks+SpJK1koSXmAMy -MTKGkoSXmAMyMTOGkuSS45KkkrWShJeYAzIxNIaShJeYAzIxNYaS6pLpkqSShJeYAzIxNoaShJeYAzIx -N4aShJeYAzIxOIaS8JLvkqSStZKEl5gDMjE5hpKEl5gDMjIwhpL0kvOSpJKEl5gDMjIxhpKEl5gDMjIy -hpKEl5gDMjIzhpIakhmSpJKEl5gDMjI0hpKEl5gDMjI1hpKEl5gDMjI2hpI3kjaSpJK1koSXmAMyMjeG -kjqSpJK1koSXmAMyMjiGkoSXmAMyMjmGkkGSQJKkkoSXmAMyMzCGkoSXmAMyMzGGkkGSQJKEl5gDMjMy -hpKEl5gDMjMzhpI3kjaStZKEl5gDMjM0hpKEl5gDMjM1hpIbkhqSGZKEl5gDMjM2hpKEl5gDMjM3hpIb -khqStZKEl5gDMjM4hpKEl5gDMjM5hpL1kvSS85KEl5gDMjQwhpKEl5gDMjQxhpL1kvSStZKEl5gDMjQy -hpLwku+StZKEl5gDMjQzhpLqkumShJeYAzI0NIaShJeYAzI0NYaS5JLjkrWShJeYAzI0NoaShJeYAzI0 -N4aS15LQks+StZKEl5gDMjQ4hpKEl5gDMjQ5hpLektuS0pLXktCStZKEl5gDMjUwhpLekteStZKEl5gD -MjUxhpLbkteStZKEl5gDMjUyhpLSkteStZKEl5gDMjUzhpLMksuStZKEl5gDMjU0hpLBksCShJeYAzI1 -NYaShJeYAzI1NoaSuJK3krWShJeYAzI1N4aSrZKskrWShJeYAzI1OIaSp5KmkoSXmAMyNTmGkoSXmAMy -NjCGkoSXmAMyNjGGkoSXmAMyNjKGkoSXmAMyNjOGkoSXmAMyNjSGkoSXmAMyNjWGkoSXmAMyNjaGkoSX -mAMyNjeGkoSXmAMyNjiGkoSXmAMyNjmGkoSXmAMyNzCGkoSXmAMyNzGGkoSXmAMyNzKGkoSXmAMyNzOG -koSXmAMyNzSGkoSXmAMyNzWGkoSXmAMyNzaGkoSXmAMyNzeGkoSXmAMyNziGkoSXmAMyNzmGkoSXmAMy -ODCGkoSXmAMyODGGkoSXmAMyODKGkoSXmAMyODOGkoSXmAMyODSGkoSXmAMyODWGkoSXmAMyODaGkoSX -mAMyODeGkoSXmAMyODiGkoSXmAMyODmGkoSXmAMyOTCGkoSXmAMyOTGGkoSXmAMyOTKGkoSXmAMyOTOG -koSXmAMyOTSGkoSXmAMyOTWGkoSXmAMyOTaGkoSXmAMyOTeGkoSXmAMyOTiGkoSXmAMyOTmGkoSXmAMz -MDCGkoSXmAMzMDGGkoSXmAMzMDKGkoSXmAMzMDOGkoSXmAMzMDSGkoSXmAMzMDWGkoSXmAMzMDaGkoSX -mAMzMDeGkoSXmAMzMDiGkoSXmAMzMDmGkoSXmAMzMTCGkoSXmAMzMTGGkoSXmAMzMTKGkoSXmAMzMTOG -koSXmAMzMTSGkoSXmAMzMTWGkoSXmAMzMTaGkoSXmAMzMTeGkoSXmAMzMTiGkqSShJeYAzMxOYaSpJKE -l5gDMzIxhpKEl5gDMzIyhpKkkoSXmAMzMjOGkqSShJeYAzMyNIaSpJKEl5gDMzI1hpKkkoSXmAMzMjaG -kqSShJeYAzMyN4aSpJKEl5gDMzI4hpKkkpuSmpKakgmSCZKcksiSCZLskgmSFpIJkjOSCZKEl5gDMzIw -hpKEl5gDMzI5hpKEl5gDMzMwhpKEl5gDMzMxhpKEl5gDMzMyhpKEl5gDMzMzhpKEl5gDMzM0hpKEl5gD -MzM1hpKEl5gDMzM2hpKEl5gDMzM3hpKEl5gDMzM4hpKEl5gDMzM5hpKEl5gDMzQwhpKEl5gDMzQxhpKE -l5gDMzQyhpKEl5gDMzQzhpKEl5gDMzQ0hpKEl5gDMzQ1hpKEl5gDMzQ2hpKEl5gDMzQ3hpKEl5gDMzQ4 -hpKEl5gDMzQ5hpKEl5gDMzUwhpKEl5gDMzUxhpKEl5gDMzUyhpKEl5gDMzUzhpKEl5gDMzU0hpKEl5gD -MzU1hpKEl5gDMzU2hpKEl5gDMzU3hpKEl5gDMzU4hpKEl5gDMzU5hpKEl5gDMzYwhpKEl5gDMzYxhpKE -l5gDMzYyhpKEl5gDMzYzhpKEl5gDMzY0hpKEl5gDMzY1hpKEl5gDMzY2hpKEl5gDMzY3hpKEl5gDMzY4 -hpKEl5gDMzY5hpKEl5gDMzcwhpKEl5gDMzcxhpKEl5gDMzcyhpKEl5gDMzczhpKEl5gDMzc1hpKEl5gD -Mzc3hpKEl5gDMzc4hpKEl5gDMzc5hpKEl5gDMzgwhpKEl5gDMzgxhpKEl5gDMzgyhpKEl5gDMzc0hpKE -l5gDMzc2hpKBEAGShJeYAzM4M4aShJeYATCGkoSXmAExhpKEl5gBMoaShJeYATOGhg - diff --git a/FScriptIBPlugin/English.lproj/FScriptIBPluginInspector.nib/keyedobjects.nib b/FScriptIBPlugin/English.lproj/FScriptIBPluginInspector.nib/keyedobjects.nib deleted file mode 100644 index 2e58838..0000000 Binary files a/FScriptIBPlugin/English.lproj/FScriptIBPluginInspector.nib/keyedobjects.nib and /dev/null differ diff --git a/FScriptIBPlugin/English.lproj/FScriptIBPluginInspector.xib b/FScriptIBPlugin/English.lproj/FScriptIBPluginInspector.xib new file mode 100644 index 0000000..d4f4891 --- /dev/null +++ b/FScriptIBPlugin/English.lproj/FScriptIBPluginInspector.xib @@ -0,0 +1,1048 @@ + + + + 1060 + 14A379a + 941 + 1343.13 + 755.00 + + com.apple.InterfaceBuilder.CocoaPlugin + 941 + + + YES + + + YES + com.apple.InterfaceBuilder.CocoaPlugin + + + PluginDependencyRecalculationVersion + + + + YES + + IBInspector + + + FirstResponder + + + NSApplication + + + + 256 + + YES + + + 268 + {{157, 179}, {15, 22}} + + YES + + 67895328 + 131072 + + .HelveticaNeueDeskInterface-Regular + 11 + 3088 + + + 22 + 10000 + 1 + YES + YES + + NO + + + + 268 + {{84, 273}, {180, 19}} + + YES + + -1804599231 + -1874721792 + + + + YES + + 6 + System + textBackgroundColor + + 3 + MQA + + + + 6 + System + textColor + + 3 + MAA + + + + NO + 1 + + + + 268 + {{81, 206}, {120, 18}} + + YES + + 67108864 + 131072 + Switch Long Name + + + 1211912448 + 2 + + NSImage + NSSwitch + + + NSSwitch + + + + 200 + 25 + + NO + + + + 268 + {{84, 165}, {67, 14}} + + YES + + 67108864 + 138412032 + Minimum + + + + 6 + System + controlColor + + 3 + MC42NjY2NjY2NjY3AA + + + + 6 + System + controlTextColor + + + + NO + 1 + + + + 268 + {{175, 226}, {57, 18}} + + YES + + 67108864 + 131072 + Switch + + + 1211912448 + 2 + + + + + 200 + 25 + + NO + + + + 268 + {{81, 246}, {186, 22}} + + YES + + -2076180416 + 133120 + + + 109199360 + 1 + + LucidaGrande + 11 + 16 + + + + 400 + 75 + + + Item1 + + 1048576 + 2147483647 + 1 + + NSImage + NSMenuCheckmark + + + NSImage + NSMenuMixedState + + _popUpItemAction: + + + YES + + OtherViews + + YES + + + + Item2 + + 1048576 + 2147483647 + + + _popUpItemAction: + + + + + Item3 + + 1048576 + 2147483647 + + + _popUpItemAction: + + + + + 3 + YES + YES + 1 + + NO + + + + 268 + {{8, 183}, {70, 14}} + + YES + + 67108928 + 4326400 + Numbers + + .HelveticaNeueDeskInterface-Bold + 11 + 3344 + + + + + + NO + 1 + + + + 268 + {{178, 165}, {67, 14}} + + YES + + 67108864 + 138412032 + Maximum + + + + + + NO + 1 + + + + 268 + {{81, 226}, {57, 18}} + + YES + + 67108864 + 131072 + Switch + + + 1211912448 + 2 + + + + + 200 + 25 + + NO + + + + 268 + {{84, 181}, {67, 19}} + + YES + + -1804599231 + -2143288320 + + + + + YES + + YES + allowsFloats + attributedStringForZero + formatterBehavior + groupingSeparator + locale + maximum + minimum + negativeFormat + positiveFormat + usesGroupingSeparator + + + YES + + + 0 + + YES + + YES + + + YES + + + + + , + + + + + + -0 + 0 + + + + 0 + -0 + + + + + + + + NaN + + + + + + . + , + NO + NO + YES + + + YES + + + + NO + 1 + + + + 268 + {{178, 181}, {67, 19}} + + YES + + -1804599231 + -2143288320 + + + + + YES + + YES + allowsFloats + attributedStringForZero + formatterBehavior + groupingSeparator + locale + maximum + minimum + negativeFormat + positiveFormat + usesGroupingSeparator + + + YES + + + 0 + + + + , + + + + -0 + 0 + + + + 0 + -0 + + + + + + + + NaN + + + + + + . + , + NO + NO + YES + + + YES + + + + NO + 1 + + + + 268 + {{8, 275}, {70, 14}} + + YES + + 67108928 + 4326400 + Label + + + + + + NO + 1 + + + + 268 + + YES + + YES + NSColor pasteboard type + + + {{84, 130}, {86, 27}} + + YES + NO + YES + + 1 + MC4wNTgxMzA0OTkgMC4wNTU1NDE4OTkgMQA + + + + + 268 + {{251, 179}, {15, 22}} + + YES + + 67895328 + 131072 + + + 22 + 10000 + 1 + YES + YES + + NO + + + {272, 296} + NSView + NSResponder + + + + + YES + + + inspectorView + + + + 36 + + + + + YES + + 0 + + + + + + -2 + + + File's Owner + + + -1 + + + First Responder + + + -3 + + + Application + + + 21 + + + YES + + + + + + + + + + + + + + + + + Inspector View + + + 51 + + + YES + + + + Stepper-2 + + + 52 + + + YES + + + + + + 53 + + + YES + + + + + + 54 + + + YES + + + + NSTextField1 + + + 55 + + + YES + + + + + + 56 + + + YES + + + + + + 57 + + + YES + + + + + + 58 + + + YES + + + + NSTextField11 + + + 59 + + + YES + + + + + + 60 + + + YES + + + + NSTextField + + + 61 + + + YES + + + + NSTextField2 + + + 62 + + + YES + + + + + + 63 + + + + + 64 + + + YES + + + + Stepper-3 + + + 65 + + + Stepper Cell-3 + + + 66 + + + + + 67 + + + YES + + + + Text Field Cell-5 + + + 68 + + + + + 69 + + + YES + + + + Text Field Cell-1 + + + 70 + + + + + 71 + + + + + 72 + + + Text Field Cell-3 + + + 73 + + + + + 74 + + + YES + + + + + + 75 + + + YES + + + + + + + + 76 + + + + + 77 + + + + + 78 + + + + + 79 + + + + + 80 + + + Text Field Cell-6 + + + 81 + + + + + 82 + + + + + 83 + + + Stepper Cell-2 + + + + + YES + + YES + -3.IBPluginDependency + -3.ImportedFromIB2 + 21.GUserGuides + 21.IBPluginDependency + 21.IBUserGuides + 21.ImportedFromIB2 + 21.WindowOrigin + 21.editorWindowContentRectSynchronizationRect + 51.IBPluginDependency + 51.Palette + 52.IBPluginDependency + 53.IBPluginDependency + 54.IBPluginDependency + 54.ImportedFromIB2 + 55.IBPluginDependency + 56.IBPluginDependency + 57.IBPluginDependency + 58.IBPluginDependency + 58.ImportedFromIB2 + 59.IBPluginDependency + 60.IBPluginDependency + 60.ImportedFromIB2 + 61.IBPluginDependency + 61.ImportedFromIB2 + 62.IBPluginDependency + 63.IBPluginDependency + 64.IBPluginDependency + 64.Palette + 65.IBPluginDependency + 66.IBPluginDependency + 67.IBPluginDependency + 68.IBPluginDependency + 69.IBPluginDependency + 70.IBPluginDependency + 71.IBPluginDependency + 72.IBPluginDependency + 73.IBPluginDependency + 74.IBPluginDependency + 75.IBPluginDependency + 75.editorWindowContentRectSynchronizationRect + 76.IBPluginDependency + 77.IBPluginDependency + 78.IBPluginDependency + 79.IBPluginDependency + 80.IBPluginDependency + 81.IBPluginDependency + 82.IBPluginDependency + 83.IBPluginDependency + + + YES + com.apple.InterfaceBuilder.CocoaPlugin + + + YES + + + 90 + 0 + + + + 227 + 0 + + + com.apple.InterfaceBuilder.CocoaPlugin + + YES + + + 84 + 0 + + + + 264 + 0 + + + + 178 + 0 + + + + 4 + 3 + + + + 8 + 0 + + + + 4 + 1 + + + + 170 + 0 + + + + {155, 478} + {{474, 671}, {272, 296}} + com.apple.InterfaceBuilder.CocoaPlugin + com.yourcompany.AppKitPalettes + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.yourcompany.AppKitPalettes + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + {{117, 885}, {186, 54}} + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + + + + YES + + + YES + + + + + YES + + + YES + + + + 83 + + + 0 + IBCocoaFramework + + com.apple.InterfaceBuilder.CocoaPlugin.InterfaceBuilder3 + + + YES + + 3 + + YES + + YES + NSMenuCheckmark + NSMenuMixedState + NSSwitch + + + YES + {12, 12} + {10, 2} + {15, 15} + + + + diff --git a/FScriptIBPlugin/English.lproj/FScriptIBPluginLibrary.nib/keyedobjects.nib b/FScriptIBPlugin/English.lproj/FScriptIBPluginLibrary.nib/keyedobjects.nib deleted file mode 100644 index e55f519..0000000 Binary files a/FScriptIBPlugin/English.lproj/FScriptIBPluginLibrary.nib/keyedobjects.nib and /dev/null differ diff --git a/FScriptIBPlugin/English.lproj/FScriptIBPluginLibrary.nib/designable.nib b/FScriptIBPlugin/English.lproj/FScriptIBPluginLibrary.xib similarity index 78% rename from FScriptIBPlugin/English.lproj/FScriptIBPluginLibrary.nib/designable.nib rename to FScriptIBPlugin/English.lproj/FScriptIBPluginLibrary.xib index c6de9d5..5f06c33 100644 --- a/FScriptIBPlugin/English.lproj/FScriptIBPluginLibrary.nib/designable.nib +++ b/FScriptIBPlugin/English.lproj/FScriptIBPluginLibrary.xib @@ -1,31 +1,38 @@ - + 1050 - 9G55 - 677 - 949.43 - 353.00 + 14A379a + 941 + 1343.13 + 755.00 + + YES + + YES + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.IBSDKPlugin + org.fscript.FScriptIBPluginFramework + + + YES + 941 + 941 + 2.1 + + YES - - YES - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilderKit com.apple.InterfaceBuilder.IBSDKPlugin + com.apple.InterfaceBuilder.CocoaPlugin org.fscript.FScriptIBPluginFramework - YES - - YES - - - YES - + PluginDependencyRecalculationVersion + YES @@ -39,7 +46,7 @@ NSApplication - + 268 YES @@ -56,6 +63,9 @@ 274 + + YES + {88, 66} NO @@ -86,14 +96,15 @@ {{20, 198}, {90, 80}} + 53C781D8-3B5C-4138-B642-034072DEADC0 FSInterpreter View 53C781D8-3B5C-4138-B642-034072DEADC0 Gives access to an F-Script environment through a command line interface. The FSInterpreterView class is a view object that contains and provides access to a complete F-Script environment through a command line interface similar to the one found in the F-Script application. - + YES - + YES NSFont NSParagraphStyle @@ -102,13 +113,13 @@ YES LucidaGrande - 1.200000e+01 + 12 16 3 - 3.600000e+01 - + 36 + YES 1 @@ -123,6 +134,7 @@ 0 + NO @@ -132,6 +144,9 @@ 274 + + YES + {233, 141} NO @@ -164,7 +179,7 @@ 256 YES - + YES Apple PDF pasteboard type Apple PICT pasteboard type @@ -178,7 +193,7 @@ YES - 537001472 + 536870912 33554432 NSImage @@ -189,6 +204,7 @@ 1 NO + NO YES @@ -201,7 +217,7 @@ 274 YES - + YES Apple PDF pasteboard type Apple PICT pasteboard type @@ -215,30 +231,32 @@ YES - 604110336 + 603979776 33554432 - LucidaGrande - 1.300000e+01 - 1044 + .HelveticaNeueDeskInterface-Regular + 13 + 1040 0 0 1 NO + NO YES {{20, 26}, {113, 94}} + F3DD5E3B-B08A-4E12-924A-1A8E17497AC6 F-Script Menu Item F3DD5E3B-B08A-4E12-924A-1A8E17497AC6 Defines an F-Script menu item and its complete self-contained F-Script environment. FScriptMenuItem, a subclass of NSMenuItem, lets you easily embed F-Script into an application. An F-Script menu item contains and gives access to a complete F-Script environment. - + @@ -247,10 +265,10 @@ 2 + NO {379, 305} - NSView @@ -267,6 +285,7 @@ NSMenuMixedState submenuAction: + F-Script @@ -364,28 +383,26 @@ YES 0 - - YES - + -2 - - RmlsZSdzIE93bmVyA + + File's Owner -1 - + First Responder -3 - + Application @@ -398,7 +415,7 @@ - + Library Objects @@ -464,7 +481,7 @@ YES - + F-Script Menu Item (F-Script) @@ -497,10 +514,8 @@ YES - + YES - -1.IBPluginDependency - -2.IBPluginDependency -3.IBPluginDependency 18.IBPluginDependency 18.notes @@ -537,9 +552,7 @@ YES com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilderKit - com.apple.InterfaceBuilderKit - com.apple.InterfaceBuilderKit + com.apple.InterfaceBuilder.IBSDKPlugin SWYgeW91IHdvdWxkIGxpa2UgeW91ciB2aWV3IHRvIGFuaW1hdGUgZnJvbSBhIHNtYWxsLCBpY29uaWMg cmVwcmVzZW50YXRpb24sIHRvIGEgZmluYWwgcmVwcmVzZW50YXRpb24sIGNvbm5lY3QgdGhpcyB2aWV3 @@ -550,38 +563,36 @@ dWxkIGNvbm5lY3QgdGhlIHJlcHJlc2VudGVkT2JqZWN0IG91dGxldCBvZiB0aGlzIHZpZXcgdG8gYW4g b2JqZWN0IHRvIGRlcG9zaXQuA YES - - YES - + YES - + org.fscript.FScriptIBPluginFramework org.fscript.FScriptIBPluginFramework FScriptMenuItem {{139, 652}, {128, 128}} com.apple.InterfaceBuilder.CocoaPlugin - + {{0, 856}, {128, 128}} {{0, 921}, {198, 63}} com.apple.InterfaceBuilder.CocoaPlugin - + {{63, 885}, {198, 63}} com.apple.InterfaceBuilder.CocoaPlugin - + com.apple.InterfaceBuilder.CocoaPlugin - + com.apple.InterfaceBuilder.CocoaPlugin - + com.apple.InterfaceBuilder.CocoaPlugin - + com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.IBSDKPlugin com.apple.InterfaceBuilder.CocoaPlugin - + com.apple.InterfaceBuilder.CocoaPlugin {{252, 573}, {379, 305}} com.apple.InterfaceBuilder.CocoaPlugin @@ -591,9 +602,7 @@ b2JqZWN0IHRvIGRlcG9zaXQuA YES - - YES - + YES @@ -601,9 +610,7 @@ b2JqZWN0IHRvIGRlcG9zaXQuA YES - - YES - + YES @@ -627,7 +634,7 @@ b2JqZWN0IHRvIGRlcG9zaXQuA NSView YES - + YES object1 object2 @@ -652,6 +659,60 @@ b2JqZWN0IHRvIGRlcG9zaXQuA id + + YES + + YES + object1 + object2 + object3 + object4 + object5 + object6 + object7 + object8 + object9 + + + YES + + object1 + id + + + object2 + id + + + object3 + id + + + object4 + id + + + object5 + id + + + object6 + id + + + object7 + id + + + object8 + id + + + object9 + id + + + IBProjectSource FScriptFramework/FSInterpreterViewIBHeader.h @@ -677,7 +738,7 @@ b2JqZWN0IHRvIGRlcG9zaXQuA NSMenuItem YES - + YES openObjectBrowser: showConsole: @@ -692,9 +753,38 @@ b2JqZWN0IHRvIGRlcG9zaXQuA id + + YES + + YES + openObjectBrowser: + showConsole: + showPreferencePanel: + updatePreference: + + + YES + + openObjectBrowser: + id + + + showConsole: + id + + + showPreferencePanel: + id + + + updatePreference: + id + + + YES - + YES fontSizeUI interpreterView @@ -705,6 +795,25 @@ b2JqZWN0IHRvIGRlcG9zaXQuA FSInterpreterView + + YES + + YES + fontSizeUI + interpreterView + + + YES + + fontSizeUI + NSTextField + + + interpreterView + FSInterpreterView + + + IBProjectSource FScriptFramework/FScriptMenuItem.h @@ -756,7 +865,32 @@ b2JqZWN0IHRvIGRlcG9zaXQuA 0 + IBCocoaFramework + + com.apple.InterfaceBuilder.CocoaPlugin.macosx + + + + com.apple.InterfaceBuilder.CocoaPlugin.InterfaceBuilder3 + + + YES ../../FScript.xcodeproj 3 + + YES + + YES + FScriptMenuItem + NSMenuCheckmark + NSMenuMixedState + + + YES + {128, 128} + {12, 12} + {10, 2} + + diff --git a/FScriptIBPlugin/FSInterpreterView.classdescription b/FScriptIBPlugin/FSInterpreterView.classdescription deleted file mode 100644 index 8fe13ff..0000000 --- a/FScriptIBPlugin/FSInterpreterView.classdescription +++ /dev/null @@ -1,5 +0,0 @@ -{ - ClassName = FSInterpreterView; - SuperClass = NSView; - Outlets = {"object1" = "id"; "object2" = "id"; "object2" = "id"; "object3" = "id"; "object4" = "id"; "object5" = "id"; "object6" = "id"; "object7" = "id"; "object8" = "id"; "object9" = "id";}; -} diff --git a/FScriptIBPlugin/FScriptIBPlugin-Info.plist b/FScriptIBPlugin/FScriptIBPlugin-Info.plist deleted file mode 100644 index a96d633..0000000 --- a/FScriptIBPlugin/FScriptIBPlugin-Info.plist +++ /dev/null @@ -1,22 +0,0 @@ - - - - - CFBundleDevelopmentRegion - English - CFBundleExecutable - FScriptIBPlugin - CFBundleIdentifier - org.fscript.FScriptIBPluginFramework - CFBundleInfoDictionaryVersion - 6.0 - CFBundlePackageType - FMWK - CFBundleSignature - ???? - CFBundleVersion - 2.1 - NSPrincipalClass - FScriptIBPlugin - - diff --git a/FScriptIBPlugin/FScriptIBPlugin.h b/FScriptIBPlugin/FScriptIBPlugin.h deleted file mode 100644 index a17fe52..0000000 --- a/FScriptIBPlugin/FScriptIBPlugin.h +++ /dev/null @@ -1,10 +0,0 @@ -/* FScriptIBPlugin.h Copyright (c) 2007-2009 Philippe Mougin. */ -/* This software is open source. See the license. */ - -#import - -@interface FScriptIBPlugin : IBPlugin { - -} - -@end diff --git a/FScriptIBPlugin/FScriptIBPlugin.m b/FScriptIBPlugin/FScriptIBPlugin.m deleted file mode 100644 index cdcd8bd..0000000 --- a/FScriptIBPlugin/FScriptIBPlugin.m +++ /dev/null @@ -1,30 +0,0 @@ -/* FScriptIBPlugin.m Copyright (c) 2007-2009 Philippe Mougin. */ -/* This software is open source. See the license. */ - -#import "FScriptIBPlugin.h" - -@implementation FScriptIBPlugin - -- (NSString *)label { return @"F-Script"; } - -- (NSArray *)libraryNibNames { return [NSArray arrayWithObject:@"FScriptIBPluginLibrary"]; } - -/* -- (void)document:(IBDocument *)document didAddDraggedObjects:(NSArray *)roots fromDraggedLibraryView:(NSView *)view; -{ - if (view == fsMenuItemView) - { - - } -//- (void)connectAction:(NSString *)selectorName ofSourceObject:(id)source toDestinationObject:(id)destination; -} -*/ - - -- (NSArray*)requiredFrameworks -{ - NSBundle *frameworkBundle = [NSBundle bundleWithPath:[[NSBundle bundleForClass:[self class]] pathForResource:@"FScript" ofType:@"framework"]]; - return [NSArray arrayWithObject:frameworkBundle]; -} - -@end diff --git a/FScriptIBPlugin/FScriptIBPluginInspector.h b/FScriptIBPlugin/FScriptIBPluginInspector.h deleted file mode 100644 index fc29d57..0000000 --- a/FScriptIBPlugin/FScriptIBPluginInspector.h +++ /dev/null @@ -1,9 +0,0 @@ -/* FScriptIBPluginInspector.h Copyright (c) 2007-2009 Philippe Mougin. */ -/* This software is open source. See the license. */ - -#import - -@interface FScriptIBPluginInspector : IBInspector { - -} -@end diff --git a/FScriptIBPlugin/FScriptIBPluginInspector.m b/FScriptIBPlugin/FScriptIBPluginInspector.m deleted file mode 100644 index ba9e4a3..0000000 --- a/FScriptIBPlugin/FScriptIBPluginInspector.m +++ /dev/null @@ -1,17 +0,0 @@ -/* FScriptIBPluginInspector.m Copyright (c) 2007-2009 Philippe Mougin. */ -/* This software is open source. See the license. */ - -#import "FScriptIBPluginInspector.h" - -@implementation FScriptIBPluginInspector - -- (NSString *)viewNibName { - return @"FScriptIBPluginInspector"; -} - -- (void)refresh { - // Synchronize your inspector's content view with the currently - // selected objects -} - -@end diff --git a/FScriptIBPlugin/FScriptIBPlugin_Prefix.pch b/FScriptIBPlugin/FScriptIBPlugin_Prefix.pch deleted file mode 100644 index 4357d14..0000000 --- a/FScriptIBPlugin/FScriptIBPlugin_Prefix.pch +++ /dev/null @@ -1,8 +0,0 @@ -// -// Prefix header for all source files of the 'FScriptIBPlugin' target in the 'FScriptIBPlugin' project. -// - -#ifdef __OBJC__ - #import - #import -#endif diff --git a/FScriptIBPlugin/FScriptMenuItem.png b/FScriptIBPlugin/FScriptMenuItem.png deleted file mode 100644 index 0453a11..0000000 Binary files a/FScriptIBPlugin/FScriptMenuItem.png and /dev/null differ diff --git a/FScriptIBPlugin/version.plist b/FScriptIBPlugin/version.plist deleted file mode 100644 index c8a8294..0000000 --- a/FScriptIBPlugin/version.plist +++ /dev/null @@ -1,16 +0,0 @@ - - - - - BuildVersion - 1 - CFBundleShortVersionString - 2.0 - CFBundleVersion - 2.0 - ProjectName - IBXcodeIntegration - SourceVersion - 130000 - - diff --git a/Info-FSTest2_2.plist b/Info-FSTest2_2.plist deleted file mode 100644 index 9dbe739..0000000 --- a/Info-FSTest2_2.plist +++ /dev/null @@ -1,32 +0,0 @@ - - - - - CFBundleDevelopmentRegion - English - CFBundleExecutable - - CFBundleGetInfoString - - CFBundleIconFile - - CFBundleIdentifier - - CFBundleInfoDictionaryVersion - 6.0 - CFBundleName - - CFBundlePackageType - APPL - CFBundleShortVersionString - - CFBundleSignature - ???? - CFBundleVersion - 0.0.1d1 - NSMainNibFile - MainMenu - NSPrincipalClass - NSApplication - - diff --git a/JGAdditions/FSObjectBrowserToolbar.m b/JGAdditions/FSObjectBrowserToolbar.m index a0520f3..abc3883 100644 --- a/JGAdditions/FSObjectBrowserToolbar.m +++ b/JGAdditions/FSObjectBrowserToolbar.m @@ -247,7 +247,7 @@ - (NSArray *) toolbarDefaultItemIdentifiers:(NSToolbar *) toolbar // Required delegate method Returns the ordered list of items to be shown in the toolbar by default // If during the toolbar's initialization, no overriding values are found in the user defaults, or if the // user chooses to revert to the default items self set will be used - return [NSArray arrayWithObjects: @"Workspace", @"Classes", @"Select View", @"Name", @"Inspect", @"Browse", @"Refresh", @"Filter", nil]; + return [NSArray arrayWithObjects: @"Filter", @"Workspace", @"Classes", @"Select View", @"Name", @"Inspect", @"Browse", @"Refresh", nil]; } - (NSArray *) toolbarAllowedItemIdentifiers: (NSToolbar *) toolbar @@ -305,8 +305,13 @@ - (void) customBlockMenuAction:(id)sender // id selectedObject = [self selectedObject]; id block=[interpreter objectForIdentifier:title found:&found]; if (!found) { - NSInteger choice=NSRunAlertPanel(@"Undefined block", [NSString stringWithFormat:@"Could not find block with name %@", title], @"Cancel", @"Remove Menu Entry", nil); - if (choice) { + NSAlert *alert = [[NSAlert alloc] init]; + [alert addButtonWithTitle:@"Cancel"]; //default + [alert addButtonWithTitle:@"Remove Menu Entry"]; //alternate + [alert setMessageText:@"Undefined block"]; + [alert setInformativeText:[NSString stringWithFormat:@"Could not find block with name %@", title]]; + [alert setAlertStyle:NSWarningAlertStyle]; + if ([alert runModal] == NSAlertSecondButtonReturn) { [[self class] removeCustomBlockMenuIdentifier:title]; } } else { diff --git a/README.md b/README.md index f939efa..8b12e8d 100644 --- a/README.md +++ b/README.md @@ -17,5 +17,4 @@ I *highly* suggest you to use app that is specifically build for you version of ##Paid Support - If functional you need is missing but you're ready to pay for it, feel free to contact me. If not, create an issue anyway, I'll take a look as soon as I can.