Changeset 156 for trunk/appswitch


Ignore:
Timestamp:
04/19/04 02:40:59 (21 years ago)
Author:
Nicholas Riley
Message:

appswitch.1: Updated for appswitch 1.0.1.

appswitch.xcode: Converted to Xcode project from PBX project; still
using legacy target for now.

main.c: Updated copyright date. Fixed memory leak and bogus return
value in bundleIdentifierForApplication. Fixed a caller to properly
release then bundle identifier when it's finished with it.

README: Updated for appswitch 1.0.1. Summarize changes.

Location:
trunk/appswitch/appswitch
Files:
5 edited
1 moved

Legend:

Unmodified
Added
Removed
  • trunk/appswitch/appswitch/README

    r99 r156  
    1 appswitch 1.0 [19 February 2003]
    2 =============
     1appswitch 1.0.1 [19 April 2004]
     2===============
    33
    44A command-line interface to the Mac OS X process manager.
     
    3737Uninstallation:
    3838
    39 % sudo rm -f /usr/local/bin/appswitch
     39% sudo rm -f /usr/local/bin/appswitch /usr/local/man/man1/appswitch.1
    4040
    4141COMPILATION
     
    4444A Project Builder project, 'appswitch.pbproj', is included.  A
    4545precompiled binary is also provided.  'appswitch' was developed and
    46 tested under Mac OS 10.2.4 with the December 2002 Developer Tools,
     46tested under Mac OS 10.3.3 with the April 2004 Developer Tools,
    4747and does not require any additional software to build.
    4848
     
    7373---------------
    7474
     751.0.1 - 19 April 2004
     76- fixed crash matching applications with no bundle identifier
    75771.0   - 19 February 2003
    7678 - added description of -q delay bug (no workaround)
  • trunk/appswitch/appswitch/appswitch.1

    r99 r156  
    1 .Dd Wed Feb 19 2003      \" DATE
     1.Dd Mon Apr 19 2004      \" DATE
    22.Dt APPSWITCH 1 LOCAL    \" Program name and manual section number
    3 .Os appswitch 1.0
     3.Os appswitch 1.0.1
    44.Sh NAME
    55.Nm appswitch
    6 .Nd switch, hide, show, kill or list Mac OS X applications
     6.Nd switch, hide, show, quit, kill or list Mac OS X applications
    77.Sh SYNOPSIS
    88.Nm appswitch
     
    161161The
    162162.Fl q
    163 option is very slow on Mac OS X 10.2.4 and earlier; this is an
    164 acknowledged bug in AECreateAppleEvent with no known workaround. Chris
    165 Espinosa from Apple has stated that they plan to fix it in a future
    166 release.
     163option is very slow on Mac OS X 10.2.8 and earlier; this is an
     164acknowledged bug in AECreateAppleEvent with no known workaround.
     165The bug is fixed in Mac OS X 10.3.
    167166.Sh AUTHOR
    168167.An "Nicholas Riley" Aq appswitch@sabi.net
    169 .\" .Sh HISTORY           \" Document history if command behaves in a unique manner
    170 
     168.\" .Sh HISTORY           \" Document history if command behaves in a unique manner
  • trunk/appswitch/appswitch/appswitch.xcode/nicholas.pbxuser

    r145 r156  
    99                );
    1010                breakpoints = (
    11                 );
     11                        E18A0A3006336368008DC67C,
     12                        E18A0A39063363B8008DC67C,
     13                );
     14                codeSenseManager = E18A0A2A063362FF008DC67C;
    1215                executables = (
    1316                        E1A0BD2C03EFAD1C00050001,
    1417                );
    1518                perUserDictionary = {
    16                         PBXPerProjectTemplateStateSaveDate = 67398120;
     19                        PBXConfiguration.PBXFileTableDataSource3.PBXExecutablesDataSource = {
     20                                PBXFileTableDataSourceColumnSortingDirectionKey = "-1";
     21                                PBXFileTableDataSourceColumnSortingKey = PBXExecutablesDataSource_NameID;
     22                                PBXFileTableDataSourceColumnWidthsKey = (
     23                                        22,
     24                                        525.7974,
     25                                );
     26                                PBXFileTableDataSourceColumnsKey = (
     27                                        PBXExecutablesDataSource_ActiveFlagID,
     28                                        PBXExecutablesDataSource_NameID,
     29                                );
     30                        };
     31                        PBXConfiguration.PBXFileTableDataSource3.PBXFileTableDataSource = {
     32                                PBXFileTableDataSourceColumnSortingDirectionKey = "-1";
     33                                PBXFileTableDataSourceColumnSortingKey = PBXFileDataSource_Filename_ColumnID;
     34                                PBXFileTableDataSourceColumnWidthsKey = (
     35                                        20,
     36                                        321,
     37                                        20,
     38                                        61,
     39                                        43,
     40                                        43,
     41                                        20,
     42                                );
     43                                PBXFileTableDataSourceColumnsKey = (
     44                                        PBXFileDataSource_FiletypeID,
     45                                        PBXFileDataSource_Filename_ColumnID,
     46                                        PBXFileDataSource_Built_ColumnID,
     47                                        PBXFileDataSource_ObjectSize_ColumnID,
     48                                        PBXFileDataSource_Errors_ColumnID,
     49                                        PBXFileDataSource_Warnings_ColumnID,
     50                                        PBXFileDataSource_Target_ColumnID,
     51                                );
     52                        };
     53                        PBXPerProjectTemplateStateSaveDate = 104034524;
     54                        PBXPrepackagedSmartGroups_v2 = (
     55                                {
     56                                        PBXTransientLocationAtTop = bottom;
     57                                        absolutePathToBundle = "";
     58                                        activationKey = OldTargetSmartGroup;
     59                                        clz = PBXTargetSmartGroup;
     60                                        description = "Displays all targets of the project.";
     61                                        globalID = 1C37FABC04509CD000000102;
     62                                        name = Targets;
     63                                        preferences = {
     64                                                image = Targets;
     65                                        };
     66                                },
     67                                {
     68                                        PBXTransientLocationAtTop = bottom;
     69                                        absolutePathToBundle = "";
     70                                        clz = PBXTargetSmartGroup2;
     71                                        description = "Displays all targets of the project as well as nested build phases.";
     72                                        globalID = 1C37FBAC04509CD000000102;
     73                                        name = Targets;
     74                                        preferences = {
     75                                                image = Targets;
     76                                        };
     77                                },
     78                                {
     79                                        PBXTransientLocationAtTop = bottom;
     80                                        absolutePathToBundle = "";
     81                                        clz = PBXExecutablesSmartGroup;
     82                                        description = "Displays all executables of the project.";
     83                                        globalID = 1C37FAAC04509CD000000102;
     84                                        name = Executables;
     85                                        preferences = {
     86                                                image = Executable;
     87                                        };
     88                                },
     89                                {
     90                                        " PBXTransientLocationAtTop " = bottom;
     91                                        absolutePathToBundle = "";
     92                                        clz = PBXErrorsWarningsSmartGroup;
     93                                        description = "Displays files with errors or warnings.";
     94                                        globalID = 1C08E77C0454961000C914BD;
     95                                        name = "Errors and Warnings";
     96                                        preferences = {
     97                                                fnmatch = "";
     98                                                image = WarningsErrors;
     99                                                recursive = 1;
     100                                                regex = "";
     101                                                root = "<PROJECT>";
     102                                        };
     103                                },
     104                                {
     105                                        PBXTransientLocationAtTop = bottom;
     106                                        absolutePathToBundle = "";
     107                                        clz = PBXFilenameSmartGroup;
     108                                        description = "Filters items in a given group (potentially recursively) based on matching the name with the regular expression of the filter.";
     109                                        globalID = 1CC0EA4004350EF90044410B;
     110                                        name = "Implementation Files";
     111                                        preferences = {
     112                                                canSave = 1;
     113                                                fnmatch = "";
     114                                                image = SmartFolder;
     115                                                isLeaf = 0;
     116                                                recursive = 1;
     117                                                regex = "?*\\.[mcMC]";
     118                                                root = "<PROJECT>";
     119                                        };
     120                                },
     121                                {
     122                                        PBXTransientLocationAtTop = bottom;
     123                                        absolutePathToBundle = "";
     124                                        clz = PBXFilenameSmartGroup;
     125                                        description = "This group displays Interface Builder NIB Files.";
     126                                        globalID = 1CC0EA4004350EF90041110B;
     127                                        name = "NIB Files";
     128                                        preferences = {
     129                                                canSave = 1;
     130                                                fnmatch = "*.nib";
     131                                                image = SmartFolder;
     132                                                isLeaf = 0;
     133                                                recursive = 1;
     134                                                regex = "";
     135                                                root = "<PROJECT>";
     136                                        };
     137                                },
     138                                {
     139                                        PBXTransientLocationAtTop = no;
     140                                        absolutePathToBundle = "";
     141                                        clz = PBXFindSmartGroup;
     142                                        description = "Displays Find Results.";
     143                                        globalID = 1C37FABC05509CD000000102;
     144                                        name = "Find Results";
     145                                        preferences = {
     146                                                image = spyglass;
     147                                        };
     148                                },
     149                                {
     150                                        PBXTransientLocationAtTop = no;
     151                                        absolutePathToBundle = "";
     152                                        clz = PBXBookmarksSmartGroup;
     153                                        description = "Displays Project Bookmarks.";
     154                                        globalID = 1C37FABC05539CD112110102;
     155                                        name = Bookmarks;
     156                                        preferences = {
     157                                                image = Bookmarks;
     158                                        };
     159                                },
     160                                {
     161                                        PBXTransientLocationAtTop = bottom;
     162                                        absolutePathToBundle = "";
     163                                        clz = XCSCMSmartGroup;
     164                                        description = "Displays files with interesting SCM status.";
     165                                        globalID = E2644B35053B69B200211256;
     166                                        name = SCM;
     167                                        preferences = {
     168                                                image = PBXRepository;
     169                                                isLeaf = 0;
     170                                        };
     171                                },
     172                                {
     173                                        PBXTransientLocationAtTop = bottom;
     174                                        absolutePathToBundle = "";
     175                                        clz = PBXSymbolsSmartGroup;
     176                                        description = "Displays all symbols for the project.";
     177                                        globalID = 1C37FABC04509CD000100104;
     178                                        name = "Project Symbols";
     179                                        preferences = {
     180                                                image = ProjectSymbols;
     181                                                isLeaf = 1;
     182                                        };
     183                                },
     184                                {
     185                                        PBXTransientLocationAtTop = bottom;
     186                                        absolutePathToBundle = "";
     187                                        clz = PBXFilenameSmartGroup;
     188                                        description = "Filters items in a given group (potentially recursively) based on matching the name with the regular expression of the filter.";
     189                                        globalID = PBXTemplateMarker;
     190                                        name = "Simple Filter SmartGroup";
     191                                        preferences = {
     192                                                canSave = 1;
     193                                                fnmatch = "*.nib";
     194                                                image = SmartFolder;
     195                                                isLeaf = 0;
     196                                                recursive = 1;
     197                                                regex = "";
     198                                                root = "<PROJECT>";
     199                                        };
     200                                },
     201                                {
     202                                        PBXTransientLocationAtTop = bottom;
     203                                        absolutePathToBundle = "";
     204                                        clz = PBXFilenameSmartGroup;
     205                                        description = "Filters items in a given group (potentially recursively) based on matching the name with the regular expression of the filter.";
     206                                        globalID = PBXTemplateMarker;
     207                                        name = "Simple Regular Expression SmartGroup";
     208                                        preferences = {
     209                                                canSave = 1;
     210                                                fnmatch = "";
     211                                                image = SmartFolder;
     212                                                isLeaf = 0;
     213                                                recursive = 1;
     214                                                regex = "?*\\.[mcMC]";
     215                                                root = "<PROJECT>";
     216                                        };
     217                                },
     218                        );
    17219                        PBXWorkspaceContents = (
    18220                                {
    19                                         LeftSlideOut = {
    20                                                 Split0 = {
    21                                                         Split0 = {
    22                                                                 NavContent0 = {
    23                                                                         bookmark = E1B46F540404978A00050002;
     221                                        PBXProjectWorkspaceModule_StateKey_Rev39 = {
     222                                                PBXProjectWorkspaceModule_DEGV_Geometry = {
     223                                                        _collapsingFrameDimension = 0;
     224                                                        _indexOfCollapsedView = 0;
     225                                                        _percentageOfCollapsedView = 0;
     226                                                        isCollapsed = yes;
     227                                                        sizes = (
     228                                                                "{{0, 0}, {571, 118}}",
     229                                                                "{{0, 118}, {571, 547}}",
     230                                                        );
     231                                                };
     232                                                PBXProjectWorkspaceModule_DataSourceSelectionKey_Rev6 = {
     233                                                        BoundsStr = "{{0, 0}, {556, 101}}";
     234                                                        Rows = (
     235                                                                0,
     236                                                        );
     237                                                        VisibleRectStr = "{{0, 0}, {556, 101}}";
     238                                                };
     239                                                PBXProjectWorkspaceModule_EditorOpen = true;
     240                                                PBXProjectWorkspaceModule_EmbeddedNavigatorGroup = {
     241                                                        PBXSplitModuleInNavigatorKey = {
     242                                                                Split0 = {
     243                                                                        bookmark = E1737411063370F0002A81F1;
    24244                                                                        history = (
    25                                                                                 E16C83D103F83AD700050002,
    26                                                                                 E16C83D203F83AD700050002,
    27                                                                                 E16C83D303F83AD700050002,
    28                                                                                 E16C83D403F83AD700050002,
    29                                                                                 E16C83D503F83AD700050002,
    30                                                                                 E16C83D603F83AD700050002,
    31                                                                                 E16C83D703F83AD700050002,
    32                                                                                 E16C83D803F83AD700050002,
    33                                                                                 E16C83D903F83AD700050002,
    34                                                                                 E16C83DA03F83AD700050002,
    35                                                                                 E16C83DB03F83AD700050002,
    36                                                                                 E16C83DD03F83AD700050002,
    37                                                                                 E16C840303FB5E7100050002,
    38                                                                                 E16C842A03FB74A500050002,
    39                                                                                 E1B46F500404978A00050002,
    40                                                                                 E1B46F510404978A00050002,
    41                                                                                 E16C83DE03F83AD700050002,
     245                                                                                E18A0A500633657C008DC67C,
     246                                                                                E18A0A5B0633660A008DC67C,
     247                                                                                E18A0A6B06336B3F008DC67C,
     248                                                                                E18A0A6F06336B56008DC67C,
     249                                                                                E173740F063370F0002A81F1,
     250                                                                                E18A0A3A06336491008DC67C,
    42251                                                                        );
    43252                                                                        prevStack = (
    44                                                                                 E16C83E103F83AD700050002,
    45                                                                                 E16C83E203F83AD700050002,
    46                                                                                 E16C83E303F83AD700050002,
    47                                                                                 E16C83E403F83AD700050002,
    48                                                                                 E16C83E503F83AD700050002,
    49                                                                                 E16C83E603F83AD700050002,
    50                                                                                 E16C83E703F83AD700050002,
    51                                                                                 E16C83E803F83AD700050002,
    52                                                                                 E16C83E903F83AD700050002,
    53                                                                                 E16C83EA03F83AD700050002,
    54                                                                                 E16C83EB03F83AD700050002,
    55                                                                                 E16C83EC03F83AD700050002,
    56                                                                                 E1B46F520404978A00050002,
    57                                                                                 E1B46F530404978A00050002,
     253                                                                                E18A0A3C06336491008DC67C,
     254                                                                                E18A0A6306336B3C008DC67C,
     255                                                                                E18A0A6806336B3E008DC67C,
     256                                                                                E18A0A6C06336B3F008DC67C,
     257                                                                                E1737410063370F0002A81F1,
    58258                                                                        );
    59259                                                                };
    60                                                                 NavCount = 1;
    61                                                                 NavGeometry0 = {
    62                                                                         Frame = "{{0, 0}, {746, 633}}";
    63                                                                         NavBarVisible = YES;
    64                                                                 };
    65                                                                 NavSplitVertical = NO;
     260                                                                SplitCount = 1;
     261                                                        };
     262                                                };
     263                                                PBXProjectWorkspaceModule_GeometryKey_Rev15 = {
     264                                                        PBXProjectWorkspaceModule_SGTM_Geometry = {
     265                                                                _collapsingFrameDimension = 0;
     266                                                                _indexOfCollapsedView = 0;
     267                                                                _percentageOfCollapsedView = 0;
     268                                                                sizes = (
     269                                                                        "{{0, 0}, {182, 665}}",
     270                                                                        "{{182, 0}, {571, 665}}",
     271                                                                );
     272                                                        };
     273                                                };
     274                                                PBXProjectWorkspaceModule_OldDetailFrame = "{{0, 0}, {571, 118}}";
     275                                                PBXProjectWorkspaceModule_OldEditorFrame = "{{0, 118}, {571, 547}}";
     276                                                PBXProjectWorkspaceModule_OldSuperviewFrame = "{{182, 0}, {571, 665}}";
     277                                                PBXProjectWorkspaceModule_SGTM = {
     278                                                        PBXBottomSmartGroupGIDs = (
     279                                                                1C37FBAC04509CD000000102,
     280                                                                1C37FAAC04509CD000000102,
     281                                                                1C08E77C0454961000C914BD,
     282                                                                1CC0EA4004350EF90044410B,
     283                                                                1CC0EA4004350EF90041110B,
     284                                                                1C37FABC05509CD000000102,
     285                                                                1C37FABC05539CD112110102,
     286                                                                E2644B35053B69B200211256,
     287                                                                1C37FABC04509CD000100104,
     288                                                        );
     289                                                        PBXSmartGroupTreeModuleColumnData = {
     290                                                                PBXSmartGroupTreeModuleColumnWidthsKey = (
     291                                                                        165,
     292                                                                );
     293                                                                PBXSmartGroupTreeModuleColumnsKey_v4 = (
     294                                                                        MainColumn,
     295                                                                );
     296                                                        };
     297                                                        PBXSmartGroupTreeModuleOutlineStateKey_v7 = {
     298                                                                PBXSmartGroupTreeModuleOutlineStateExpansionKey = (
     299                                                                        08FB7794FE84155DC02AAC07,
     300                                                                        08FB7795FE84155DC02AAC07,
     301                                                                        C6859E96029091FE04C91782,
     302                                                                        1C37FAAC04509CD000000102,
     303                                                                );
     304                                                                PBXSmartGroupTreeModuleOutlineStateSelectionKey = (
     305                                                                        (
     306                                                                                10,
     307                                                                        ),
     308                                                                );
     309                                                                PBXSmartGroupTreeModuleOutlineStateVisibleRectKey = "{{0, 0}, {165, 647}}";
     310                                                        };
     311                                                        PBXTopSmartGroupGIDs = (
     312                                                        );
     313                                                };
     314                                        };
     315                                },
     316                        );
     317                        "PBXWorkspaceContents:PBXConfiguration.PBXModule.PBXBuildResultsModule" = {
     318                        };
     319                        "PBXWorkspaceContents:PBXConfiguration.PBXModule.PBXDebugCLIModule" = {
     320                        };
     321                        "PBXWorkspaceContents:PBXConfiguration.PBXModule.PBXDebugSessionModule" = {
     322                                Debugger = {
     323                                        HorizontalSplitView = {
     324                                                _collapsingFrameDimension = 0;
     325                                                _indexOfCollapsedView = 0;
     326                                                _percentageOfCollapsedView = 0;
     327                                                isCollapsed = yes;
     328                                                sizes = (
     329                                                        "{{0, 0}, {180, 195}}",
     330                                                        "{{180, 0}, {565, 195}}",
     331                                                );
     332                                        };
     333                                        VerticalSplitView = {
     334                                                _collapsingFrameDimension = 0;
     335                                                _indexOfCollapsedView = 0;
     336                                                _percentageOfCollapsedView = 0;
     337                                                isCollapsed = yes;
     338                                                sizes = (
     339                                                        "{{0, 0}, {745, 195}}",
     340                                                        "{{0, 195}, {745, 227}}",
     341                                                );
     342                                        };
     343                                };
     344                                LauncherConfigVersion = 8;
     345                        };
     346                        "PBXWorkspaceContents:PBXConfiguration.PBXModule.PBXNavigatorGroup" = {
     347                                PBXSplitModuleInNavigatorKey = {
     348                                        SplitCount = 1;
     349                                };
     350                        };
     351                        "PBXWorkspaceContents:PBXConfiguration.PBXModule.PBXProjectWorkspaceModule" = {
     352                                PBXProjectWorkspaceModule_StateKey_Rev39 = {
     353                                        PBXProjectWorkspaceModule_DEGV_Geometry = {
     354                                                _collapsingFrameDimension = 0;
     355                                                _indexOfCollapsedView = 0;
     356                                                _percentageOfCollapsedView = 0;
     357                                                isCollapsed = yes;
     358                                                sizes = (
     359                                                        "{{0, 0}, {571, 115}}",
     360                                                        "{{0, 115}, {571, 550}}",
     361                                                );
     362                                        };
     363                                        PBXProjectWorkspaceModule_DataSourceSelectionKey_Rev6 = {
     364                                                BoundsStr = "{{0, 0}, {556, 98}}";
     365                                                Rows = (
     366                                                        0,
     367                                                );
     368                                                VisibleRectStr = "{{0, 0}, {556, 98}}";
     369                                        };
     370                                        PBXProjectWorkspaceModule_EditorOpen = true;
     371                                        PBXProjectWorkspaceModule_EmbeddedNavigatorGroup = {
     372                                                PBXSplitModuleInNavigatorKey = {
     373                                                        Split0 = {
     374                                                                bookmark = E18A0A28063362F9008DC67C;
     375                                                                history = (
     376                                                                        E18A0A22063362F5008DC67C,
     377                                                                );
    66378                                                        };
    67379                                                        SplitCount = 1;
    68                                                         Tab1 = {
    69                                                                 Debugger = {
    70                                                                         Split0 = {
    71                                                                                 SplitCount = 2;
    72                                                                         };
    73                                                                         SplitCount = 1;
    74                                                                         TabCount = 2;
    75                                                                 };
    76                                                                 LauncherConfigVersion = 7;
    77                                                         };
    78                                                         Tab2 = {
    79                                                                 LauncherConfigVersion = 3;
    80                                                                 Runner = {
    81                                                                 };
    82                                                         };
    83                                                         TabCount = 5;
    84                                                 };
    85                                                 SplitCount = 1;
    86                                                 Tab1 = {
    87                                                         OptionsSetName = "Hierarchy, all classes";
    88                                                 };
    89                                                 TabCount = 5;
    90                                         };
    91                                 },
    92                                 {
    93                                         LeftSlideOut = {
    94                                                 Split0 = {
    95                                                         Split0 = {
    96                                                                 NavCount = 1;
    97                                                                 NavGeometry0 = {
    98                                                                         Frame = "{{0, 0}, {618, 150}}";
    99                                                                         NavBarVisible = YES;
    100                                                                 };
    101                                                                 NavSplitVertical = NO;
    102                                                         };
    103                                                         SplitCount = 1;
    104                                                         Tab1 = {
    105                                                                 Debugger = {
    106                                                                         Split0 = {
    107                                                                                 SplitCount = 2;
    108                                                                         };
    109                                                                         SplitCount = 1;
    110                                                                         TabCount = 2;
    111                                                                 };
    112                                                                 LauncherConfigVersion = 7;
    113                                                         };
    114                                                         Tab2 = {
    115                                                                 LauncherConfigVersion = 3;
    116                                                                 Runner = {
    117                                                                 };
    118                                                         };
    119                                                         TabCount = 5;
    120                                                 };
    121                                                 SplitCount = 1;
    122                                                 Tab1 = {
    123                                                         OptionsSetName = "Hierarchy, all classes";
    124                                                 };
    125                                                 TabCount = 5;
    126                                         };
     380                                                };
     381                                        };
     382                                        PBXProjectWorkspaceModule_GeometryKey_Rev15 = {
     383                                                PBXProjectWorkspaceModule_SGTM_Geometry = {
     384                                                        _collapsingFrameDimension = 0;
     385                                                        _indexOfCollapsedView = 0;
     386                                                        _percentageOfCollapsedView = 0;
     387                                                        sizes = (
     388                                                                "{{0, 0}, {182, 665}}",
     389                                                                "{{182, 0}, {571, 665}}",
     390                                                        );
     391                                                };
     392                                        };
     393                                        PBXProjectWorkspaceModule_OldDetailFrame = "{{0, 0}, {571, 115}}";
     394                                        PBXProjectWorkspaceModule_OldEditorFrame = "{{0, 115}, {571, 550}}";
     395                                        PBXProjectWorkspaceModule_OldSuperviewFrame = "{{182, 0}, {571, 665}}";
     396                                        PBXProjectWorkspaceModule_SGTM = {
     397                                                PBXBottomSmartGroupGIDs = (
     398                                                        1C37FBAC04509CD000000102,
     399                                                        1C37FAAC04509CD000000102,
     400                                                        1C08E77C0454961000C914BD,
     401                                                        1CC0EA4004350EF90044410B,
     402                                                        1CC0EA4004350EF90041110B,
     403                                                        1C37FABC05509CD000000102,
     404                                                        1C37FABC05539CD112110102,
     405                                                        E2644B35053B69B200211256,
     406                                                        1C37FABC04509CD000100104,
     407                                                );
     408                                                PBXSmartGroupTreeModuleColumnData = {
     409                                                        PBXSmartGroupTreeModuleColumnWidthsKey = (
     410                                                                165,
     411                                                        );
     412                                                        PBXSmartGroupTreeModuleColumnsKey_v4 = (
     413                                                                MainColumn,
     414                                                        );
     415                                                };
     416                                                PBXSmartGroupTreeModuleOutlineStateKey_v7 = {
     417                                                        PBXSmartGroupTreeModuleOutlineStateExpansionKey = (
     418                                                                08FB7794FE84155DC02AAC07,
     419                                                                08FB7795FE84155DC02AAC07,
     420                                                        );
     421                                                        PBXSmartGroupTreeModuleOutlineStateSelectionKey = (
     422                                                                (
     423                                                                        2,
     424                                                                        1,
     425                                                                        0,
     426                                                                ),
     427                                                        );
     428                                                        PBXSmartGroupTreeModuleOutlineStateVisibleRectKey = "{{0, 0}, {165, 647}}";
     429                                                };
     430                                                PBXTopSmartGroupGIDs = (
     431                                                );
     432                                        };
     433                                };
     434                        };
     435                        PBXWorkspaceGeometries = (
     436                                {
     437                                        Frame = "{{0, 0}, {753, 665}}";
     438                                        PBXProjectWorkspaceModule_GeometryKey_Rev15 = {
     439                                        };
     440                                        RubberWindowFrame = "46 125 753 707 0 0 1280 832 ";
    127441                                },
    128442                        );
    129                         PBXWorkspaceGeometries = (
    130                                 {
    131                                         ContentSize = "{1018, 656}";
    132                                         LeftSlideOut = {
    133                                                 ActiveTab = 1;
    134                                                 ActiveTabName = PBXClassBrowserModule;
    135                                                 Collapsed = NO;
    136                                                 Frame = "{{0, 23}, {1018, 633}}";
    137                                                 Split0 = {
    138                                                         Collapsed = NO;
    139                                                         Frame = "{{272, 0}, {746, 633}}";
    140                                                         Split0 = {
    141                                                                 Frame = "{{0, 0}, {746, 633}}";
    142                                                         };
    143                                                         SplitCount = 1;
    144                                                         Tab0 = {
    145                                                                 Frame = "{{0, 0}, {681, 289}}";
    146                                                         };
    147                                                         Tab1 = {
    148                                                                 Debugger = {
    149                                                                         Collapsed = NO;
    150                                                                         Frame = "{{0, 0}, {681, 150}}";
    151                                                                         Split0 = {
    152                                                                                 Frame = "{{0, 24}, {681, 126}}";
    153                                                                                 Split0 = {
    154                                                                                         Frame = "{{0, 0}, {333, 126}}";
    155                                                                                 };
    156                                                                                 Split1 = {
    157                                                                                         DebugVariablesTableConfiguration = (
    158                                                                                                 Name,
    159                                                                                                 123,
    160                                                                                                 Value,
    161                                                                                                 85,
    162                                                                                                 Summary,
    163                                                                                                 105.123,
    164                                                                                         );
    165                                                                                         Frame = "{{342, 0}, {339, 126}}";
    166                                                                                 };
    167                                                                                 SplitCount = 2;
    168                                                                         };
    169                                                                         SplitCount = 1;
    170                                                                         Tab0 = {
    171                                                                                 Frame = "{{0, 0}, {100, 50}}";
    172                                                                         };
    173                                                                         Tab1 = {
    174                                                                                 Frame = "{{0, 0}, {100, 50}}";
    175                                                                         };
    176                                                                         TabCount = 2;
    177                                                                         TabsVisible = YES;
    178                                                                 };
    179                                                                 Frame = "{{0, 0}, {681, 120}}";
    180                                                                 LauncherConfigVersion = 7;
    181                                                         };
    182                                                         Tab2 = {
    183                                                                 Frame = "{{0, 0}, {681, 234}}";
    184                                                                 LauncherConfigVersion = 3;
    185                                                                 Runner = {
    186                                                                         Frame = "{{0, 0}, {681, 234}}";
    187                                                                 };
    188                                                         };
    189                                                         Tab3 = {
    190                                                                 BuildMessageFrame = "{{0, 0}, {683, 205}}";
    191                                                                 BuildTranscriptFrame = "{{0, 214}, {683, 2}}";
    192                                                                 BuildTranscriptFrameExpanded = YES;
    193                                                                 Frame = "{{0, 0}, {681, 238}}";
    194                                                         };
    195                                                         Tab4 = {
    196                                                                 Frame = "{{0, 0}, {612, 295}}";
    197                                                         };
    198                                                         TabCount = 5;
    199                                                         TabsVisible = NO;
    200                                                 };
    201                                                 SplitCount = 1;
    202                                                 Tab0 = {
    203                                                         Frame = "{{0, 0}, {265, 633}}";
    204                                                         GroupTreeTableConfiguration = (
    205                                                                 TargetStatusColumn,
    206                                                                 18,
    207                                                                 MainColumn,
    208                                                                 232,
    209                                                         );
    210                                                 };
    211                                                 Tab1 = {
    212                                                         ClassesFrame = "{{0, 0}, {250, 381}}";
    213                                                         ClassesTreeTableConfiguration = (
    214                                                                 PBXBookColumnIdentifier,
    215                                                                 20,
    216                                                                 PBXClassColumnIdentifier,
    217                                                                 207,
    218                                                         );
    219                                                         Frame = "{{0, 0}, {248, 633}}";
    220                                                         MembersFrame = "{{0, 390}, {250, 243}}";
    221                                                         MembersTreeTableConfiguration = (
    222                                                                 PBXBookColumnIdentifier,
    223                                                                 20,
    224                                                                 PBXMethodColumnIdentifier,
    225                                                                 206,
    226                                                         );
    227                                                 };
    228                                                 Tab2 = {
    229                                                         Frame = "{{0, 0}, {217, 554}}";
    230                                                 };
    231                                                 Tab3 = {
    232                                                         Frame = "{{0, 0}, {239, 554}}";
    233                                                         TargetTableConfiguration = (
    234                                                                 ActiveObject,
    235                                                                 16,
    236                                                                 ObjectNames,
    237                                                                 206.296,
    238                                                         );
    239                                                 };
    240                                                 Tab4 = {
    241                                                         BreakpointsTreeTableConfiguration = (
    242                                                                 breakpointColumn,
    243                                                                 197,
    244                                                                 enabledColumn,
    245                                                                 31,
    246                                                         );
    247                                                         Frame = "{{0, 0}, {250, 554}}";
    248                                                 };
    249                                                 TabCount = 5;
    250                                                 TabsVisible = YES;
    251                                         };
    252                                         NavBarShownByDefault = YES;
    253                                         StatusViewVisible = YES;
    254                                         Template = 64ABBB4501FA494900185B06;
    255                                         ToolbarVisible = YES;
    256                                         WindowLocation = "{4, 111}";
    257                                 },
    258                                 {
    259                                         ContentSize = "{618, 257}";
    260                                         LeftSlideOut = {
    261                                                 Collapsed = NO;
    262                                                 Frame = "{{0, 23}, {618, 234}}";
    263                                                 Split0 = {
    264                                                         ActiveTab = 2;
    265                                                         ActiveTabName = PBXBuildResultsModule;
    266                                                         Collapsed = YES;
    267                                                         Frame = "{{0, 0}, {618, 234}}";
    268                                                         Split0 = {
    269                                                                 Frame = "{{1e+06, 1e+06}, {618, 0}}";
    270                                                         };
    271                                                         SplitCount = 1;
    272                                                         Tab0 = {
    273                                                                 Frame = "{{0, 0}, {952, 321}}";
    274                                                         };
    275                                                         Tab1 = {
    276                                                                 Debugger = {
    277                                                                         Collapsed = NO;
    278                                                                         Frame = "{{0, 0}, {781, 452}}";
    279                                                                         Split0 = {
    280                                                                                 Frame = "{{0, 24}, {781, 428}}";
    281                                                                                 Split0 = {
    282                                                                                         Frame = "{{0, 0}, {383, 428}}";
    283                                                                                 };
    284                                                                                 Split1 = {
    285                                                                                         DebugVariablesTableConfiguration = (
    286                                                                                                 Name,
    287                                                                                                 123,
    288                                                                                                 Value,
    289                                                                                                 85,
    290                                                                                                 Summary,
    291                                                                                                 155.123,
    292                                                                                         );
    293                                                                                         Frame = "{{392, 0}, {389, 428}}";
    294                                                                                 };
    295                                                                                 SplitCount = 2;
    296                                                                         };
    297                                                                         SplitCount = 1;
    298                                                                         Tab0 = {
    299                                                                                 Frame = "{{0, 0}, {100, 50}}";
    300                                                                         };
    301                                                                         Tab1 = {
    302                                                                                 Frame = "{{0, 0}, {100, 50}}";
    303                                                                         };
    304                                                                         TabCount = 2;
    305                                                                         TabsVisible = YES;
    306                                                                 };
    307                                                                 Frame = "{{0, 0}, {781, 452}}";
    308                                                                 LauncherConfigVersion = 7;
    309                                                         };
    310                                                         Tab2 = {
    311                                                                 Frame = "{{0, 0}, {618, 228}}";
    312                                                                 LauncherConfigVersion = 3;
    313                                                                 Runner = {
    314                                                                         Frame = "{{0, 0}, {618, 228}}";
    315                                                                 };
    316                                                         };
    317                                                         Tab3 = {
    318                                                                 BuildMessageFrame = "{{0, 0}, {620, 195}}";
    319                                                                 BuildTranscriptFrame = "{{0, 204}, {620, 2}}";
    320                                                                 BuildTranscriptFrameExpanded = YES;
    321                                                                 Frame = "{{0, 0}, {618, 228}}";
    322                                                         };
    323                                                         Tab4 = {
    324                                                                 Frame = "{{0, 0}, {612, 295}}";
    325                                                         };
    326                                                         TabCount = 5;
    327                                                         TabsVisible = NO;
    328                                                 };
    329                                                 SplitCount = 1;
    330                                                 Tab0 = {
    331                                                         Frame = "{{0, 0}, {300, 533}}";
    332                                                         GroupTreeTableConfiguration = (
    333                                                                 TargetStatusColumn,
    334                                                                 18,
    335                                                                 MainColumn,
    336                                                                 267,
    337                                                         );
    338                                                 };
    339                                                 Tab1 = {
    340                                                         ClassesFrame = "{{0, 0}, {280, 398}}";
    341                                                         ClassesTreeTableConfiguration = (
    342                                                                 PBXBookColumnIdentifier,
    343                                                                 20,
    344                                                                 PBXClassColumnIdentifier,
    345                                                                 237,
    346                                                         );
    347                                                         Frame = "{{0, 0}, {278, 659}}";
    348                                                         MembersFrame = "{{0, 407}, {280, 252}}";
    349                                                         MembersTreeTableConfiguration = (
    350                                                                 PBXBookColumnIdentifier,
    351                                                                 20,
    352                                                                 PBXMethodColumnIdentifier,
    353                                                                 236,
    354                                                         );
    355                                                 };
    356                                                 Tab2 = {
    357                                                         Frame = "{{0, 0}, {200, 100}}";
    358                                                 };
    359                                                 Tab3 = {
    360                                                         Frame = "{{0, 0}, {200, 100}}";
    361                                                         TargetTableConfiguration = (
    362                                                                 ActiveObject,
    363                                                                 16,
    364                                                                 ObjectNames,
    365                                                                 202.296,
    366                                                         );
    367                                                 };
    368                                                 Tab4 = {
    369                                                         BreakpointsTreeTableConfiguration = (
    370                                                                 breakpointColumn,
    371                                                                 197,
    372                                                                 enabledColumn,
    373                                                                 31,
    374                                                         );
    375                                                         Frame = "{{0, 0}, {250, 100}}";
    376                                                 };
    377                                                 TabCount = 5;
    378                                                 TabsVisible = NO;
    379                                         };
    380                                         NavBarShownByDefault = YES;
    381                                         StatusViewVisible = YES;
    382                                         Template = F5314676015831810DCA290F;
    383                                         ToolbarVisible = YES;
    384                                         WindowLocation = "{819, 244}";
    385                                 },
    386                         );
    387                         PBXWorkspaceStateSaveDate = 67398120;
     443                        "PBXWorkspaceGeometries:PBXConfiguration.PBXModule.PBXBuildResultsModule" = {
     444                                Frame = "{{0, 0}, {480, 217}}";
     445                                PBXModuleWindowStatusBarHidden = YES;
     446                                RubberWindowFrame = "400 466 480 238 0 0 1280 832 ";
     447                        };
     448                        "PBXWorkspaceGeometries:PBXConfiguration.PBXModule.PBXDebugCLIModule" = {
     449                                Frame = "{{0, 0}, {400, 201}}";
     450                                PBXModuleWindowStatusBarHidden = YES;
     451                                RubberWindowFrame = "50 804 400 222 0 0 1280 832 ";
     452                        };
     453                        "PBXWorkspaceGeometries:PBXConfiguration.PBXModule.PBXDebugSessionModule" = {
     454                                DebugConsoleDrawerSize = "{100, 120}";
     455                                DebugConsoleVisible = Drawer;
     456                                DebugConsoleWindowFrame = "{{200, 200}, {500, 300}}";
     457                                DebugSTDIOWindowFrame = "{{200, 200}, {500, 300}}";
     458                                Frame = "{{0, 0}, {745, 422}}";
     459                                RubberWindowFrame = "398 164 745 464 0 0 1280 832 ";
     460                        };
     461                        "PBXWorkspaceGeometries:PBXConfiguration.PBXModule.PBXNavigatorGroup" = {
     462                                Frame = "{{0, 0}, {750, 481}}";
     463                                PBXModuleWindowStatusBarHidden = YES;
     464                                RubberWindowFrame = "15 325 750 502 0 0 1280 832 ";
     465                        };
     466                        "PBXWorkspaceGeometries:PBXConfiguration.PBXModule.PBXProjectWorkspaceModule" = {
     467                                Frame = "{{0, 0}, {753, 665}}";
     468                                PBXProjectWorkspaceModule_GeometryKey_Rev15 = {
     469                                };
     470                                RubberWindowFrame = "46 125 753 707 0 0 1280 832 ";
     471                        };
     472                        PBXWorkspaceStateSaveDate = 104034524;
    388473                };
    389474                perUserProjectItems = {
    390                         E16C83D103F83AD700050002 = E16C83D103F83AD700050002;
    391                         E16C83D203F83AD700050002 = E16C83D203F83AD700050002;
    392                         E16C83D303F83AD700050002 = E16C83D303F83AD700050002;
    393                         E16C83D403F83AD700050002 = E16C83D403F83AD700050002;
    394                         E16C83D503F83AD700050002 = E16C83D503F83AD700050002;
    395                         E16C83D603F83AD700050002 = E16C83D603F83AD700050002;
    396                         E16C83D703F83AD700050002 = E16C83D703F83AD700050002;
    397                         E16C83D803F83AD700050002 = E16C83D803F83AD700050002;
    398                         E16C83D903F83AD700050002 = E16C83D903F83AD700050002;
    399                         E16C83DA03F83AD700050002 = E16C83DA03F83AD700050002;
    400                         E16C83DB03F83AD700050002 = E16C83DB03F83AD700050002;
    401                         E16C83DD03F83AD700050002 = E16C83DD03F83AD700050002;
    402                         E16C83DE03F83AD700050002 = E16C83DE03F83AD700050002;
    403                         E16C83E103F83AD700050002 = E16C83E103F83AD700050002;
    404                         E16C83E203F83AD700050002 = E16C83E203F83AD700050002;
    405                         E16C83E303F83AD700050002 = E16C83E303F83AD700050002;
    406                         E16C83E403F83AD700050002 = E16C83E403F83AD700050002;
    407                         E16C83E503F83AD700050002 = E16C83E503F83AD700050002;
    408                         E16C83E603F83AD700050002 = E16C83E603F83AD700050002;
    409                         E16C83E703F83AD700050002 = E16C83E703F83AD700050002;
    410                         E16C83E803F83AD700050002 = E16C83E803F83AD700050002;
    411                         E16C83E903F83AD700050002 = E16C83E903F83AD700050002;
    412                         E16C83EA03F83AD700050002 = E16C83EA03F83AD700050002;
    413                         E16C83EB03F83AD700050002 = E16C83EB03F83AD700050002;
    414                         E16C83EC03F83AD700050002 = E16C83EC03F83AD700050002;
    415                         E16C840303FB5E7100050002 = E16C840303FB5E7100050002;
    416                         E16C842A03FB74A500050002 = E16C842A03FB74A500050002;
    417                         E1B46F500404978A00050002 = E1B46F500404978A00050002;
    418                         E1B46F510404978A00050002 = E1B46F510404978A00050002;
    419                         E1B46F520404978A00050002 = E1B46F520404978A00050002;
    420                         E1B46F530404978A00050002 = E1B46F530404978A00050002;
    421                         E1B46F540404978A00050002 = E1B46F540404978A00050002;
    422                 };
    423                 projectwideBuildSettings = {
    424                 };
    425                 wantsIndex = 1;
    426                 wantsSCM = -1;
     475                        E173740F063370F0002A81F1 = E173740F063370F0002A81F1;
     476                        E1737410063370F0002A81F1 = E1737410063370F0002A81F1;
     477                        E1737411063370F0002A81F1 = E1737411063370F0002A81F1;
     478                        E18A0A3A06336491008DC67C = E18A0A3A06336491008DC67C;
     479                        E18A0A3C06336491008DC67C = E18A0A3C06336491008DC67C;
     480                        E18A0A500633657C008DC67C = E18A0A500633657C008DC67C;
     481                        E18A0A5B0633660A008DC67C = E18A0A5B0633660A008DC67C;
     482                        E18A0A6306336B3C008DC67C = E18A0A6306336B3C008DC67C;
     483                        E18A0A6806336B3E008DC67C = E18A0A6806336B3E008DC67C;
     484                        E18A0A6B06336B3F008DC67C = E18A0A6B06336B3F008DC67C;
     485                        E18A0A6C06336B3F008DC67C = E18A0A6C06336B3F008DC67C;
     486                        E18A0A6F06336B56008DC67C = E18A0A6F06336B56008DC67C;
     487                };
     488                sourceControlManager = E18A0A29063362FF008DC67C;
     489                userBuildSettings = {
     490                };
     491        };
     492        08FB7796FE84155DC02AAC07 = {
     493                uiCtxt = {
     494                        sepNavIntBoundsRect = "{{0, 0}, {709, 5843}}";
     495                        sepNavSelRange = "{14100, 30}";
     496                        sepNavVisRect = "{{0, 4189}, {709, 443}}";
     497                        sepNavWindowFrame = "{{15, 325}, {750, 502}}";
     498                };
    427499        };
    428500        08FB779FFE84155DC02AAC07 = {
     
    432504                );
    433505        };
    434         E16C83D103F83AD700050002 = {
    435                 fRef = E16C83EF03F83AD700050002;
    436                 isa = PBXTextBookmark;
    437                 name = "CoreGraphics.h: 1";
    438                 rLen = 0;
    439                 rLoc = 0;
    440                 rType = 0;
    441                 vrLen = 1102;
    442                 vrLoc = 0;
    443         };
    444         E16C83D203F83AD700050002 = {
    445                 fRef = E16C83F003F83AD700050002;
    446                 isa = PBXTextBookmark;
    447                 name = "CGBase.h: 1";
    448                 rLen = 0;
    449                 rLoc = 0;
    450                 rType = 0;
    451                 vrLen = 712;
    452                 vrLoc = 0;
    453         };
    454         E16C83D303F83AD700050002 = {
    455                 fRef = E16C83F203F83AD700050002;
    456                 isa = PBXTextBookmark;
    457                 name = "CGError.h: 21";
    458                 rLen = 23;
    459                 rLoc = 382;
    460                 rType = 0;
    461                 vrLen = 1002;
    462                 vrLoc = 0;
    463         };
    464         E16C83D403F83AD700050002 = {
    465                 fRef = E16C83F303F83AD700050002;
    466                 isa = PBXTextBookmark;
    467                 name = "Processes.h: 48";
    468                 rLen = 15;
    469                 rLoc = 1115;
    470                 rType = 0;
    471                 vrLen = 1032;
    472                 vrLoc = 546;
    473         };
    474         E16C83D503F83AD700050002 = {
    475                 fRef = E16C83F403F83AD700050002;
    476                 isa = PBXTextBookmark;
    477                 name = "MacErrors.h: 1476";
    478                 rLen = 3;
    479                 rLoc = 82842;
    480                 rType = 0;
    481                 vrLen = 1637;
    482                 vrLoc = 82130;
    483         };
    484         E16C83D603F83AD700050002 = {
    485                 fRef = E16C83F103F83AD700050002;
    486                 isa = PBXTextBookmark;
    487                 name = "Quickdraw.h: 1974";
    488                 rLen = 105;
    489                 rLoc = 71385;
    490                 rType = 0;
    491                 vrLen = 1086;
    492                 vrLoc = 70825;
    493         };
    494         E16C83D703F83AD700050002 = {
    495                 fRef = E16C83F503F83AD700050002;
    496                 isa = PBXTextBookmark;
    497                 name = "types.h: 102";
    498                 rLen = 42;
    499                 rLoc = 4351;
    500                 rType = 0;
    501                 vrLen = 1301;
    502                 vrLoc = 3647;
    503         };
    504         E16C83D803F83AD700050002 = {
    505                 fRef = E16C83F603F83AD700050002;
    506                 isa = PBXTextBookmark;
    507                 name = "OpenTransportProtocol.h: 799";
    508                 rLen = 50;
    509                 rLoc = 35039;
    510                 rType = 0;
    511                 vrLen = 1534;
    512                 vrLoc = 34260;
    513         };
    514         E16C83D903F83AD700050002 = {
    515                 fRef = E16C83F703F83AD700050002;
    516                 isa = PBXTextBookmark;
    517                 name = "stdio.h: 279";
    518                 rLen = 47;
    519                 rLoc = 10453;
    520                 rType = 0;
    521                 vrLen = 1370;
    522                 vrLoc = 9757;
    523         };
    524         E16C83DA03F83AD700050002 = {
    525                 fRef = E16C83F803F83AD700050002;
    526                 isa = PBXTextBookmark;
    527                 name = "NSURL.h: 1";
    528                 rLen = 0;
    529                 rLoc = 0;
    530                 rType = 0;
    531                 vrLen = 1617;
    532                 vrLoc = 856;
    533         };
    534         E16C83DB03F83AD700050002 = {
    535                 fRef = E16C83F903F83AD700050002;
    536                 isa = PBXTextBookmark;
    537                 name = "NSFileManager.h: 7";
    538                 rLen = 0;
    539                 rLoc = 165;
    540                 rType = 0;
    541                 vrLen = 1400;
    542                 vrLoc = 0;
    543         };
    544         E16C83DD03F83AD700050002 = {
    545                 fRef = E16C83EE03F83AD700050002;
    546                 isa = PBXTextBookmark;
    547                 name = "unistd.h: 132";
    548                 rLen = 41;
    549                 rLoc = 5271;
    550                 rType = 0;
    551                 vrLen = 1423;
    552                 vrLoc = 4595;
    553         };
    554         E16C83DE03F83AD700050002 = {
    555                 fRef = E16C83CC03F7AF7B00050002;
    556                 isa = PBXTextBookmark;
    557                 name = "README: 34";
    558                 rLen = 56;
    559                 rLoc = 1201;
    560                 rType = 0;
    561                 vrLen = 1412;
    562                 vrLoc = 0;
    563         };
    564         E16C83E103F83AD700050002 = {
    565                 fRef = E1A0BD3203EFAD9E00050001;
    566                 isa = PBXTextBookmark;
    567                 name = "CPS.h: 273";
    568                 rLen = 0;
    569                 rLoc = 4618;
    570                 rType = 0;
    571                 vrLen = 1089;
    572                 vrLoc = 4030;
    573         };
    574         E16C83E203F83AD700050002 = {
    575                 fRef = 08FB7796FE84155DC02AAC07;
    576                 isa = PBXTextBookmark;
    577                 name = "main.c: __VERSION__";
    578                 rLen = 0;
    579                 rLoc = 0;
    580                 rType = 0;
    581                 vrLen = 861;
    582                 vrLoc = 1740;
    583         };
    584         E16C83E303F83AD700050002 = {
    585                 fRef = E1A0BD3203EFAD9E00050001;
    586                 isa = PBXTextBookmark;
    587                 name = "CPS.h: CPSPostShowAllReq";
    588                 rLen = 17;
    589                 rLoc = 4768;
    590                 rType = 0;
    591                 vrLen = 1057;
    592                 vrLoc = 3979;
    593         };
    594         E16C83E403F83AD700050002 = {
    595                 fRef = 08FB7796FE84155DC02AAC07;
    596                 isa = PBXTextBookmark;
    597                 name = "main.c: main";
    598                 rLen = 0;
    599                 rLoc = 16257;
    600                 rType = 0;
    601                 vrLen = 1650;
    602                 vrLoc = 10700;
    603         };
    604         E16C83E503F83AD700050002 = {
    605                 fRef = E1A0BD3203EFAD9E00050001;
    606                 isa = PBXTextBookmark;
    607                 name = "CPS.h: 80";
    608                 rLen = 0;
    609                 rLoc = 1183;
    610                 rType = 0;
    611                 vrLen = 810;
    612                 vrLoc = 825;
    613         };
    614         E16C83E603F83AD700050002 = {
    615                 fRef = 08FB7796FE84155DC02AAC07;
    616                 isa = PBXTextBookmark;
    617                 name = "main.c: matchApplication";
    618                 rLen = 0;
    619                 rLoc = 12913;
    620                 rType = 0;
    621                 vrLen = 1426;
    622                 vrLoc = 8916;
    623         };
    624         E16C83E703F83AD700050002 = {
    625                 fRef = 08FB7796FE84155DC02AAC07;
    626                 isa = PBXTextBookmark;
    627                 name = "main.c: 51";
    628                 rLen = 0;
    629                 rLoc = 2377;
    630                 rType = 0;
    631                 vrLen = 801;
    632                 vrLoc = 1590;
    633         };
    634         E16C83E803F83AD700050002 = {
    635                 fRef = E16C83CC03F7AF7B00050002;
    636                 isa = PBXTextBookmark;
    637                 name = "README: 35";
    638                 rLen = 0;
    639                 rLoc = 1258;
    640                 rType = 0;
    641                 vrLen = 1285;
    642                 vrLoc = 0;
    643         };
    644         E16C83E903F83AD700050002 = {
    645                 fRef = E1A0BD3203EFAD9E00050001;
    646                 isa = PBXTextBookmark;
    647                 name = "CPS.h: 80";
    648                 rLen = 0;
    649                 rLoc = 1183;
    650                 rType = 0;
    651                 vrLen = 832;
    652                 vrLoc = 741;
    653         };
    654         E16C83EA03F83AD700050002 = {
    655                 fRef = 08FB7796FE84155DC02AAC07;
    656                 isa = PBXTextBookmark;
    657                 name = "main.c: 117";
    658                 rLen = 0;
    659                 rLoc = 5050;
    660                 rType = 0;
    661                 vrLen = 1813;
    662                 vrLoc = 0;
    663         };
    664         E16C83EB03F83AD700050002 = {
    665                 fRef = E16C83CC03F7AF7B00050002;
    666                 isa = PBXTextBookmark;
    667                 name = "README: 34";
    668                 rLen = 56;
    669                 rLoc = 1201;
    670                 rType = 0;
    671                 vrLen = 1412;
    672                 vrLoc = 0;
    673         };
    674         E16C83EC03F83AD700050002 = {
    675                 fRef = C6859E970290921104C91782;
    676                 isa = PBXTextBookmark;
    677                 name = "appswitch.1: 110";
    678                 rLen = 0;
    679                 rLoc = 4118;
    680                 rType = 0;
    681                 vrLen = 1732;
    682                 vrLoc = 2592;
    683         };
    684         E16C83EE03F83AD700050002 = {
    685                 isa = PBXFileReference;
    686                 name = unistd.h;
    687                 path = /usr/include/unistd.h;
    688                 refType = 0;
    689         };
    690         E16C83EF03F83AD700050002 = {
    691                 isa = PBXFileReference;
    692                 name = CoreGraphics.h;
    693                 path = /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/CoreGraphics.framework/Versions/A/Headers/CoreGraphics.h;
    694                 refType = 0;
    695         };
    696         E16C83F003F83AD700050002 = {
    697                 isa = PBXFileReference;
    698                 name = CGBase.h;
    699                 path = /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/CoreGraphics.framework/Versions/A/Headers/CGBase.h;
    700                 refType = 0;
    701         };
    702         E16C83F103F83AD700050002 = {
    703                 isa = PBXFileReference;
    704                 name = Quickdraw.h;
    705                 path = /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/QD.framework/Versions/A/Headers/Quickdraw.h;
    706                 refType = 0;
    707         };
    708         E16C83F203F83AD700050002 = {
    709                 isa = PBXFileReference;
    710                 name = CGError.h;
    711                 path = /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/CoreGraphics.framework/Versions/A/Headers/CGError.h;
    712                 refType = 0;
    713         };
    714         E16C83F303F83AD700050002 = {
    715                 isa = PBXFileReference;
    716                 name = Processes.h;
    717                 path = /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/HIServices.framework/Versions/A/Headers/Processes.h;
    718                 refType = 0;
    719         };
    720         E16C83F403F83AD700050002 = {
    721                 isa = PBXFileReference;
    722                 name = MacErrors.h;
    723                 path = /System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/CarbonCore.framework/Versions/A/Headers/MacErrors.h;
    724                 refType = 0;
    725         };
    726         E16C83F503F83AD700050002 = {
    727                 isa = PBXFileReference;
    728                 name = types.h;
    729                 path = /usr/include/sys/types.h;
    730                 refType = 0;
    731         };
    732         E16C83F603F83AD700050002 = {
    733                 isa = PBXFileReference;
    734                 name = OpenTransportProtocol.h;
    735                 path = /System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/OSServices.framework/Versions/A/Headers/OpenTransportProtocol.h;
    736                 refType = 0;
    737         };
    738         E16C83F703F83AD700050002 = {
    739                 isa = PBXFileReference;
    740                 name = stdio.h;
    741                 path = /usr/include/stdio.h;
    742                 refType = 0;
    743         };
    744         E16C83F803F83AD700050002 = {
    745                 isa = PBXFileReference;
    746                 name = NSURL.h;
    747                 path = /System/Library/Frameworks/Foundation.framework/Versions/C/Headers/NSURL.h;
    748                 refType = 0;
    749         };
    750         E16C83F903F83AD700050002 = {
    751                 isa = PBXFileReference;
    752                 name = NSFileManager.h;
    753                 path = /System/Library/Frameworks/Foundation.framework/Versions/C/Headers/NSFileManager.h;
    754                 refType = 0;
    755         };
    756         E16C840303FB5E7100050002 = {
    757                 fRef = E1A0BD3203EFAD9E00050001;
    758                 isa = PBXTextBookmark;
    759                 name = "CPS.h: 156";
    760                 rLen = 13;
    761                 rLoc = 2465;
    762                 rType = 0;
    763                 vrLen = 622;
    764                 vrLoc = 2176;
    765         };
    766         E16C842A03FB74A500050002 = {
    767                 fRef = E16C842F03FB74A500050002;
    768                 isa = PBXTextBookmark;
    769                 name = "CFString.h: 252";
    770                 rLen = 142;
    771                 rLoc = 12196;
    772                 rType = 0;
    773                 vrLen = 2097;
    774                 vrLoc = 10692;
     506        C6859E970290921104C91782 = {
     507                uiCtxt = {
     508                        sepNavIntBoundsRect = "{{0, 0}, {530, 2027}}";
     509                        sepNavSelRange = "{122, 0}";
     510                        sepNavVisRect = "{{0, 1494}, {530, 533}}";
     511                };
     512        };
     513        E16C83CC03F7AF7B00050002 = {
     514                uiCtxt = {
     515                        sepNavIntBoundsRect = "{{0, 0}, {530, 1036}}";
     516                        sepNavSelRange = "{0, 0}";
     517                        sepNavVisRect = "{{0, 0}, {530, 533}}";
     518                };
    775519        };
    776520        E16C842F03FB74A500050002 = {
    777521                isa = PBXFileReference;
     522                lastKnownFileType = sourcecode.c.h;
    778523                name = CFString.h;
    779524                path = /System/Library/Frameworks/CoreFoundation.framework/Versions/A/Headers/CFString.h;
    780525                refType = 0;
     526                sourceTree = "<absolute>";
     527        };
     528        E173740F063370F0002A81F1 = {
     529                fRef = C6859E970290921104C91782;
     530                isa = PBXTextBookmark;
     531                name = "appswitch.1: 4";
     532                rLen = 0;
     533                rLoc = 122;
     534                rType = 0;
     535                vrLen = 1440;
     536                vrLoc = 4186;
     537        };
     538        E1737410063370F0002A81F1 = {
     539                fRef = C6859E970290921104C91782;
     540                isa = PBXTextBookmark;
     541                name = "appswitch.1: 4";
     542                rLen = 0;
     543                rLoc = 122;
     544                rType = 0;
     545                vrLen = 1440;
     546                vrLoc = 4186;
     547        };
     548        E1737411063370F0002A81F1 = {
     549                exec = E1A0BD2C03EFAD1C00050001;
     550                isa = PBXExecutableBookmark;
     551                uiCtxt = {
     552                        buildSettingsExpandedSubviews = (
     553                                0,
     554                                1,
     555                                2,
     556                                3,
     557                                4,
     558                                5,
     559                        );
     560                        buildSettingsVisRect = "{{0, 0}, {556, 498}}";
     561                };
     562        };
     563        E18A0A29063362FF008DC67C = {
     564                isa = PBXSourceControlManager;
     565                scmConfiguration = {
     566                };
     567                scmType = scm.cvs;
     568        };
     569        E18A0A2A063362FF008DC67C = {
     570                indexTemplatePath = "";
     571                isa = PBXCodeSenseManager;
     572                usesDefaults = 1;
     573                wantsCodeCompletion = 1;
     574                wantsCodeCompletionAutoPopup = 1;
     575                wantsCodeCompletionAutoSuggestions = 1;
     576                wantsCodeCompletionCaseSensitivity = 1;
     577                wantsCodeCompletionOnlyMatchingItems = 1;
     578                wantsCodeCompletionParametersIncluded = 1;
     579                wantsCodeCompletionPlaceholdersInserted = 1;
     580                wantsCodeCompletionTabCompletes = 1;
     581                wantsIndex = 1;
     582        };
     583        E18A0A3006336368008DC67C = {
     584                fileReference = 08FB7796FE84155DC02AAC07;
     585                functionName = "matchApplication()";
     586                isa = PBXFileBreakpoint;
     587                lineNumber = 355;
     588                state = 1;
     589        };
     590        E18A0A39063363B8008DC67C = {
     591                fileReference = 08FB7796FE84155DC02AAC07;
     592                functionName = "matchApplication()";
     593                isa = PBXFileBreakpoint;
     594                lineNumber = 353;
     595                state = 1;
     596        };
     597        E18A0A3A06336491008DC67C = {
     598                exec = E1A0BD2C03EFAD1C00050001;
     599                isa = PBXExecutableBookmark;
     600        };
     601        E18A0A3C06336491008DC67C = {
     602                exec = E1A0BD2C03EFAD1C00050001;
     603                isa = PBXExecutableBookmark;
     604        };
     605        E18A0A500633657C008DC67C = {
     606                fRef = E16C83CC03F7AF7B00050002;
     607                isa = PBXTextBookmark;
     608                name = "README: 76";
     609                rLen = 0;
     610                rLoc = 2574;
     611                rType = 0;
     612                vrLen = 1666;
     613                vrLoc = 1642;
     614        };
     615        E18A0A5B0633660A008DC67C = {
     616                fRef = E16C842F03FB74A500050002;
     617                isa = PBXTextBookmark;
     618                name = CFComparisonResult;
     619                rLen = 18;
     620                rLoc = 17127;
     621                rType = 0;
     622                vrLen = 2160;
     623                vrLoc = 16209;
     624        };
     625        E18A0A6306336B3C008DC67C = {
     626                fRef = 08FB7796FE84155DC02AAC07;
     627                isa = PBXTextBookmark;
     628                name = "main.c: 249";
     629                rLen = 0;
     630                rLoc = 10218;
     631                rType = 0;
     632                vrLen = 1331;
     633                vrLoc = 9714;
     634        };
     635        E18A0A6806336B3E008DC67C = {
     636                fRef = C6859E970290921104C91782;
     637                isa = PBXTextBookmark;
     638                name = "appswitch.1: 1";
     639                rLen = 0;
     640                rLoc = 0;
     641                rType = 0;
     642                vrLen = 1708;
     643                vrLoc = 0;
     644        };
     645        E18A0A6B06336B3F008DC67C = {
     646                fRef = E1A0BD3203EFAD9E00050001;
     647                isa = PBXTextBookmark;
     648                name = "CPS.h: 1";
     649                rLen = 0;
     650                rLoc = 0;
     651                rType = 0;
     652                vrLen = 570;
     653                vrLoc = 0;
     654        };
     655        E18A0A6C06336B3F008DC67C = {
     656                fRef = E1A0BD3203EFAD9E00050001;
     657                isa = PBXTextBookmark;
     658                name = "CPS.h: 1";
     659                rLen = 0;
     660                rLoc = 0;
     661                rType = 0;
     662                vrLen = 570;
     663                vrLoc = 0;
     664        };
     665        E18A0A6F06336B56008DC67C = {
     666                fRef = 08FB7796FE84155DC02AAC07;
     667                isa = PBXTextBookmark;
     668                name = "main.c: 463";
     669                rLen = 0;
     670                rLoc = 18890;
     671                rType = 0;
     672                vrLen = 1696;
     673                vrLoc = 17194;
    781674        };
    782675        E1A0BD2C03EFAD1C00050001 = {
     
    800693                );
    801694        };
    802         E1B46F500404978A00050002 = {
    803                 fRef = 08FB7796FE84155DC02AAC07;
    804                 isa = PBXTextBookmark;
    805                 name = "main.c: VERSION";
    806                 rLen = 0;
    807                 rLoc = 1695;
    808                 rType = 0;
    809                 vrLen = 1811;
    810                 vrLoc = 0;
    811         };
    812         E1B46F510404978A00050002 = {
    813                 fRef = C6859E970290921104C91782;
    814                 isa = PBXTextBookmark;
    815                 name = "appswitch.1: 123";
    816                 rLen = 0;
    817                 rLoc = 4118;
    818                 rType = 0;
    819                 vrLen = 1451;
    820                 vrLoc = 2587;
    821         };
    822         E1B46F520404978A00050002 = {
    823                 fRef = 08FB7796FE84155DC02AAC07;
    824                 isa = PBXTextBookmark;
    825                 name = "main.c: VERSION";
    826                 rLen = 0;
    827                 rLoc = 1695;
    828                 rType = 0;
    829                 vrLen = 1811;
    830                 vrLoc = 0;
    831         };
    832         E1B46F530404978A00050002 = {
    833                 fRef = C6859E970290921104C91782;
    834                 isa = PBXTextBookmark;
    835                 name = "appswitch.1: 123";
    836                 rLen = 0;
    837                 rLoc = 4118;
    838                 rType = 0;
    839                 vrLen = 1451;
    840                 vrLoc = 2587;
    841         };
    842         E1B46F540404978A00050002 = {
    843                 fRef = E16C83CC03F7AF7B00050002;
    844                 isa = PBXTextBookmark;
    845                 name = "README: 88";
    846                 rLen = 0;
    847                 rLoc = 3017;
    848                 rType = 0;
    849                 vrLen = 1583;
    850                 vrLoc = 1611;
     695        E1A0BD3203EFAD9E00050001 = {
     696                uiCtxt = {
     697                        sepNavIntBoundsRect = "{{0, 0}, {530, 3532}}";
     698                        sepNavSelRange = "{0, 0}";
     699                        sepNavVisRect = "{{0, 0}, {530, 533}}";
     700                };
    851701        };
    852702}
  • trunk/appswitch/appswitch/appswitch.xcode/project.pbxproj

    r92 r156  
    44        classes = {
    55        };
    6         objectVersion = 38;
     6        objectVersion = 39;
    77        objects = {
    88                014CEA490018CE3211CA2923 = {
     
    1111                        buildSettings = {
    1212                                COPY_PHASE_STRIP = NO;
     13                                GCC_DYNAMIC_NO_PIC = NO;
     14                                GCC_ENABLE_FIX_AND_CONTINUE = YES;
     15                                GCC_GENERATE_DEBUGGING_SYMBOLS = YES;
     16                                GCC_OPTIMIZATION_LEVEL = 0;
    1317                                OPTIMIZATION_CFLAGS = "-O0";
     18                                ZERO_LINK = YES;
    1419                        };
    1520                        isa = PBXBuildStyle;
     
    2126                        buildSettings = {
    2227                                COPY_PHASE_STRIP = YES;
     28                                GCC_ENABLE_FIX_AND_CONTINUE = NO;
     29                                ZERO_LINK = NO;
    2330                        };
    2431                        isa = PBXBuildStyle;
     
    3643//034
    3744                034768E2FF38A6DC11DB9C8B = {
     45                        explicitFileType = "compiled.mach-o.executable";
     46                        fallbackIsa = PBXFileReference;
    3847                        isa = PBXExecutableFileReference;
    3948                        path = appswitch;
    4049                        refType = 3;
     50                        sourceTree = BUILT_PRODUCTS_DIR;
    4151                };
    4252//030
     
    5161//084
    5262                08FB7793FE84155DC02AAC07 = {
     63                        buildSettings = {
     64                        };
    5365                        buildStyles = (
    5466                                014CEA490018CE3211CA2923,
     
    7385                        name = appswitch;
    7486                        refType = 4;
     87                        sourceTree = "<group>";
    7588                };
    7689                08FB7795FE84155DC02AAC07 = {
     
    8295                        name = Source;
    8396                        refType = 4;
     97                        sourceTree = "<group>";
    8498                };
    8599                08FB7796FE84155DC02AAC07 = {
    86100                        fileEncoding = 4;
     101                        indentWidth = 4;
    87102                        isa = PBXFileReference;
     103                        lastKnownFileType = sourcecode.c.c;
    88104                        path = main.c;
    89105                        refType = 4;
     106                        sourceTree = "<group>";
     107                        tabWidth = 8;
     108                        usesTabs = 0;
    90109                };
    91110                08FB779DFE84155DC02AAC07 = {
     
    96115                        name = "External Frameworks and Libraries";
    97116                        refType = 4;
     117                        sourceTree = "<group>";
    98118                };
    99119                08FB779FFE84155DC02AAC07 = {
     
    182202                        name = Products;
    183203                        refType = 4;
     204                        sourceTree = "<group>";
    184205                };
    185206//190
     
    201222                        name = Documentation;
    202223                        refType = 4;
     224                        sourceTree = "<group>";
    203225                };
    204226                C6859E970290921104C91782 = {
    205227                        isa = PBXFileReference;
     228                        lastKnownFileType = text.man;
    206229                        path = appswitch.1;
    207230                        refType = 4;
     231                        sourceTree = "<group>";
    208232                };
    209233                C6859E980290922304C91782 = {
     
    237261                        fileEncoding = 4;
    238262                        isa = PBXFileReference;
     263                        lastKnownFileType = text;
    239264                        path = README;
    240265                        refType = 4;
     266                        sourceTree = "<group>";
    241267                };
    242268                E16C83CD03F7AF7B00050002 = {
     
    249275                        fileEncoding = 30;
    250276                        isa = PBXFileReference;
     277                        lastKnownFileType = sourcecode.c.h;
    251278                        path = CPS.h;
    252279                        refType = 4;
     280                        sourceTree = "<group>";
    253281                };
    254282                E1A0BD3303EFAD9E00050001 = {
     
    259287                };
    260288                E1A0BD4C03EFB64400050001 = {
     289                        fallbackIsa = PBXFileReference;
    261290                        isa = PBXFrameworkReference;
     291                        lastKnownFileType = wrapper.framework;
    262292                        name = ApplicationServices.framework;
    263293                        path = /System/Library/Frameworks/ApplicationServices.framework;
    264294                        refType = 0;
     295                        sourceTree = "<absolute>";
    265296                };
    266297                E1A0BD4D03EFB64400050001 = {
  • trunk/appswitch/appswitch/main.c

    r145 r156  
    33 Nicholas Riley <appswitch@sabi.net>
    44
    5  Copyright (c) 2003, Nicholas Riley
     5 Copyright (c) 2003-04, Nicholas Riley
    66 All rights reserved.
    77
     
    250250    if (bundle != NULL) {
    251251        *bundleID = CFBundleGetIdentifier(bundle);
     252        if (*bundleID != NULL) {
     253            CFRetain(*bundleID);
    252254#if DEBUG
    253         CFShow(*bundleID);
     255            CFShow(*bundleID);
    254256#endif
     257        }
     258        CFRelease(bundle);
     259    } else {
     260        *bundleID = NULL;
    255261    }
    256262    CFRelease(url);
     
    346352                   if (!bundleIdentifierForApplication(&bundleID, path))
    347353                       errexit("can't get bundle location for process '%s' (PSN %ld.%ld, pid %ld)", name, psn.hi, psn.lo, info->UnixPID);
    348                    if (bundleID != NULL && CFStringCompare(OPTS.bundleID, bundleID, kCFCompareCaseInsensitive) == kCFCompareEqualTo)
    349                        break;
     354                   if (bundleID != NULL) {
     355                       CFComparisonResult result = CFStringCompare(OPTS.bundleID, bundleID, kCFCompareCaseInsensitive);
     356                       if (result == kCFCompareEqualTo)
     357                           break;
     358                       CFRelease(bundleID);
     359                   }
    350360                   continue;
    351361               }
Note: See TracChangeset for help on using the changeset viewer.