Changeset 345 for trunk/appswitch


Ignore:
Timestamp:
11/05/07 10:05:50 (17 years ago)
Author:
Nicholas Riley
Message:

VERSION: Updated for 1.1d2.

CPS.h: Remove unused definitions. typedef ProcessSerialNumber CPSProcessSerNum to eliminate warnings.

main.c: Updated for 1.1d2. Remove getInfoCString because it depends on undocumented C behavior that broke in Leopard; replace with ugly CFString code because CFStringCreateWithFormat is stupid. Add Radar references.

README: Updated for 1.1d2 and new compiler. Add Radar references.

Location:
trunk/appswitch/appswitch
Files:
6 edited

Legend:

Unmodified
Added
Removed
  • trunk/appswitch/appswitch/CPS.h

    r92 r345  
    1919
    2020
    21 struct CPSProcessSerNum
    22 {
    23         UInt32          lo;
    24         UInt32          hi;
    25 };
    26 
    27 typedef struct CPSProcessSerNum CPSProcessSerNum;
    28 
    29 enum
    30 {
    31         kCPSNoProcess           =       0,
    32         kCPSSystemProcess       =       1,
    33         kCPSCurrentProcess      =       2
    34 };
    35 
    36 
    37 enum
    38 {
    39         bfCPSIntraProcessSwitch =       1,
    40         bfCPSDeathBySignal      =       2
    41 };
    42 
    43 typedef UInt16  CPSEventFlags;
    44 
    45 
    46 enum
    47 {
    48         kCPSBlueApp     =       0,
    49         kCPSBlueBox     =       1,
    50         kCPSCarbonApp   =       2,
    51         kCPSYellowApp   =       3,
    52         kCPSUnknownApp  =       4
    53 };
    54 
    55 typedef UInt32  CPSAppFlavour;
    56 
    57 
    58 enum
    59 {
    60         kCPSBGOnlyAttr          =       1024,
    61         kCPSUIElementAttr       =       65536,
    62         kCPSHiddenAttr          =       131072,
    63         kCPSNoConnectAttr       =       262144,
    64         kCPSFullScreenAttr      =       524288,
    65         kCPSClassicReqAttr      =       1048576,
    66         kCPSNativeReqAttr       =       2097152
    67 };
    68 
    69 typedef UInt32  CPSProcAttributes;
    70 
    71 
    72 struct CPSProcessInfoRec
    73 {
    74         CPSProcessSerNum        Parent;
    75         UInt64                  LaunchDate;
    76         CPSAppFlavour           Flavour;
    77         CPSProcAttributes       Attributes;
    78         UInt32                  ExecFileType;
    79         UInt32                  ExecFileCreator;
    80         SInt32                  UnixPID; // njr changed from UInt32
    81 };
    82 
    83 typedef struct CPSProcessInfoRec        CPSProcessInfoRec;
    84 
    85 
    86 enum
    87 {
    88         kCPSNotifyChildDeath    =       1,
    89         kCPSNotifyNewFront      =       2,
    90         kCPSNotifyAppBirth      =       4,
    91         kCPSNotifyAppDeath      =       8,
    92         kCPSNotifyLaunch        =       9,
    93         kCPSNotifyServiceReq    =       16,
    94         kCPSNotifyAppHidden     =       32,
    95         kCPSNotifyAppRevealed   =       64,
    96         kCPSNotifyFGEnabled     =       128,
    97         kCPSNotifyLaunchStart   =       256,
    98         kCPSNotifyAppReady      =       512,
    99         kCPSNotifyLaunchFail    =       1024,
    100         kCPSNotifyAppDeathExt   =       2048,
    101         kCPSNotifyLostKeyFocus  =       4096
    102 };
    103 
    104 typedef UInt32  CPSNotificationCodes;
    105 
    106 
    107 enum
    108 {
    109         bfCPSLaunchInhibitDaemon        =       128,
    110         bfCPSLaunchDontSwitch           =       512,
    111         bfCPSLaunchNoProcAttr           =       2048,
    112         bfCPSLaunchAsync                =       65536,
    113         bfCPSLaunchStartClassic         =       131072,
    114         bfCPSLaunchInClassic            =       262144,
    115         bfCPSLaunchInstance             =       524288,
    116         bfCPSLaunchAndHide              =       1048576,
    117         bfCPSLaunchAndHideOthers        =       2097152
    118 };
    119 
    120 typedef UInt32  CPSLaunchOptions;
    121 
    122 
    123 typedef UInt8   *CPSLaunchRefcon;
    124 
    125 
    126 typedef UInt8   *CPSLaunchData;
    127 
    128 
    129 enum
    130 {
    131         bfCPSExtLaunchWithData  =       2,
    132         bfCPSExtLaunchByParent  =       4,
    133         bfCPSExtLaunchAsUidGid  =       8
    134 };
    135 
    136 typedef UInt32  CPSLaunchPBFields;
    137 
    138 
    139 struct CPSLaunchPB
    140 {
    141         CPSLaunchPBFields       Contents;
    142         CPSLaunchData           pData;
    143         UInt32                  DataLen;
    144         UInt32                  DataTag;
    145         UInt32                  RefCon;
    146         CPSProcessSerNum        Parent;
    147         UInt32                  ChildUID;
    148         UInt32                  ChildGID;
    149 };
    150 
    151 typedef struct CPSLaunchPB      CPSLaunchPB;
    152 
    153 
    154 enum
    155 {
    156         bfCPSKillHard           =       1,
    157         bfCPSKillAllClassicApps =       2
    158 };
    159 
    160 typedef UInt32  CPSKillOptions;
    161 
    162 
    163 enum
    164 {
    165         kCPSLaunchService       =       0,
    166         kCPSKillService         =       1,
    167         kCPSHideService         =       2,
    168         kCPSShowService         =       3,
    169         kCPSPrivService         =       4,
    170         kCPSExtDeathNoteService =       5
    171 };
    172 
    173 typedef UInt32  CPSServiceReqType;
    174 
    175 
    176 struct CPSLaunchRequest
    177 {
    178         CPSProcessSerNum        TargetPSN;
    179         CPSLaunchOptions        Options;
    180         CPSProcAttributes       ProcAttributes;
    181         UInt8                   *pUTF8TargetPath;
    182         UInt32                  PathLen;
    183 };
    184 
    185 typedef struct CPSLaunchRequest CPSLaunchRequest;
    186 
    187 
    188 struct CPSKillRequest
    189 {
    190         CPSProcessSerNum        TargetPSN;
    191         CPSKillOptions          Options;
    192 };
    193 
    194 typedef struct CPSKillRequest   CPSKillRequest;
    195 
    196 
    197 struct CPSHideRequest
    198 {
    199         CPSProcessSerNum        TargetPSN;
    200 };
    201 
    202 typedef struct CPSHideRequest   CPSHideRequest;
    203 
    204 
    205 struct CPSShowRequest
    206 {
    207         CPSProcessSerNum        TargetPSN;
    208 };
    209 
    210 typedef struct CPSShowRequest   CPSShowRequest;
    211 
    212 
    213 struct CPSExtDeathNotice
    214 {
    215         CPSProcessSerNum        DeadPSN;
    216         UInt32                  Flags;
    217         UInt8                   *pUTF8AppPath;
    218         UInt32                  PathLen;
    219 };
    220 
    221 typedef struct CPSExtDeathNotice        CPSExtDeathNotice;
    222 
    223 
    224 union CPSRequestDetails
    225 {
    226         CPSLaunchRequest        LaunchReq;
    227         CPSKillRequest          KillReq;
    228         CPSHideRequest          HideReq;
    229         CPSShowRequest          ShowReq;
    230         CPSExtDeathNotice       DeathNotice;
    231 };
    232 
    233 typedef union CPSRequestDetails CPSRequestDetails;
    234 
    235 
    236 struct CPSServiceRequest
    237 {
    238         CPSServiceReqType       Type;
    239         SInt32                  ID;
    240         CPSRequestDetails       Details;
    241 };
    242 
    243 typedef struct CPSServiceRequest        CPSServiceRequest;
    244 
    245 
    246 enum
    247 {
    248         kCPSProcessInterruptKey =       0,
    249         kCPSAppSwitchFwdKey     =       1,
    250         kCPSAppSwitchBackKey    =       2,
    251         kCPSSessionInterruptKey =       3,
    252         kCPSScreenSaverKey      =       4,
    253         kCPSDiskEjectKey        =       5,
    254         kCPSSpecialKeyCount     =       6
    255 };
    256 
    257 typedef SInt32  CPSSpecialKeyID;
    258 
    259 
    260 extern Boolean  CPSEqualProcess( CPSProcessSerNum *psn1, CPSProcessSerNum *psn2);
    261 
    262 extern OSErr    CPSGetCurrentProcess( CPSProcessSerNum *psn);
    263 
    264 extern OSErr    CPSGetFrontProcess( CPSProcessSerNum *psn);
    265 
    266 extern OSErr    CPSGetNextProcess( CPSProcessSerNum *psn);
    267 
    268 extern OSErr    CPSGetNextToFrontProcess( CPSProcessSerNum *psn);
    269 
    270 extern OSErr    CPSGetProcessInfo( CPSProcessSerNum *psn, CPSProcessInfoRec *info, char *path, int maxPathLen, int *len, char *name, int maxNameLen);
     21typedef ProcessSerialNumber CPSProcessSerNum;
    27122
    27223extern OSErr    CPSPostHideMostReq( CPSProcessSerNum *psn);
    27324
    274 extern OSErr    CPSPostHideReq( CPSProcessSerNum *psn);
    275 
    276 extern OSErr    CPSPostKillRequest( CPSProcessSerNum *psn, CPSKillOptions options);
    277 
    27825extern OSErr    CPSPostShowAllReq( CPSProcessSerNum *psn);
    279 
    280 extern OSErr    CPSPostShowReq( CPSProcessSerNum *psn);
    281 
    282 extern OSErr    CPSSetFrontProcess( CPSProcessSerNum *psn);
    283 
    284 extern OSErr    CPSReleaseKeyFocus( CPSProcessSerNum *psn);
    285 
    286 extern OSErr    CPSStealKeyFocus( CPSProcessSerNum *psn);
    287 
    28826
    28927#if PRAGMA_STRUCT_ALIGN
  • trunk/appswitch/appswitch/README

    r306 r345  
    1 appswitch 1.1d1 [unreleased]
     1appswitch 1.1d2 [unreleased]
    22===============
    33
     
    4343
    4444An Xcode project, 'appswitch.xcodeproj', is included.  A precompiled
    45 Universal binary is also provided.  'appswitch' was developed and
    46 tested under Mac OS 10.4.8 with Xcode 2.4, and does not require any
    47 additional software to build.
     45Universal binary is also provided.  'appswitch' should build under
     46Xcode 2.4 or later.
    4847
    4948USAGE
     
    7473
    75741.1 - unreleased
    76  - switched to Process Manager instead of CPS (slower but more
    77    compatible)
     75 - switched to Process Manager instead of CPS where possible - slower
     76   but more compatible (r. 4808397, 4808400, 5579375)
    7877 - fixed description of -k option: SIGTERM, not SIGINT
    7978 - added -f option
    80  - Universal Binary, compatible with Intel Macs
     79 - fixed incorrect output/behavior with Mac OS X 10.5
     80 - Universal Binary, compatible with Intel Macs; built for OS X 10.4
     81   or later
    81821.0.1 - 16 May 2004
    8283 - fixed crash matching applications with no bundle identifier
  • trunk/appswitch/appswitch/VERSION

    r306 r345  
    1 1.1d1
     11.1d2
  • trunk/appswitch/appswitch/appswitch.xcodeproj/nicholas.pbxuser

    r307 r345  
    22{
    33        08FB7793FE84155DC02AAC07 /* Project object */ = {
    4                 activeBuildConfigurationName = Deployment;
     4                activeArchitecture = i386;
     5                activeBuildConfigurationName = Development;
    56                activeExecutable = E1607F090AF3700B001EAB72 /* appswitch */;
    67                activeTarget = E1607EF90AF3700B001EAB72 /* appswitch */;
     
    910                breakpoints = (
    1011                );
    11                 breakpointsGroup = E1ED200E0AF38AB700F9825D /* XCBreakpointsBucket */;
    1212                codeSenseManager = E18A0A2A063362FF008DC67C /* Code sense */;
    1313                executables = (
     
    3232                                PBXFileTableDataSourceColumnWidthsKey = (
    3333                                        20,
    34                                         321,
     34                                        230,
    3535                                        20,
    3636                                        61,
     
    4949                                );
    5050                        };
    51                         PBXPerProjectTemplateStateSaveDate = 183736482;
     51                        PBXPerProjectTemplateStateSaveDate = 215940979;
    5252                        PBXPrepackagedSmartGroups_v2 = (
    5353                                {
     
    470470                                RubberWindowFrame = "46 125 753 707 0 0 1280 832 ";
    471471                        };
    472                         PBXWorkspaceStateSaveDate = 183736482;
     472                        PBXWorkspaceStateSaveDate = 215940979;
    473473                };
    474474                perUserProjectItems = {
    475                         E1A3245B0AF398A3003E2DC8 /* PBXTextBookmark */ = E1A3245B0AF398A3003E2DC8 /* PBXTextBookmark */;
    476                         E1A3245C0AF398A3003E2DC8 /* PBXTextBookmark */ = E1A3245C0AF398A3003E2DC8 /* PBXTextBookmark */;
    477                         E1A324600AF398B4003E2DC8 /* PBXTextBookmark */ = E1A324600AF398B4003E2DC8 /* PBXTextBookmark */;
    478                         E1A324610AF398B4003E2DC8 /* PBXTextBookmark */ = E1A324610AF398B4003E2DC8 /* PBXTextBookmark */;
    479                         E1ED1FFD0AF38A5800F9825D = E1ED1FFD0AF38A5800F9825D /* PBXTextBookmark */;
    480                         E1ED20980AF3924800F9825D = E1ED20980AF3924800F9825D /* PBXBookmark */;
    481                         E1ED20AE0AF392EB00F9825D = E1ED20AE0AF392EB00F9825D /* PBXTextBookmark */;
    482                         E1ED20AF0AF392EB00F9825D = E1ED20AF0AF392EB00F9825D /* PBXTextBookmark */;
     475                        E14A26D70CDEFF8900A5BD78 /* PBXTextBookmark */ = E14A26D70CDEFF8900A5BD78 /* PBXTextBookmark */;
     476                        E14A26D80CDEFF8900A5BD78 /* PBXTextBookmark */ = E14A26D80CDEFF8900A5BD78 /* PBXTextBookmark */;
     477                        E14A26E10CDF006A00A5BD78 /* PBXTextBookmark */ = E14A26E10CDF006A00A5BD78 /* PBXTextBookmark */;
     478                        E14A26F60CDF017100A5BD78 /* PBXTextBookmark */ = E14A26F60CDF017100A5BD78 /* PBXTextBookmark */;
     479                        E14A26F70CDF017100A5BD78 /* PBXTextBookmark */ = E14A26F70CDF017100A5BD78 /* PBXTextBookmark */;
     480                        E14A26FD0CDF018800A5BD78 /* PBXTextBookmark */ = E14A26FD0CDF018800A5BD78 /* PBXTextBookmark */;
     481                        E14A26FE0CDF018800A5BD78 /* PBXTextBookmark */ = E14A26FE0CDF018800A5BD78 /* PBXTextBookmark */;
     482                        E14A27050CDF02A600A5BD78 /* PBXTextBookmark */ = E14A27050CDF02A600A5BD78 /* PBXTextBookmark */;
     483                        E14A27180CDF09BD00A5BD78 /* PBXTextBookmark */ = E14A27180CDF09BD00A5BD78 /* PBXTextBookmark */;
     484                        E14A271A0CDF09BD00A5BD78 /* PBXTextBookmark */ = E14A271A0CDF09BD00A5BD78 /* PBXTextBookmark */;
     485                        E14A271B0CDF09BD00A5BD78 /* PBXTextBookmark */ = E14A271B0CDF09BD00A5BD78 /* PBXTextBookmark */;
     486                        E14A271D0CDF0A7200A5BD78 /* PBXTextBookmark */ = E14A271D0CDF0A7200A5BD78 /* PBXTextBookmark */;
     487                        E14A271E0CDF0A7200A5BD78 /* PBXTextBookmark */ = E14A271E0CDF0A7200A5BD78 /* PBXTextBookmark */;
     488                        E14A271F0CDF0AF700A5BD78 /* PBXTextBookmark */ = E14A271F0CDF0AF700A5BD78 /* PBXTextBookmark */;
     489                        E14A27200CDF0B2200A5BD78 /* PBXTextBookmark */ = E14A27200CDF0B2200A5BD78 /* PBXTextBookmark */;
     490                        E14A27220CDF0B2C00A5BD78 /* PBXBookmark */ = E14A27220CDF0B2C00A5BD78 /* PBXBookmark */;
     491                        E14A27280CDF0D3300A5BD78 /* PBXTextBookmark */ = E14A27280CDF0D3300A5BD78 /* PBXTextBookmark */;
     492                        E14A27290CDF0D3300A5BD78 /* PBXTextBookmark */ = E14A27290CDF0D3300A5BD78 /* PBXTextBookmark */;
     493                        E14A272A0CDF0D3300A5BD78 /* PBXTextBookmark */ = E14A272A0CDF0D3300A5BD78 /* PBXTextBookmark */;
     494                        E14A272D0CDF0D3300A5BD78 /* PBXTextBookmark */ = E14A272D0CDF0D3300A5BD78 /* PBXTextBookmark */;
     495                        E14A272E0CDF0D3300A5BD78 /* PBXTextBookmark */ = E14A272E0CDF0D3300A5BD78 /* PBXTextBookmark */;
     496                        E14A27310CDF0D3300A5BD78 /* PBXTextBookmark */ = E14A27310CDF0D3300A5BD78 /* PBXTextBookmark */;
     497                        E14A27330CDF0D3300A5BD78 /* PBXTextBookmark */ = E14A27330CDF0D3300A5BD78 /* PBXTextBookmark */;
     498                        E14A27370CDF0D7700A5BD78 /* PBXTextBookmark */ = E14A27370CDF0D7700A5BD78 /* PBXTextBookmark */;
     499                        E14A27380CDF0D7700A5BD78 /* PBXTextBookmark */ = E14A27380CDF0D7700A5BD78 /* PBXTextBookmark */;
     500                        E14A27390CDF0D7700A5BD78 /* PBXTextBookmark */ = E14A27390CDF0D7700A5BD78 /* PBXTextBookmark */;
     501                        E14A273A0CDF0D7700A5BD78 /* PBXTextBookmark */ = E14A273A0CDF0D7700A5BD78 /* PBXTextBookmark */;
     502                        E14A273B0CDF0D7700A5BD78 /* PBXTextBookmark */ = E14A273B0CDF0D7700A5BD78 /* PBXTextBookmark */;
     503                        E14A273C0CDF0D7F00A5BD78 /* PBXTextBookmark */ = E14A273C0CDF0D7F00A5BD78 /* PBXTextBookmark */;
     504                        E14A273D0CDF0D7F00A5BD78 /* PBXTextBookmark */ = E14A273D0CDF0D7F00A5BD78 /* PBXTextBookmark */;
     505                        E14A273E0CDF0D7F00A5BD78 /* PBXTextBookmark */ = E14A273E0CDF0D7F00A5BD78 /* PBXTextBookmark */;
     506                        E14A273F0CDF0D7F00A5BD78 /* PBXTextBookmark */ = E14A273F0CDF0D7F00A5BD78 /* PBXTextBookmark */;
     507                        E14A27400CDF0D7F00A5BD78 /* PBXTextBookmark */ = E14A27400CDF0D7F00A5BD78 /* PBXTextBookmark */;
     508                        E14A27420CDF0DA300A5BD78 /* PBXTextBookmark */ = E14A27420CDF0DA300A5BD78 /* PBXTextBookmark */;
     509                        E14A27430CDF0DA300A5BD78 /* PBXTextBookmark */ = E14A27430CDF0DA300A5BD78 /* PBXTextBookmark */;
     510                        E14A27440CDF0DA300A5BD78 /* PBXTextBookmark */ = E14A27440CDF0DA300A5BD78 /* PBXTextBookmark */;
     511                        E14A27450CDF0DA300A5BD78 /* PBXTextBookmark */ = E14A27450CDF0DA300A5BD78 /* PBXTextBookmark */;
     512                        E14A27460CDF0DA300A5BD78 /* PBXTextBookmark */ = E14A27460CDF0DA300A5BD78 /* PBXTextBookmark */;
     513                        E14A27490CDF0E4A00A5BD78 /* PBXTextBookmark */ = E14A27490CDF0E4A00A5BD78 /* PBXTextBookmark */;
     514                        E14A274A0CDF0E4A00A5BD78 /* PBXTextBookmark */ = E14A274A0CDF0E4A00A5BD78 /* PBXTextBookmark */;
     515                        E14A274B0CDF0E4A00A5BD78 /* PBXTextBookmark */ = E14A274B0CDF0E4A00A5BD78 /* PBXTextBookmark */;
     516                        E14A274C0CDF0E4A00A5BD78 /* PBXTextBookmark */ = E14A274C0CDF0E4A00A5BD78 /* PBXTextBookmark */;
     517                        E14A274D0CDF0E4A00A5BD78 /* PBXTextBookmark */ = E14A274D0CDF0E4A00A5BD78 /* PBXTextBookmark */;
     518                        E14A274F0CDF0E7E00A5BD78 /* PBXTextBookmark */ = E14A274F0CDF0E7E00A5BD78 /* PBXTextBookmark */;
     519                        E14A27500CDF0E7E00A5BD78 /* PBXTextBookmark */ = E14A27500CDF0E7E00A5BD78 /* PBXTextBookmark */;
     520                        E14A27510CDF0E7E00A5BD78 /* PBXTextBookmark */ = E14A27510CDF0E7E00A5BD78 /* PBXTextBookmark */;
     521                        E14A27520CDF0E7E00A5BD78 /* PBXTextBookmark */ = E14A27520CDF0E7E00A5BD78 /* PBXTextBookmark */;
     522                        E14A27530CDF0E7E00A5BD78 /* PBXTextBookmark */ = E14A27530CDF0E7E00A5BD78 /* PBXTextBookmark */;
     523                        E14A27540CDF114900A5BD78 /* PBXTextBookmark */ = E14A27540CDF114900A5BD78 /* PBXTextBookmark */;
     524                        E14A27560CDF114900A5BD78 /* PBXTextBookmark */ = E14A27560CDF114900A5BD78 /* PBXTextBookmark */;
     525                        E14A27570CDF114900A5BD78 /* PBXTextBookmark */ = E14A27570CDF114900A5BD78 /* PBXTextBookmark */;
     526                        E14A27590CDF114900A5BD78 /* PBXTextBookmark */ = E14A27590CDF114900A5BD78 /* PBXTextBookmark */;
     527                        E14A275A0CDF114A00A5BD78 /* PBXTextBookmark */ = E14A275A0CDF114A00A5BD78 /* PBXTextBookmark */;
     528                        E14A275B0CDF114A00A5BD78 /* PBXTextBookmark */ = E14A275B0CDF114A00A5BD78 /* PBXTextBookmark */;
     529                        E14A275C0CDF114A00A5BD78 /* PBXTextBookmark */ = E14A275C0CDF114A00A5BD78 /* PBXTextBookmark */;
     530                        E14A275D0CDF114A00A5BD78 /* PBXTextBookmark */ = E14A275D0CDF114A00A5BD78 /* PBXTextBookmark */;
     531                        E14A275E0CDF114A00A5BD78 /* PBXTextBookmark */ = E14A275E0CDF114A00A5BD78 /* PBXTextBookmark */;
     532                        E14A27610CDF14A000A5BD78 /* PBXTextBookmark */ = E14A27610CDF14A000A5BD78 /* PBXTextBookmark */;
     533                        E14A27620CDF14A000A5BD78 /* PBXTextBookmark */ = E14A27620CDF14A000A5BD78 /* PBXTextBookmark */;
     534                        E14A27650CDF14A000A5BD78 /* PBXTextBookmark */ = E14A27650CDF14A000A5BD78 /* PBXTextBookmark */;
     535                        E14A27660CDF14A000A5BD78 /* PBXTextBookmark */ = E14A27660CDF14A000A5BD78 /* PBXTextBookmark */;
     536                        E14A27670CDF14A000A5BD78 /* PBXTextBookmark */ = E14A27670CDF14A000A5BD78 /* PBXTextBookmark */;
     537                        E14A27680CDF14A000A5BD78 /* PBXTextBookmark */ = E14A27680CDF14A000A5BD78 /* PBXTextBookmark */;
     538                        E14A27710CDF14CD00A5BD78 /* PBXTextBookmark */ = E14A27710CDF14CD00A5BD78 /* PBXTextBookmark */;
     539                        E14A27720CDF14CD00A5BD78 /* PBXTextBookmark */ = E14A27720CDF14CD00A5BD78 /* PBXTextBookmark */;
     540                        E14A27730CDF14CD00A5BD78 /* PBXTextBookmark */ = E14A27730CDF14CD00A5BD78 /* PBXTextBookmark */;
     541                        E14A27740CDF14CD00A5BD78 /* PBXTextBookmark */ = E14A27740CDF14CD00A5BD78 /* PBXTextBookmark */;
     542                        E14A27750CDF14CD00A5BD78 /* PBXTextBookmark */ = E14A27750CDF14CD00A5BD78 /* PBXTextBookmark */;
     543                        E14A277E0CDF176000A5BD78 /* PBXTextBookmark */ = E14A277E0CDF176000A5BD78 /* PBXTextBookmark */;
     544                        E14A27850CDF179100A5BD78 /* PBXTextBookmark */ = E14A27850CDF179100A5BD78 /* PBXTextBookmark */;
     545                        E14A27860CDF179100A5BD78 /* PBXTextBookmark */ = E14A27860CDF179100A5BD78 /* PBXTextBookmark */;
     546                        E14A27870CDF179100A5BD78 /* PBXTextBookmark */ = E14A27870CDF179100A5BD78 /* PBXTextBookmark */;
     547                        E14A27880CDF179100A5BD78 /* PBXTextBookmark */ = E14A27880CDF179100A5BD78 /* PBXTextBookmark */;
     548                        E14A27890CDF179100A5BD78 /* PBXTextBookmark */ = E14A27890CDF179100A5BD78 /* PBXTextBookmark */;
     549                        E14A278A0CDF179100A5BD78 /* PBXTextBookmark */ = E14A278A0CDF179100A5BD78 /* PBXTextBookmark */;
     550                        E14A278C0CDF17DA00A5BD78 /* PBXTextBookmark */ = E14A278C0CDF17DA00A5BD78 /* PBXTextBookmark */;
     551                        E14A278D0CDF17DA00A5BD78 /* PBXTextBookmark */ = E14A278D0CDF17DA00A5BD78 /* PBXTextBookmark */;
     552                        E14A278E0CDF17DF00A5BD78 /* PBXTextBookmark */ = E14A278E0CDF17DF00A5BD78 /* PBXTextBookmark */;
     553                        E14A278F0CDF17E200A5BD78 /* PBXTextBookmark */ = E14A278F0CDF17E200A5BD78 /* PBXTextBookmark */;
     554                        E14A27900CDF17E200A5BD78 /* PBXTextBookmark */ = E14A27900CDF17E200A5BD78 /* PBXTextBookmark */;
     555                        E14A27910CDF17ED00A5BD78 /* PBXTextBookmark */ = E14A27910CDF17ED00A5BD78 /* PBXTextBookmark */;
     556                        E14A27960CDF19B300A5BD78 /* PBXTextBookmark */ = E14A27960CDF19B300A5BD78 /* PBXTextBookmark */;
     557                        E14A27970CDF19B300A5BD78 /* PBXTextBookmark */ = E14A27970CDF19B300A5BD78 /* PBXTextBookmark */;
     558                        E14A27980CDF19F500A5BD78 /* PBXBookmark */ = E14A27980CDF19F500A5BD78 /* PBXBookmark */;
     559                        E14A27990CDF19FA00A5BD78 /* PBXBookmark */ = E14A27990CDF19FA00A5BD78 /* PBXBookmark */;
     560                        E14A279C0CDF1A0700A5BD78 /* PBXTextBookmark */ = E14A279C0CDF1A0700A5BD78 /* PBXTextBookmark */;
     561                        E14A279D0CDF1A0700A5BD78 /* PBXTextBookmark */ = E14A279D0CDF1A0700A5BD78 /* PBXTextBookmark */;
     562                        E14A279E0CDF1A0700A5BD78 /* PBXTextBookmark */ = E14A279E0CDF1A0700A5BD78 /* PBXTextBookmark */;
     563                        E14A27A10CDF1A0700A5BD78 /* PBXTextBookmark */ = E14A27A10CDF1A0700A5BD78 /* PBXTextBookmark */;
     564                        E14A27A50CDF1ADE00A5BD78 /* PBXTextBookmark */ = E14A27A50CDF1ADE00A5BD78 /* PBXTextBookmark */;
     565                        E14A27A70CDF1ADE00A5BD78 /* PBXTextBookmark */ = E14A27A70CDF1ADE00A5BD78 /* PBXTextBookmark */;
     566                        E14A27A90CDF1ADE00A5BD78 /* PBXTextBookmark */ = E14A27A90CDF1ADE00A5BD78 /* PBXTextBookmark */;
     567                        E14A27AA0CDF1ADE00A5BD78 /* PBXTextBookmark */ = E14A27AA0CDF1ADE00A5BD78 /* PBXTextBookmark */;
     568                        E14A27AB0CDF1ADE00A5BD78 /* PBXTextBookmark */ = E14A27AB0CDF1ADE00A5BD78 /* PBXTextBookmark */;
     569                        E14A27AF0CDF1B2600A5BD78 /* PBXTextBookmark */ = E14A27AF0CDF1B2600A5BD78 /* PBXTextBookmark */;
     570                        E14A27B00CDF1B2600A5BD78 /* PBXTextBookmark */ = E14A27B00CDF1B2600A5BD78 /* PBXTextBookmark */;
     571                        E14A27B10CDF1B2600A5BD78 /* PBXTextBookmark */ = E14A27B10CDF1B2600A5BD78 /* PBXTextBookmark */;
     572                        E14A27B20CDF1B2600A5BD78 /* PBXTextBookmark */ = E14A27B20CDF1B2600A5BD78 /* PBXTextBookmark */;
     573                        E14A27B30CDF1B2600A5BD78 /* PBXTextBookmark */ = E14A27B30CDF1B2600A5BD78 /* PBXTextBookmark */;
     574                        E14A27B40CDF1B2600A5BD78 /* PBXTextBookmark */ = E14A27B40CDF1B2600A5BD78 /* PBXTextBookmark */;
     575                        E14A27B50CDF1BB000A5BD78 /* PBXTextBookmark */ = E14A27B50CDF1BB000A5BD78 /* PBXTextBookmark */;
     576                        E14A27B70CDF1BB400A5BD78 /* PBXTextBookmark */ = E14A27B70CDF1BB400A5BD78 /* PBXTextBookmark */;
     577                        E14A27B80CDF1BB400A5BD78 /* PBXTextBookmark */ = E14A27B80CDF1BB400A5BD78 /* PBXTextBookmark */;
     578                        E14A27B90CDF1BB400A5BD78 /* PBXTextBookmark */ = E14A27B90CDF1BB400A5BD78 /* PBXTextBookmark */;
     579                        E14A27BA0CDF1BB400A5BD78 /* PBXTextBookmark */ = E14A27BA0CDF1BB400A5BD78 /* PBXTextBookmark */;
     580                        E14A27BB0CDF1C0100A5BD78 /* PBXTextBookmark */ = E14A27BB0CDF1C0100A5BD78 /* PBXTextBookmark */;
     581                        E14A27BC0CDF1C0100A5BD78 /* PBXTextBookmark */ = E14A27BC0CDF1C0100A5BD78 /* PBXTextBookmark */;
     582                        E14A27BD0CDF1C0100A5BD78 /* PBXTextBookmark */ = E14A27BD0CDF1C0100A5BD78 /* PBXTextBookmark */;
     583                        E14A27BE0CDF1C0100A5BD78 /* PBXTextBookmark */ = E14A27BE0CDF1C0100A5BD78 /* PBXTextBookmark */;
     584                        E14A27BF0CDF1C2000A5BD78 /* PBXTextBookmark */ = E14A27BF0CDF1C2000A5BD78 /* PBXTextBookmark */;
     585                        E14A27C00CDF1C2000A5BD78 /* PBXTextBookmark */ = E14A27C00CDF1C2000A5BD78 /* PBXTextBookmark */;
     586                        E14A27C10CDF1C2000A5BD78 /* PBXTextBookmark */ = E14A27C10CDF1C2000A5BD78 /* PBXTextBookmark */;
     587                        E14A27C20CDF1C2000A5BD78 /* PBXTextBookmark */ = E14A27C20CDF1C2000A5BD78 /* PBXTextBookmark */;
     588                        E14A27D00CDF1D7000A5BD78 /* PBXTextBookmark */ = E14A27D00CDF1D7000A5BD78 /* PBXTextBookmark */;
     589                        E14A27D30CDF1D7000A5BD78 /* XCDiffFileBookmark */ = E14A27D30CDF1D7000A5BD78 /* XCDiffFileBookmark */;
     590                        E14A27D40CDF1D7000A5BD78 /* PBXBookmark */ = E14A27D40CDF1D7000A5BD78 /* PBXBookmark */;
     591                        E14A27D80CDF1D7000A5BD78 /* XCDiffFileBookmark */ = E14A27D80CDF1D7000A5BD78 /* XCDiffFileBookmark */;
     592                        E14A27D90CDF1D7000A5BD78 /* PBXBookmark */ = E14A27D90CDF1D7000A5BD78 /* PBXBookmark */;
     593                        E14A27DB0CDF1D7000A5BD78 /* PBXTextBookmark */ = E14A27DB0CDF1D7000A5BD78 /* PBXTextBookmark */;
     594                        E14A27DC0CDF1D7000A5BD78 /* PBXTextBookmark */ = E14A27DC0CDF1D7000A5BD78 /* PBXTextBookmark */;
     595                        E14A27DD0CDF1D7000A5BD78 /* PBXTextBookmark */ = E14A27DD0CDF1D7000A5BD78 /* PBXTextBookmark */;
     596                        E14A27DF0CDF1E4400A5BD78 /* PBXTextBookmark */ = E14A27DF0CDF1E4400A5BD78 /* PBXTextBookmark */;
     597                        E14A27E00CDF1E4400A5BD78 /* PBXBookmark */ = E14A27E00CDF1E4400A5BD78 /* PBXBookmark */;
     598                        E14A27E20CDF1E4400A5BD78 /* PBXBookmark */ = E14A27E20CDF1E4400A5BD78 /* PBXBookmark */;
     599                        E14A27E40CDF1E4400A5BD78 /* PBXTextBookmark */ = E14A27E40CDF1E4400A5BD78 /* PBXTextBookmark */;
     600                        E14A27E50CDF1E4400A5BD78 /* PBXTextBookmark */ = E14A27E50CDF1E4400A5BD78 /* PBXTextBookmark */;
     601                        E14A27E60CDF1E4400A5BD78 /* PBXTextBookmark */ = E14A27E60CDF1E4400A5BD78 /* PBXTextBookmark */;
     602                        E14A27E80CDF1E5200A5BD78 /* PBXTextBookmark */ = E14A27E80CDF1E5200A5BD78 /* PBXTextBookmark */;
     603                        E14A27E90CDF1E5200A5BD78 /* PBXBookmark */ = E14A27E90CDF1E5200A5BD78 /* PBXBookmark */;
     604                        E14A27EB0CDF1E5200A5BD78 /* PBXBookmark */ = E14A27EB0CDF1E5200A5BD78 /* PBXBookmark */;
     605                        E14A27ED0CDF1E5200A5BD78 /* PBXTextBookmark */ = E14A27ED0CDF1E5200A5BD78 /* PBXTextBookmark */;
     606                        E14A27EE0CDF1E5200A5BD78 /* PBXTextBookmark */ = E14A27EE0CDF1E5200A5BD78 /* PBXTextBookmark */;
     607                        E14A27EF0CDF1E5200A5BD78 /* PBXTextBookmark */ = E14A27EF0CDF1E5200A5BD78 /* PBXTextBookmark */;
     608                        E14A27F10CDF1E5D00A5BD78 /* PBXTextBookmark */ = E14A27F10CDF1E5D00A5BD78 /* PBXTextBookmark */;
     609                        E14A27F20CDF1E5D00A5BD78 /* PBXBookmark */ = E14A27F20CDF1E5D00A5BD78 /* PBXBookmark */;
     610                        E14A27F40CDF1E5D00A5BD78 /* PBXBookmark */ = E14A27F40CDF1E5D00A5BD78 /* PBXBookmark */;
     611                        E14A27F60CDF1E5D00A5BD78 /* PBXTextBookmark */ = E14A27F60CDF1E5D00A5BD78 /* PBXTextBookmark */;
     612                        E14A27F70CDF1E5D00A5BD78 /* PBXTextBookmark */ = E14A27F70CDF1E5D00A5BD78 /* PBXTextBookmark */;
     613                        E14A27F80CDF1E5D00A5BD78 /* PBXTextBookmark */ = E14A27F80CDF1E5D00A5BD78 /* PBXTextBookmark */;
     614                        E14A27FC0CDF1F7100A5BD78 /* PBXTextBookmark */ = E14A27FC0CDF1F7100A5BD78 /* PBXTextBookmark */;
     615                        E14A27FD0CDF1F7100A5BD78 /* PBXTextBookmark */ = E14A27FD0CDF1F7100A5BD78 /* PBXTextBookmark */;
     616                        E14A27FE0CDF1F7100A5BD78 /* PBXBookmark */ = E14A27FE0CDF1F7100A5BD78 /* PBXBookmark */;
     617                        E14A28000CDF1F7100A5BD78 /* PBXBookmark */ = E14A28000CDF1F7100A5BD78 /* PBXBookmark */;
     618                        E14A28020CDF1F7100A5BD78 /* PBXTextBookmark */ = E14A28020CDF1F7100A5BD78 /* PBXTextBookmark */;
     619                        E14A28030CDF1F7100A5BD78 /* PBXTextBookmark */ = E14A28030CDF1F7100A5BD78 /* PBXTextBookmark */;
     620                        E14A28060CDF1F9B00A5BD78 /* PBXTextBookmark */ = E14A28060CDF1F9B00A5BD78 /* PBXTextBookmark */;
     621                        E14A28070CDF1F9B00A5BD78 /* PBXBookmark */ = E14A28070CDF1F9B00A5BD78 /* PBXBookmark */;
     622                        E14A28090CDF1F9B00A5BD78 /* PBXBookmark */ = E14A28090CDF1F9B00A5BD78 /* PBXBookmark */;
     623                        E14A280B0CDF1F9B00A5BD78 /* PBXTextBookmark */ = E14A280B0CDF1F9B00A5BD78 /* PBXTextBookmark */;
     624                        E14A280C0CDF1F9B00A5BD78 /* PBXTextBookmark */ = E14A280C0CDF1F9B00A5BD78 /* PBXTextBookmark */;
     625                        E14A280E0CDF203F00A5BD78 /* PBXBookmark */ = E14A280E0CDF203F00A5BD78 /* PBXBookmark */;
     626                        E14A28100CDF206E00A5BD78 /* PBXTextBookmark */ = E14A28100CDF206E00A5BD78 /* PBXTextBookmark */;
     627                        E14A28110CDF206E00A5BD78 /* PBXTextBookmark */ = E14A28110CDF206E00A5BD78 /* PBXTextBookmark */;
     628                        E14A28140CDF206E00A5BD78 /* PBXTextBookmark */ = E14A28140CDF206E00A5BD78 /* PBXTextBookmark */;
     629                        E14A28150CDF206E00A5BD78 /* PBXBookmark */ = E14A28150CDF206E00A5BD78 /* PBXBookmark */;
     630                        E14A28170CDF206E00A5BD78 /* PBXBookmark */ = E14A28170CDF206E00A5BD78 /* PBXBookmark */;
     631                        E14A28190CDF206E00A5BD78 /* PBXTextBookmark */ = E14A28190CDF206E00A5BD78 /* PBXTextBookmark */;
     632                        E14A28210CDF20F700A5BD78 /* PBXTextBookmark */ = E14A28210CDF20F700A5BD78 /* PBXTextBookmark */;
     633                        E14A28220CDF20F700A5BD78 /* PBXBookmark */ = E14A28220CDF20F700A5BD78 /* PBXBookmark */;
     634                        E14A28240CDF20F700A5BD78 /* PBXTextBookmark */ = E14A28240CDF20F700A5BD78 /* PBXTextBookmark */;
     635                        E14A28250CDF20F700A5BD78 /* PBXTextBookmark */ = E14A28250CDF20F700A5BD78 /* PBXTextBookmark */;
     636                        E14A28340CDF227400A5BD78 /* XCDiffFileBookmark */ = E14A28340CDF227400A5BD78 /* XCDiffFileBookmark */;
     637                        E14A28350CDF227400A5BD78 /* PBXBookmark */ = E14A28350CDF227400A5BD78 /* PBXBookmark */;
    483638                };
    484639                sourceControlManager = E18A0A29063362FF008DC67C /* Source Control */;
     
    488643        08FB7796FE84155DC02AAC07 /* main.c */ = {
    489644                uiCtxt = {
    490                         sepNavIntBoundsRect = "{{0, 0}, {837, 5592}}";
    491                         sepNavSelRange = "{4075, 0}";
     645                        sepNavIntBoundsRect = "{{0, 0}, {758, 5434}}";
     646                        sepNavSelRange = "{18618, 0}";
     647                        sepNavVisRange = "{17632, 3183}";
    492648                        sepNavVisRect = "{{0, 853}, {837, 587}}";
    493                         sepNavWindowFrame = "{{89, 50}, {817, 930}}";
     649                        sepNavWindowFrame = "{{45, 224}, {817, 930}}";
    494650                };
    495651        };
    496652        C6859E970290921104C91782 /* appswitch.1 */ = {
    497653                uiCtxt = {
    498                         sepNavIntBoundsRect = "{{0, 0}, {530, 2027}}";
    499                         sepNavSelRange = "{122, 0}";
     654                        sepNavIntBoundsRect = "{{0, 0}, {771, 1837}}";
     655                        sepNavSelRange = "{121, 0}";
     656                        sepNavVisRange = "{0, 2535}";
    500657                        sepNavVisRect = "{{0, 1494}, {530, 533}}";
     658                        sepNavWindowFrame = "{{222, 158}, {830, 826}}";
    501659                };
     660        };
     661        E14A26D70CDEFF8900A5BD78 /* PBXTextBookmark */ = {
     662                isa = PBXTextBookmark;
     663                comments = "warning: passing argument 1 of 'CPSPostShowAllReq' from incompatible pointer type";
     664                fRef = 08FB7796FE84155DC02AAC07 /* main.c */;
     665                rLen = 1;
     666                rLoc = 463;
     667                rType = 1;
     668        };
     669        E14A26D80CDEFF8900A5BD78 /* PBXTextBookmark */ = {
     670                isa = PBXTextBookmark;
     671                fRef = 08FB7796FE84155DC02AAC07 /* main.c */;
     672                name = "main.c: 433";
     673                rLen = 87;
     674                rLoc = 19845;
     675                rType = 0;
     676                vrLen = 2063;
     677                vrLoc = 16910;
     678        };
     679        E14A26E10CDF006A00A5BD78 /* PBXTextBookmark */ = {
     680                isa = PBXTextBookmark;
     681                fRef = 08FB7796FE84155DC02AAC07 /* main.c */;
     682                name = "main.c: 433";
     683                rLen = 87;
     684                rLoc = 19845;
     685                rType = 0;
     686                vrLen = 2048;
     687                vrLoc = 16910;
     688        };
     689        E14A26F60CDF017100A5BD78 /* PBXTextBookmark */ = {
     690                isa = PBXTextBookmark;
     691                comments = "warning: passing argument 1 of 'CPSPostShowAllReq' from incompatible pointer type";
     692                fRef = 08FB7796FE84155DC02AAC07 /* main.c */;
     693                rLen = 1;
     694                rLoc = 463;
     695                rType = 1;
     696        };
     697        E14A26F70CDF017100A5BD78 /* PBXTextBookmark */ = {
     698                isa = PBXTextBookmark;
     699                fRef = 08FB7796FE84155DC02AAC07 /* main.c */;
     700                name = "main.c: 433";
     701                rLen = 87;
     702                rLoc = 19845;
     703                rType = 0;
     704                vrLen = 2146;
     705                vrLoc = 16760;
     706        };
     707        E14A26FD0CDF018800A5BD78 /* PBXTextBookmark */ = {
     708                isa = PBXTextBookmark;
     709                fRef = 08FB7796FE84155DC02AAC07 /* main.c */;
     710                rLen = 0;
     711                rLoc = 309;
     712                rType = 1;
     713        };
     714        E14A26FE0CDF018800A5BD78 /* PBXTextBookmark */ = {
     715                isa = PBXTextBookmark;
     716                fRef = 08FB7796FE84155DC02AAC07 /* main.c */;
     717                name = "main.c: 320";
     718                rLen = 22;
     719                rLoc = 12811;
     720                rType = 0;
     721                vrLen = 3452;
     722                vrLoc = 11973;
     723        };
     724        E14A27050CDF02A600A5BD78 /* PBXTextBookmark */ = {
     725                isa = PBXTextBookmark;
     726                fRef = 08FB7796FE84155DC02AAC07 /* main.c */;
     727                name = "main.c: 345";
     728                rLen = 0;
     729                rLoc = 13081;
     730                rType = 0;
     731                vrLen = 3027;
     732                vrLoc = 11413;
     733        };
     734        E14A27180CDF09BD00A5BD78 /* PBXTextBookmark */ = {
     735                isa = PBXTextBookmark;
     736                fRef = 08FB7796FE84155DC02AAC07 /* main.c */;
     737                name = "main.c: 305";
     738                rLen = 0;
     739                rLoc = 12791;
     740                rType = 0;
     741                vrLen = 0;
     742                vrLoc = 0;
     743        };
     744        E14A271A0CDF09BD00A5BD78 /* PBXTextBookmark */ = {
     745                isa = PBXTextBookmark;
     746                fRef = 08FB7796FE84155DC02AAC07 /* main.c */;
     747                rLen = 1;
     748                rLoc = 128;
     749                rType = 1;
     750        };
     751        E14A271B0CDF09BD00A5BD78 /* PBXTextBookmark */ = {
     752                isa = PBXTextBookmark;
     753                fRef = 08FB7796FE84155DC02AAC07 /* main.c */;
     754                name = "main.c: 400";
     755                rLen = 0;
     756                rLoc = 17695;
     757                rType = 0;
     758                vrLen = 3259;
     759                vrLoc = 14361;
     760        };
     761        E14A271D0CDF0A7200A5BD78 /* PBXTextBookmark */ = {
     762                isa = PBXTextBookmark;
     763                fRef = 08FB7796FE84155DC02AAC07 /* main.c */;
     764                name = "main.c: 305";
     765                rLen = 0;
     766                rLoc = 12791;
     767                rType = 0;
     768                vrLen = 0;
     769                vrLoc = 0;
     770        };
     771        E14A271E0CDF0A7200A5BD78 /* PBXTextBookmark */ = {
     772                isa = PBXTextBookmark;
     773                fRef = 08FB7796FE84155DC02AAC07 /* main.c */;
     774                name = "main.c: 394";
     775                rLen = 0;
     776                rLoc = 17333;
     777                rType = 0;
     778                vrLen = 3406;
     779                vrLoc = 14361;
     780        };
     781        E14A271F0CDF0AF700A5BD78 /* PBXTextBookmark */ = {
     782                isa = PBXTextBookmark;
     783                fRef = 08FB7796FE84155DC02AAC07 /* main.c */;
     784                name = "main.c: 453";
     785                rLen = 87;
     786                rLoc = 19845;
     787                rType = 0;
     788                vrLen = 2540;
     789                vrLoc = 13518;
     790        };
     791        E14A27200CDF0B2200A5BD78 /* PBXTextBookmark */ = {
     792                isa = PBXTextBookmark;
     793                comments = "warning: passing argument 3 of 'CFStringCreateWithFormat' from incompatible pointer type";
     794                fRef = 08FB7796FE84155DC02AAC07 /* main.c */;
     795                rLen = 0;
     796                rLoc = 319;
     797                rType = 1;
     798        };
     799        E14A27220CDF0B2C00A5BD78 /* PBXBookmark */ = {
     800                isa = PBXBookmark;
     801                fRef = E16C83CC03F7AF7B00050002 /* README */;
     802        };
     803        E14A27280CDF0D3300A5BD78 /* PBXTextBookmark */ = {
     804                isa = PBXTextBookmark;
     805                fRef = E16C83CC03F7AF7B00050002 /* README */;
     806                name = "README: 78";
     807                rLen = 0;
     808                rLoc = 2658;
     809                rType = 0;
     810                vrLen = 2808;
     811                vrLoc = 806;
     812        };
     813        E14A27290CDF0D3300A5BD78 /* PBXTextBookmark */ = {
     814                isa = PBXTextBookmark;
     815                fRef = 08FB7796FE84155DC02AAC07 /* main.c */;
     816                name = "main.c: 348";
     817                rLen = 0;
     818                rLoc = 13081;
     819                rType = 0;
     820                vrLen = 0;
     821                vrLoc = 0;
     822        };
     823        E14A272A0CDF0D3300A5BD78 /* PBXTextBookmark */ = {
     824                isa = PBXTextBookmark;
     825                fRef = 08FB7796FE84155DC02AAC07 /* main.c */;
     826                name = "main.c: 465";
     827                rLen = 0;
     828                rLoc = 20311;
     829                rType = 0;
     830                vrLen = 3119;
     831                vrLoc = 17008;
     832        };
     833        E14A272D0CDF0D3300A5BD78 /* PBXTextBookmark */ = {
     834                isa = PBXTextBookmark;
     835                fRef = E1A0BD3203EFAD9E00050001 /* CPS.h */;
     836                rLen = 0;
     837                rLoc = 22;
     838                rType = 1;
     839        };
     840        E14A272E0CDF0D3300A5BD78 /* PBXTextBookmark */ = {
     841                isa = PBXTextBookmark;
     842                fRef = E1A0BD3203EFAD9E00050001 /* CPS.h */;
     843                name = "CPS.h: 25";
     844                rLen = 0;
     845                rLoc = 445;
     846                rType = 0;
     847                vrLen = 634;
     848                vrLoc = 0;
     849        };
     850        E14A27310CDF0D3300A5BD78 /* PBXTextBookmark */ = {
     851                isa = PBXTextBookmark;
     852                fRef = E14A27320CDF0D3300A5BD78 /* MacTypes.h */;
     853                rLen = 1;
     854                rLoc = 462;
     855                rType = 1;
     856        };
     857        E14A27320CDF0D3300A5BD78 /* MacTypes.h */ = {
     858                isa = PBXFileReference;
     859                lastKnownFileType = sourcecode.c.h;
     860                name = MacTypes.h;
     861                path = /Developer/SDKs/MacOSX10.4u.sdk/System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/CarbonCore.framework/Versions/A/Headers/MacTypes.h;
     862                sourceTree = "<absolute>";
     863        };
     864        E14A27330CDF0D3300A5BD78 /* PBXTextBookmark */ = {
     865                isa = PBXTextBookmark;
     866                fRef = E14A27340CDF0D3300A5BD78 /* MacTypes.h */;
     867                name = "MacTypes.h: 463";
     868                rLen = 29;
     869                rLoc = 19089;
     870                rType = 0;
     871                vrLen = 2917;
     872                vrLoc = 17751;
     873        };
     874        E14A27340CDF0D3300A5BD78 /* MacTypes.h */ = {
     875                isa = PBXFileReference;
     876                lastKnownFileType = sourcecode.c.h;
     877                name = MacTypes.h;
     878                path = /Developer/SDKs/MacOSX10.4u.sdk/System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/CarbonCore.framework/Versions/A/Headers/MacTypes.h;
     879                sourceTree = "<absolute>";
     880                uiCtxt = {
     881                        sepNavIntBoundsRect = "{{0, 0}, {771, 8351}}";
     882                        sepNavSelRange = "{19089, 29}";
     883                        sepNavVisRange = "{17751, 2988}";
     884                        sepNavWindowFrame = "{{153, 221}, {830, 826}}";
     885                };
     886        };
     887        E14A27370CDF0D7700A5BD78 /* PBXTextBookmark */ = {
     888                isa = PBXTextBookmark;
     889                fRef = E16C83CC03F7AF7B00050002 /* README */;
     890                name = "README: 78";
     891                rLen = 0;
     892                rLoc = 2658;
     893                rType = 0;
     894                vrLen = 2808;
     895                vrLoc = 806;
     896        };
     897        E14A27380CDF0D7700A5BD78 /* PBXTextBookmark */ = {
     898                isa = PBXTextBookmark;
     899                fRef = 08FB7796FE84155DC02AAC07 /* main.c */;
     900                name = "main.c: 348";
     901                rLen = 0;
     902                rLoc = 13081;
     903                rType = 0;
     904                vrLen = 0;
     905                vrLoc = 0;
     906        };
     907        E14A27390CDF0D7700A5BD78 /* PBXTextBookmark */ = {
     908                isa = PBXTextBookmark;
     909                fRef = 08FB7796FE84155DC02AAC07 /* main.c */;
     910                name = "main.c: 465";
     911                rLen = 0;
     912                rLoc = 20311;
     913                rType = 0;
     914                vrLen = 3146;
     915                vrLoc = 16976;
     916        };
     917        E14A273A0CDF0D7700A5BD78 /* PBXTextBookmark */ = {
     918                isa = PBXTextBookmark;
     919                fRef = E1A0BD3203EFAD9E00050001 /* CPS.h */;
     920                name = "CPS.h: 25";
     921                rLen = 0;
     922                rLoc = 445;
     923                rType = 0;
     924                vrLen = 634;
     925                vrLoc = 0;
     926        };
     927        E14A273B0CDF0D7700A5BD78 /* PBXTextBookmark */ = {
     928                isa = PBXTextBookmark;
     929                fRef = E14A27340CDF0D3300A5BD78 /* MacTypes.h */;
     930                name = "MacTypes.h: 463";
     931                rLen = 29;
     932                rLoc = 19089;
     933                rType = 0;
     934                vrLen = 2917;
     935                vrLoc = 17751;
     936        };
     937        E14A273C0CDF0D7F00A5BD78 /* PBXTextBookmark */ = {
     938                isa = PBXTextBookmark;
     939                fRef = E16C83CC03F7AF7B00050002 /* README */;
     940                name = "README: 78";
     941                rLen = 0;
     942                rLoc = 2658;
     943                rType = 0;
     944                vrLen = 2808;
     945                vrLoc = 806;
     946        };
     947        E14A273D0CDF0D7F00A5BD78 /* PBXTextBookmark */ = {
     948                isa = PBXTextBookmark;
     949                fRef = 08FB7796FE84155DC02AAC07 /* main.c */;
     950                name = "main.c: 348";
     951                rLen = 0;
     952                rLoc = 13081;
     953                rType = 0;
     954                vrLen = 0;
     955                vrLoc = 0;
     956        };
     957        E14A273E0CDF0D7F00A5BD78 /* PBXTextBookmark */ = {
     958                isa = PBXTextBookmark;
     959                fRef = 08FB7796FE84155DC02AAC07 /* main.c */;
     960                name = "main.c: 465";
     961                rLen = 0;
     962                rLoc = 20311;
     963                rType = 0;
     964                vrLen = 3119;
     965                vrLoc = 16948;
     966        };
     967        E14A273F0CDF0D7F00A5BD78 /* PBXTextBookmark */ = {
     968                isa = PBXTextBookmark;
     969                fRef = E1A0BD3203EFAD9E00050001 /* CPS.h */;
     970                name = "CPS.h: 25";
     971                rLen = 0;
     972                rLoc = 445;
     973                rType = 0;
     974                vrLen = 634;
     975                vrLoc = 0;
     976        };
     977        E14A27400CDF0D7F00A5BD78 /* PBXTextBookmark */ = {
     978                isa = PBXTextBookmark;
     979                fRef = E14A27340CDF0D3300A5BD78 /* MacTypes.h */;
     980                name = "MacTypes.h: 463";
     981                rLen = 29;
     982                rLoc = 19089;
     983                rType = 0;
     984                vrLen = 2917;
     985                vrLoc = 17751;
     986        };
     987        E14A27420CDF0DA300A5BD78 /* PBXTextBookmark */ = {
     988                isa = PBXTextBookmark;
     989                fRef = E16C83CC03F7AF7B00050002 /* README */;
     990                name = "README: 78";
     991                rLen = 0;
     992                rLoc = 2658;
     993                rType = 0;
     994                vrLen = 2808;
     995                vrLoc = 806;
     996        };
     997        E14A27430CDF0DA300A5BD78 /* PBXTextBookmark */ = {
     998                isa = PBXTextBookmark;
     999                fRef = 08FB7796FE84155DC02AAC07 /* main.c */;
     1000                name = "main.c: 348";
     1001                rLen = 0;
     1002                rLoc = 13081;
     1003                rType = 0;
     1004                vrLen = 0;
     1005                vrLoc = 0;
     1006        };
     1007        E14A27440CDF0DA300A5BD78 /* PBXTextBookmark */ = {
     1008                isa = PBXTextBookmark;
     1009                fRef = 08FB7796FE84155DC02AAC07 /* main.c */;
     1010                name = "main.c: 466";
     1011                rLen = 0;
     1012                rLoc = 20311;
     1013                rType = 0;
     1014                vrLen = 3119;
     1015                vrLoc = 16974;
     1016        };
     1017        E14A27450CDF0DA300A5BD78 /* PBXTextBookmark */ = {
     1018                isa = PBXTextBookmark;
     1019                fRef = E1A0BD3203EFAD9E00050001 /* CPS.h */;
     1020                name = "CPS.h: 25";
     1021                rLen = 0;
     1022                rLoc = 445;
     1023                rType = 0;
     1024                vrLen = 634;
     1025                vrLoc = 0;
     1026        };
     1027        E14A27460CDF0DA300A5BD78 /* PBXTextBookmark */ = {
     1028                isa = PBXTextBookmark;
     1029                fRef = E14A27340CDF0D3300A5BD78 /* MacTypes.h */;
     1030                name = "MacTypes.h: 463";
     1031                rLen = 29;
     1032                rLoc = 19089;
     1033                rType = 0;
     1034                vrLen = 2917;
     1035                vrLoc = 17751;
     1036        };
     1037        E14A27490CDF0E4A00A5BD78 /* PBXTextBookmark */ = {
     1038                isa = PBXTextBookmark;
     1039                fRef = E16C83CC03F7AF7B00050002 /* README */;
     1040                name = "README: 78";
     1041                rLen = 0;
     1042                rLoc = 2658;
     1043                rType = 0;
     1044                vrLen = 2808;
     1045                vrLoc = 806;
     1046        };
     1047        E14A274A0CDF0E4A00A5BD78 /* PBXTextBookmark */ = {
     1048                isa = PBXTextBookmark;
     1049                fRef = 08FB7796FE84155DC02AAC07 /* main.c */;
     1050                name = "main.c: 348";
     1051                rLen = 0;
     1052                rLoc = 13081;
     1053                rType = 0;
     1054                vrLen = 0;
     1055                vrLoc = 0;
     1056        };
     1057        E14A274B0CDF0E4A00A5BD78 /* PBXTextBookmark */ = {
     1058                isa = PBXTextBookmark;
     1059                fRef = 08FB7796FE84155DC02AAC07 /* main.c */;
     1060                name = "main.c: 469";
     1061                rLen = 0;
     1062                rLoc = 20311;
     1063                rType = 0;
     1064                vrLen = 3467;
     1065                vrLoc = 15556;
     1066        };
     1067        E14A274C0CDF0E4A00A5BD78 /* PBXTextBookmark */ = {
     1068                isa = PBXTextBookmark;
     1069                fRef = E1A0BD3203EFAD9E00050001 /* CPS.h */;
     1070                name = "CPS.h: 25";
     1071                rLen = 0;
     1072                rLoc = 445;
     1073                rType = 0;
     1074                vrLen = 634;
     1075                vrLoc = 0;
     1076        };
     1077        E14A274D0CDF0E4A00A5BD78 /* PBXTextBookmark */ = {
     1078                isa = PBXTextBookmark;
     1079                fRef = E14A27340CDF0D3300A5BD78 /* MacTypes.h */;
     1080                name = "MacTypes.h: 463";
     1081                rLen = 29;
     1082                rLoc = 19089;
     1083                rType = 0;
     1084                vrLen = 2917;
     1085                vrLoc = 17751;
     1086        };
     1087        E14A274F0CDF0E7E00A5BD78 /* PBXTextBookmark */ = {
     1088                isa = PBXTextBookmark;
     1089                fRef = E16C83CC03F7AF7B00050002 /* README */;
     1090                name = "README: 78";
     1091                rLen = 0;
     1092                rLoc = 2658;
     1093                rType = 0;
     1094                vrLen = 2808;
     1095                vrLoc = 806;
     1096        };
     1097        E14A27500CDF0E7E00A5BD78 /* PBXTextBookmark */ = {
     1098                isa = PBXTextBookmark;
     1099                fRef = 08FB7796FE84155DC02AAC07 /* main.c */;
     1100                name = "main.c: 348";
     1101                rLen = 0;
     1102                rLoc = 13081;
     1103                rType = 0;
     1104                vrLen = 0;
     1105                vrLoc = 0;
     1106        };
     1107        E14A27510CDF0E7E00A5BD78 /* PBXTextBookmark */ = {
     1108                isa = PBXTextBookmark;
     1109                fRef = 08FB7796FE84155DC02AAC07 /* main.c */;
     1110                name = "main.c: 470";
     1111                rLen = 0;
     1112                rLoc = 20311;
     1113                rType = 0;
     1114                vrLen = 3467;
     1115                vrLoc = 15576;
     1116        };
     1117        E14A27520CDF0E7E00A5BD78 /* PBXTextBookmark */ = {
     1118                isa = PBXTextBookmark;
     1119                fRef = E1A0BD3203EFAD9E00050001 /* CPS.h */;
     1120                name = "CPS.h: 25";
     1121                rLen = 0;
     1122                rLoc = 445;
     1123                rType = 0;
     1124                vrLen = 634;
     1125                vrLoc = 0;
     1126        };
     1127        E14A27530CDF0E7E00A5BD78 /* PBXTextBookmark */ = {
     1128                isa = PBXTextBookmark;
     1129                fRef = E14A27340CDF0D3300A5BD78 /* MacTypes.h */;
     1130                name = "MacTypes.h: 463";
     1131                rLen = 29;
     1132                rLoc = 19089;
     1133                rType = 0;
     1134                vrLen = 2917;
     1135                vrLoc = 17751;
     1136        };
     1137        E14A27540CDF114900A5BD78 /* PBXTextBookmark */ = {
     1138                isa = PBXTextBookmark;
     1139                fRef = E14A27550CDF114900A5BD78 /* CFString.h */;
     1140                name = "CFString.h: 198";
     1141                rLen = 24;
     1142                rLoc = 9597;
     1143                rType = 0;
     1144                vrLen = 2534;
     1145                vrLoc = 8228;
     1146        };
     1147        E14A27550CDF114900A5BD78 /* CFString.h */ = {
     1148                isa = PBXFileReference;
     1149                name = CFString.h;
     1150                path = /Developer/SDKs/MacOSX10.4u.sdk/System/Library/Frameworks/CoreFoundation.framework/Versions/A/Headers/CFString.h;
     1151                sourceTree = "<absolute>";
     1152        };
     1153        E14A27560CDF114900A5BD78 /* PBXTextBookmark */ = {
     1154                isa = PBXTextBookmark;
     1155                fRef = 08FB7796FE84155DC02AAC07 /* main.c */;
     1156                name = "main.c: 386";
     1157                rLen = 24;
     1158                rLoc = 16603;
     1159                rType = 0;
     1160                vrLen = 2691;
     1161                vrLoc = 14682;
     1162        };
     1163        E14A27570CDF114900A5BD78 /* PBXTextBookmark */ = {
     1164                isa = PBXTextBookmark;
     1165                fRef = E14A27580CDF114900A5BD78 /* CFString.h */;
     1166                name = "CFString.h: 198";
     1167                rLen = 24;
     1168                rLoc = 9597;
     1169                rType = 0;
     1170                vrLen = 2534;
     1171                vrLoc = 8228;
     1172        };
     1173        E14A27580CDF114900A5BD78 /* CFString.h */ = {
     1174                isa = PBXFileReference;
     1175                lastKnownFileType = sourcecode.c.h;
     1176                name = CFString.h;
     1177                path = /Developer/SDKs/MacOSX10.4u.sdk/System/Library/Frameworks/CoreFoundation.framework/Versions/A/Headers/CFString.h;
     1178                sourceTree = "<absolute>";
     1179                uiCtxt = {
     1180                        sepNavIntBoundsRect = "{{0, 0}, {771, 8954}}";
     1181                        sepNavSelRange = "{28902, 109}";
     1182                        sepNavVisRange = "{26506, 3241}";
     1183                        sepNavWindowFrame = "{{881, 120}, {830, 826}}";
     1184                };
     1185        };
     1186        E14A27590CDF114900A5BD78 /* PBXTextBookmark */ = {
     1187                isa = PBXTextBookmark;
     1188                fRef = 08FB7796FE84155DC02AAC07 /* main.c */;
     1189                name = "main.c: 363";
     1190                rLen = 0;
     1191                rLoc = 16462;
     1192                rType = 0;
     1193                vrLen = 2440;
     1194                vrLoc = 14576;
     1195        };
     1196        E14A275A0CDF114A00A5BD78 /* PBXTextBookmark */ = {
     1197                isa = PBXTextBookmark;
     1198                fRef = E16C83CC03F7AF7B00050002 /* README */;
     1199                name = "README: 78";
     1200                rLen = 0;
     1201                rLoc = 2658;
     1202                rType = 0;
     1203                vrLen = 2808;
     1204                vrLoc = 806;
     1205        };
     1206        E14A275B0CDF114A00A5BD78 /* PBXTextBookmark */ = {
     1207                isa = PBXTextBookmark;
     1208                fRef = 08FB7796FE84155DC02AAC07 /* main.c */;
     1209                name = "main.c: 323";
     1210                rLen = 0;
     1211                rLoc = 13081;
     1212                rType = 0;
     1213                vrLen = 0;
     1214                vrLoc = 0;
     1215        };
     1216        E14A275C0CDF114A00A5BD78 /* PBXTextBookmark */ = {
     1217                isa = PBXTextBookmark;
     1218                fRef = 08FB7796FE84155DC02AAC07 /* main.c */;
     1219                name = "main.c: 448";
     1220                rLen = 0;
     1221                rLoc = 20311;
     1222                rType = 0;
     1223                vrLen = 3279;
     1224                vrLoc = 15946;
     1225        };
     1226        E14A275D0CDF114A00A5BD78 /* PBXTextBookmark */ = {
     1227                isa = PBXTextBookmark;
     1228                fRef = E1A0BD3203EFAD9E00050001 /* CPS.h */;
     1229                name = "CPS.h: 25";
     1230                rLen = 0;
     1231                rLoc = 445;
     1232                rType = 0;
     1233                vrLen = 634;
     1234                vrLoc = 0;
     1235        };
     1236        E14A275E0CDF114A00A5BD78 /* PBXTextBookmark */ = {
     1237                isa = PBXTextBookmark;
     1238                fRef = E14A27340CDF0D3300A5BD78 /* MacTypes.h */;
     1239                name = "MacTypes.h: 463";
     1240                rLen = 29;
     1241                rLoc = 19089;
     1242                rType = 0;
     1243                vrLen = 2917;
     1244                vrLoc = 17751;
     1245        };
     1246        E14A27610CDF14A000A5BD78 /* PBXTextBookmark */ = {
     1247                isa = PBXTextBookmark;
     1248                fRef = 08FB7796FE84155DC02AAC07 /* main.c */;
     1249                name = "main.c: 477";
     1250                rLen = 0;
     1251                rLoc = 20815;
     1252                rType = 0;
     1253                vrLen = 0;
     1254                vrLoc = 0;
     1255        };
     1256        E14A27620CDF14A000A5BD78 /* PBXTextBookmark */ = {
     1257                isa = PBXTextBookmark;
     1258                fRef = 08FB7796FE84155DC02AAC07 /* main.c */;
     1259                name = "main.c: 307";
     1260                rLen = 4;
     1261                rLoc = 13077;
     1262                rType = 0;
     1263                vrLen = 3390;
     1264                vrLoc = 11764;
     1265        };
     1266        E14A27650CDF14A000A5BD78 /* PBXTextBookmark */ = {
     1267                isa = PBXTextBookmark;
     1268                fRef = E14A27580CDF114900A5BD78 /* CFString.h */;
     1269                rLen = 1;
     1270                rLoc = 331;
     1271                rType = 1;
     1272        };
     1273        E14A27660CDF14A000A5BD78 /* PBXTextBookmark */ = {
     1274                isa = PBXTextBookmark;
     1275                fRef = E14A27580CDF114900A5BD78 /* CFString.h */;
     1276                name = "CFString.h: 319";
     1277                rLen = 33;
     1278                rLoc = 16195;
     1279                rType = 0;
     1280                vrLen = 3118;
     1281                vrLoc = 15656;
     1282        };
     1283        E14A27670CDF14A000A5BD78 /* PBXTextBookmark */ = {
     1284                isa = PBXTextBookmark;
     1285                fRef = E1A0BD3203EFAD9E00050001 /* CPS.h */;
     1286                name = "CPS.h: 25";
     1287                rLen = 0;
     1288                rLoc = 445;
     1289                rType = 0;
     1290                vrLen = 634;
     1291                vrLoc = 0;
     1292        };
     1293        E14A27680CDF14A000A5BD78 /* PBXTextBookmark */ = {
     1294                isa = PBXTextBookmark;
     1295                fRef = E14A27340CDF0D3300A5BD78 /* MacTypes.h */;
     1296                name = "MacTypes.h: 463";
     1297                rLen = 29;
     1298                rLoc = 19089;
     1299                rType = 0;
     1300                vrLen = 2917;
     1301                vrLoc = 17751;
     1302        };
     1303        E14A27710CDF14CD00A5BD78 /* PBXTextBookmark */ = {
     1304                isa = PBXTextBookmark;
     1305                fRef = 08FB7796FE84155DC02AAC07 /* main.c */;
     1306                name = "main.c: 477";
     1307                rLen = 0;
     1308                rLoc = 20815;
     1309                rType = 0;
     1310                vrLen = 0;
     1311                vrLoc = 0;
     1312        };
     1313        E14A27720CDF14CD00A5BD78 /* PBXTextBookmark */ = {
     1314                isa = PBXTextBookmark;
     1315                fRef = 08FB7796FE84155DC02AAC07 /* main.c */;
     1316                name = "main.c: 318";
     1317                rLen = 1;
     1318                rLoc = 13676;
     1319                rType = 0;
     1320                vrLen = 3489;
     1321                vrLoc = 11892;
     1322        };
     1323        E14A27730CDF14CD00A5BD78 /* PBXTextBookmark */ = {
     1324                isa = PBXTextBookmark;
     1325                fRef = E14A27580CDF114900A5BD78 /* CFString.h */;
     1326                name = "CFString.h: 319";
     1327                rLen = 33;
     1328                rLoc = 16195;
     1329                rType = 0;
     1330                vrLen = 3118;
     1331                vrLoc = 15656;
     1332        };
     1333        E14A27740CDF14CD00A5BD78 /* PBXTextBookmark */ = {
     1334                isa = PBXTextBookmark;
     1335                fRef = E1A0BD3203EFAD9E00050001 /* CPS.h */;
     1336                name = "CPS.h: 25";
     1337                rLen = 0;
     1338                rLoc = 445;
     1339                rType = 0;
     1340                vrLen = 634;
     1341                vrLoc = 0;
     1342        };
     1343        E14A27750CDF14CD00A5BD78 /* PBXTextBookmark */ = {
     1344                isa = PBXTextBookmark;
     1345                fRef = E14A27340CDF0D3300A5BD78 /* MacTypes.h */;
     1346                name = "MacTypes.h: 463";
     1347                rLen = 29;
     1348                rLoc = 19089;
     1349                rType = 0;
     1350                vrLen = 2917;
     1351                vrLoc = 17751;
     1352        };
     1353        E14A277E0CDF176000A5BD78 /* PBXTextBookmark */ = {
     1354                isa = PBXTextBookmark;
     1355                comments = "warning: unused variable 'nameWidth'";
     1356                fRef = 08FB7796FE84155DC02AAC07 /* main.c */;
     1357                rLen = 1;
     1358                rLoc = 318;
     1359                rType = 1;
     1360        };
     1361        E14A27850CDF179100A5BD78 /* PBXTextBookmark */ = {
     1362                isa = PBXTextBookmark;
     1363                fRef = 08FB7796FE84155DC02AAC07 /* main.c */;
     1364                name = "main.c: 306";
     1365                rLen = 28;
     1366                rLoc = 13037;
     1367                rType = 0;
     1368                vrLen = 0;
     1369                vrLoc = 0;
     1370        };
     1371        E14A27860CDF179100A5BD78 /* PBXTextBookmark */ = {
     1372                isa = PBXTextBookmark;
     1373                fRef = 08FB7796FE84155DC02AAC07 /* main.c */;
     1374                name = "main.c: 334";
     1375                rLen = 0;
     1376                rLoc = 14359;
     1377                rType = 0;
     1378                vrLen = 3506;
     1379                vrLoc = 12266;
     1380        };
     1381        E14A27870CDF179100A5BD78 /* PBXTextBookmark */ = {
     1382                isa = PBXTextBookmark;
     1383                fRef = E1A0BD3203EFAD9E00050001 /* CPS.h */;
     1384                name = "CPS.h: 25";
     1385                rLen = 0;
     1386                rLoc = 445;
     1387                rType = 0;
     1388                vrLen = 634;
     1389                vrLoc = 0;
     1390        };
     1391        E14A27880CDF179100A5BD78 /* PBXTextBookmark */ = {
     1392                isa = PBXTextBookmark;
     1393                fRef = E14A27340CDF0D3300A5BD78 /* MacTypes.h */;
     1394                name = "MacTypes.h: 463";
     1395                rLen = 29;
     1396                rLoc = 19089;
     1397                rType = 0;
     1398                vrLen = 2917;
     1399                vrLoc = 17751;
     1400        };
     1401        E14A27890CDF179100A5BD78 /* PBXTextBookmark */ = {
     1402                isa = PBXTextBookmark;
     1403                fRef = E14A27580CDF114900A5BD78 /* CFString.h */;
     1404                rLen = 1;
     1405                rLoc = 548;
     1406                rType = 1;
     1407        };
     1408        E14A278A0CDF179100A5BD78 /* PBXTextBookmark */ = {
     1409                isa = PBXTextBookmark;
     1410                fRef = E14A27580CDF114900A5BD78 /* CFString.h */;
     1411                name = "CFString.h: 549";
     1412                rLen = 109;
     1413                rLoc = 28902;
     1414                rType = 0;
     1415                vrLen = 3230;
     1416                vrLoc = 26506;
     1417        };
     1418        E14A278C0CDF17DA00A5BD78 /* PBXTextBookmark */ = {
     1419                isa = PBXTextBookmark;
     1420                comments = "error: 'struct <anonymous>' has no member named 'longlist'";
     1421                fRef = 08FB7796FE84155DC02AAC07 /* main.c */;
     1422                rLen = 0;
     1423                rLoc = 414;
     1424                rType = 1;
     1425        };
     1426        E14A278D0CDF17DA00A5BD78 /* PBXTextBookmark */ = {
     1427                isa = PBXTextBookmark;
     1428                fRef = 08FB7796FE84155DC02AAC07 /* main.c */;
     1429                name = "main.c: 387";
     1430                rLen = 0;
     1431                rLoc = 16901;
     1432                rType = 0;
     1433                vrLen = 2114;
     1434                vrLoc = 16233;
     1435        };
     1436        E14A278E0CDF17DF00A5BD78 /* PBXTextBookmark */ = {
     1437                isa = PBXTextBookmark;
     1438                fRef = 08FB7796FE84155DC02AAC07 /* main.c */;
     1439                name = "main.c: 387";
     1440                rLen = 0;
     1441                rLoc = 16901;
     1442                rType = 0;
     1443                vrLen = 2114;
     1444                vrLoc = 16233;
     1445        };
     1446        E14A278F0CDF17E200A5BD78 /* PBXTextBookmark */ = {
     1447                isa = PBXTextBookmark;
     1448                fRef = 08FB7796FE84155DC02AAC07 /* main.c */;
     1449                name = "main.c: 306";
     1450                rLen = 28;
     1451                rLoc = 13037;
     1452                rType = 0;
     1453                vrLen = 0;
     1454                vrLoc = 0;
     1455        };
     1456        E14A27900CDF17E200A5BD78 /* PBXTextBookmark */ = {
     1457                isa = PBXTextBookmark;
     1458                fRef = 08FB7796FE84155DC02AAC07 /* main.c */;
     1459                name = "main.c: 320";
     1460                rLen = 0;
     1461                rLoc = 13780;
     1462                rType = 0;
     1463                vrLen = 3634;
     1464                vrLoc = 12138;
     1465        };
     1466        E14A27910CDF17ED00A5BD78 /* PBXTextBookmark */ = {
     1467                isa = PBXTextBookmark;
     1468                fRef = 08FB7796FE84155DC02AAC07 /* main.c */;
     1469                name = "main.c: 387";
     1470                rLen = 0;
     1471                rLoc = 16901;
     1472                rType = 0;
     1473                vrLen = 2114;
     1474                vrLoc = 16233;
     1475        };
     1476        E14A27960CDF19B300A5BD78 /* PBXTextBookmark */ = {
     1477                isa = PBXTextBookmark;
     1478                fRef = 08FB7796FE84155DC02AAC07 /* main.c */;
     1479                name = "main.c: 318";
     1480                rLen = 28;
     1481                rLoc = 13037;
     1482                rType = 0;
     1483                vrLen = 0;
     1484                vrLoc = 0;
     1485        };
     1486        E14A27970CDF19B300A5BD78 /* PBXTextBookmark */ = {
     1487                isa = PBXTextBookmark;
     1488                fRef = 08FB7796FE84155DC02AAC07 /* main.c */;
     1489                name = "main.c: 375";
     1490                rLen = 0;
     1491                rLoc = 15900;
     1492                rType = 0;
     1493                vrLen = 3749;
     1494                vrLoc = 14021;
     1495        };
     1496        E14A27980CDF19F500A5BD78 /* PBXBookmark */ = {
     1497                isa = PBXBookmark;
     1498                fRef = C6859E970290921104C91782 /* appswitch.1 */;
     1499        };
     1500        E14A27990CDF19FA00A5BD78 /* PBXBookmark */ = {
     1501                isa = PBXBookmark;
     1502                fRef = E16C83CC03F7AF7B00050002 /* README */;
     1503        };
     1504        E14A279C0CDF1A0700A5BD78 /* PBXTextBookmark */ = {
     1505                isa = PBXTextBookmark;
     1506                fRef = C6859E970290921104C91782 /* appswitch.1 */;
     1507                name = "appswitch.1: 52";
     1508                rLen = 9;
     1509                rLoc = 1950;
     1510                rType = 0;
     1511                vrLen = 2535;
     1512                vrLoc = 0;
     1513        };
     1514        E14A279D0CDF1A0700A5BD78 /* PBXTextBookmark */ = {
     1515                isa = PBXTextBookmark;
     1516                fRef = 08FB7796FE84155DC02AAC07 /* main.c */;
     1517                name = "main.c: 318";
     1518                rLen = 28;
     1519                rLoc = 13037;
     1520                rType = 0;
     1521                vrLen = 0;
     1522                vrLoc = 0;
     1523        };
     1524        E14A279E0CDF1A0700A5BD78 /* PBXTextBookmark */ = {
     1525                isa = PBXTextBookmark;
     1526                fRef = 08FB7796FE84155DC02AAC07 /* main.c */;
     1527                name = "main.c: 28";
     1528                rLen = 0;
     1529                rLoc = 1773;
     1530                rType = 0;
     1531                vrLen = 2857;
     1532                vrLoc = 1577;
     1533        };
     1534        E14A27A10CDF1A0700A5BD78 /* PBXTextBookmark */ = {
     1535                isa = PBXTextBookmark;
     1536                fRef = E16C83CC03F7AF7B00050002 /* README */;
     1537                name = "README: 78";
     1538                rLen = 0;
     1539                rLoc = 2658;
     1540                rType = 0;
     1541                vrLen = 2889;
     1542                vrLoc = 46;
     1543        };
     1544        E14A27A50CDF1ADE00A5BD78 /* PBXTextBookmark */ = {
     1545                isa = PBXTextBookmark;
     1546                fRef = E14A27A60CDF1ADE00A5BD78 /* Processes.h */;
     1547                rLen = 1;
     1548                rLoc = 801;
     1549                rType = 1;
     1550        };
     1551        E14A27A60CDF1ADE00A5BD78 /* Processes.h */ = {
     1552                isa = PBXFileReference;
     1553                lastKnownFileType = sourcecode.c.h;
     1554                name = Processes.h;
     1555                path = /Developer/SDKs/MacOSX10.4u.sdk/System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/HIServices.framework/Versions/A/Headers/Processes.h;
     1556                sourceTree = "<absolute>";
     1557        };
     1558        E14A27A70CDF1ADE00A5BD78 /* PBXTextBookmark */ = {
     1559                isa = PBXTextBookmark;
     1560                fRef = E14A27A80CDF1ADE00A5BD78 /* Processes.h */;
     1561                name = "Processes.h: 799";
     1562                rLen = 0;
     1563                rLoc = 27925;
     1564                rType = 0;
     1565                vrLen = 2319;
     1566                vrLoc = 26823;
     1567        };
     1568        E14A27A80CDF1ADE00A5BD78 /* Processes.h */ = {
     1569                isa = PBXFileReference;
     1570                lastKnownFileType = sourcecode.c.h;
     1571                name = Processes.h;
     1572                path = /Developer/SDKs/MacOSX10.4u.sdk/System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/HIServices.framework/Versions/A/Headers/Processes.h;
     1573                sourceTree = "<absolute>";
     1574                uiCtxt = {
     1575                        sepNavIntBoundsRect = "{{0, 0}, {771, 10144}}";
     1576                        sepNavSelRange = "{27925, 0}";
     1577                        sepNavVisRange = "{26823, 2319}";
     1578                        sepNavWindowFrame = "{{245, 137}, {830, 826}}";
     1579                };
     1580        };
     1581        E14A27A90CDF1ADE00A5BD78 /* PBXTextBookmark */ = {
     1582                isa = PBXTextBookmark;
     1583                fRef = 08FB7796FE84155DC02AAC07 /* main.c */;
     1584                name = "main.c: 439";
     1585                rLen = 0;
     1586                rLoc = 18725;
     1587                rType = 0;
     1588                vrLen = 3400;
     1589                vrLoc = 16794;
     1590        };
     1591        E14A27AA0CDF1ADE00A5BD78 /* PBXTextBookmark */ = {
     1592                isa = PBXTextBookmark;
     1593                fRef = E16C83CC03F7AF7B00050002 /* README */;
     1594                name = "README: 78";
     1595                rLen = 0;
     1596                rLoc = 2658;
     1597                rType = 0;
     1598                vrLen = 2822;
     1599                vrLoc = 792;
     1600        };
     1601        E14A27AB0CDF1ADE00A5BD78 /* PBXTextBookmark */ = {
     1602                isa = PBXTextBookmark;
     1603                fRef = C6859E970290921104C91782 /* appswitch.1 */;
     1604                name = "appswitch.1: 52";
     1605                rLen = 9;
     1606                rLoc = 1950;
     1607                rType = 0;
     1608                vrLen = 2535;
     1609                vrLoc = 0;
     1610        };
     1611        E14A27AF0CDF1B2600A5BD78 /* PBXTextBookmark */ = {
     1612                isa = PBXTextBookmark;
     1613                fRef = E16C83CC03F7AF7B00050002 /* README */;
     1614                name = "README: 78";
     1615                rLen = 0;
     1616                rLoc = 2658;
     1617                rType = 0;
     1618                vrLen = 2822;
     1619                vrLoc = 792;
     1620        };
     1621        E14A27B00CDF1B2600A5BD78 /* PBXTextBookmark */ = {
     1622                isa = PBXTextBookmark;
     1623                fRef = E16C83CC03F7AF7B00050002 /* README */;
     1624                name = "README: 76";
     1625                rLen = 0;
     1626                rLoc = 2583;
     1627                rType = 0;
     1628                vrLen = 2874;
     1629                vrLoc = 742;
     1630        };
     1631        E14A27B10CDF1B2600A5BD78 /* PBXTextBookmark */ = {
     1632                isa = PBXTextBookmark;
     1633                fRef = C6859E970290921104C91782 /* appswitch.1 */;
     1634                name = "appswitch.1: 52";
     1635                rLen = 9;
     1636                rLoc = 1950;
     1637                rType = 0;
     1638                vrLen = 2535;
     1639                vrLoc = 0;
     1640        };
     1641        E14A27B20CDF1B2600A5BD78 /* PBXTextBookmark */ = {
     1642                isa = PBXTextBookmark;
     1643                fRef = C6859E970290921104C91782 /* appswitch.1 */;
     1644                name = "appswitch.1: 52";
     1645                rLen = 9;
     1646                rLoc = 1950;
     1647                rType = 0;
     1648                vrLen = 2535;
     1649                vrLoc = 0;
     1650        };
     1651        E14A27B30CDF1B2600A5BD78 /* PBXTextBookmark */ = {
     1652                isa = PBXTextBookmark;
     1653                fRef = E14A27A80CDF1ADE00A5BD78 /* Processes.h */;
     1654                name = "Processes.h: 799";
     1655                rLen = 0;
     1656                rLoc = 27925;
     1657                rType = 0;
     1658                vrLen = 2319;
     1659                vrLoc = 26823;
     1660        };
     1661        E14A27B40CDF1B2600A5BD78 /* PBXTextBookmark */ = {
     1662                isa = PBXTextBookmark;
     1663                fRef = 08FB7796FE84155DC02AAC07 /* main.c */;
     1664                name = "main.c: 439";
     1665                rLen = 0;
     1666                rLoc = 18725;
     1667                rType = 0;
     1668                vrLen = 3400;
     1669                vrLoc = 16794;
     1670        };
     1671        E14A27B50CDF1BB000A5BD78 /* PBXTextBookmark */ = {
     1672                isa = PBXTextBookmark;
     1673                fRef = 08FB7796FE84155DC02AAC07 /* main.c */;
     1674                name = "main.c: 439";
     1675                rLen = 0;
     1676                rLoc = 18725;
     1677                rType = 0;
     1678                vrLen = 2112;
     1679                vrLoc = 16503;
     1680        };
     1681        E14A27B70CDF1BB400A5BD78 /* PBXTextBookmark */ = {
     1682                isa = PBXTextBookmark;
     1683                fRef = 08FB7796FE84155DC02AAC07 /* main.c */;
     1684                name = "main.c: 387";
     1685                rLen = 0;
     1686                rLoc = 16721;
     1687                rType = 0;
     1688                vrLen = 3871;
     1689                vrLoc = 14112;
     1690        };
     1691        E14A27B80CDF1BB400A5BD78 /* PBXTextBookmark */ = {
     1692                isa = PBXTextBookmark;
     1693                fRef = E16C83CC03F7AF7B00050002 /* README */;
     1694                name = "README: 76";
     1695                rLen = 0;
     1696                rLoc = 2583;
     1697                rType = 0;
     1698                vrLen = 2874;
     1699                vrLoc = 742;
     1700        };
     1701        E14A27B90CDF1BB400A5BD78 /* PBXTextBookmark */ = {
     1702                isa = PBXTextBookmark;
     1703                fRef = C6859E970290921104C91782 /* appswitch.1 */;
     1704                name = "appswitch.1: 52";
     1705                rLen = 9;
     1706                rLoc = 1950;
     1707                rType = 0;
     1708                vrLen = 2535;
     1709                vrLoc = 0;
     1710        };
     1711        E14A27BA0CDF1BB400A5BD78 /* PBXTextBookmark */ = {
     1712                isa = PBXTextBookmark;
     1713                fRef = E14A27A80CDF1ADE00A5BD78 /* Processes.h */;
     1714                name = "Processes.h: 799";
     1715                rLen = 0;
     1716                rLoc = 27925;
     1717                rType = 0;
     1718                vrLen = 2319;
     1719                vrLoc = 26823;
     1720        };
     1721        E14A27BB0CDF1C0100A5BD78 /* PBXTextBookmark */ = {
     1722                isa = PBXTextBookmark;
     1723                fRef = 08FB7796FE84155DC02AAC07 /* main.c */;
     1724                name = "main.c: 460";
     1725                rLen = 0;
     1726                rLoc = 19778;
     1727                rType = 0;
     1728                vrLen = 3198;
     1729                vrLoc = 17383;
     1730        };
     1731        E14A27BC0CDF1C0100A5BD78 /* PBXTextBookmark */ = {
     1732                isa = PBXTextBookmark;
     1733                fRef = E16C83CC03F7AF7B00050002 /* README */;
     1734                name = "README: 76";
     1735                rLen = 0;
     1736                rLoc = 2583;
     1737                rType = 0;
     1738                vrLen = 2874;
     1739                vrLoc = 742;
     1740        };
     1741        E14A27BD0CDF1C0100A5BD78 /* PBXTextBookmark */ = {
     1742                isa = PBXTextBookmark;
     1743                fRef = C6859E970290921104C91782 /* appswitch.1 */;
     1744                name = "appswitch.1: 52";
     1745                rLen = 9;
     1746                rLoc = 1950;
     1747                rType = 0;
     1748                vrLen = 2535;
     1749                vrLoc = 0;
     1750        };
     1751        E14A27BE0CDF1C0100A5BD78 /* PBXTextBookmark */ = {
     1752                isa = PBXTextBookmark;
     1753                fRef = E14A27A80CDF1ADE00A5BD78 /* Processes.h */;
     1754                name = "Processes.h: 799";
     1755                rLen = 0;
     1756                rLoc = 27925;
     1757                rType = 0;
     1758                vrLen = 2319;
     1759                vrLoc = 26823;
     1760        };
     1761        E14A27BF0CDF1C2000A5BD78 /* PBXTextBookmark */ = {
     1762                isa = PBXTextBookmark;
     1763                fRef = 08FB7796FE84155DC02AAC07 /* main.c */;
     1764                name = "main.c: 461";
     1765                rLen = 0;
     1766                rLoc = 19822;
     1767                rType = 0;
     1768                vrLen = 3269;
     1769                vrLoc = 17383;
     1770        };
     1771        E14A27C00CDF1C2000A5BD78 /* PBXTextBookmark */ = {
     1772                isa = PBXTextBookmark;
     1773                fRef = E16C83CC03F7AF7B00050002 /* README */;
     1774                name = "README: 76";
     1775                rLen = 0;
     1776                rLoc = 2583;
     1777                rType = 0;
     1778                vrLen = 2874;
     1779                vrLoc = 742;
     1780        };
     1781        E14A27C10CDF1C2000A5BD78 /* PBXTextBookmark */ = {
     1782                isa = PBXTextBookmark;
     1783                fRef = C6859E970290921104C91782 /* appswitch.1 */;
     1784                name = "appswitch.1: 52";
     1785                rLen = 9;
     1786                rLoc = 1950;
     1787                rType = 0;
     1788                vrLen = 2535;
     1789                vrLoc = 0;
     1790        };
     1791        E14A27C20CDF1C2000A5BD78 /* PBXTextBookmark */ = {
     1792                isa = PBXTextBookmark;
     1793                fRef = E14A27A80CDF1ADE00A5BD78 /* Processes.h */;
     1794                name = "Processes.h: 799";
     1795                rLen = 0;
     1796                rLoc = 27925;
     1797                rType = 0;
     1798                vrLen = 2319;
     1799                vrLoc = 26823;
     1800        };
     1801        E14A27D00CDF1D7000A5BD78 /* PBXTextBookmark */ = {
     1802                isa = PBXTextBookmark;
     1803                fRef = 08FB7796FE84155DC02AAC07 /* main.c */;
     1804                name = "main.c: 440";
     1805                rLen = 0;
     1806                rLoc = 18833;
     1807                rType = 0;
     1808                vrLen = 3254;
     1809                vrLoc = 17383;
     1810        };
     1811        E14A27D30CDF1D7000A5BD78 /* XCDiffFileBookmark */ = {
     1812                isa = XCDiffFileBookmark;
     1813                id = "FC92E1D7-34BE-4D2B-A225-DC7D879F8514-23114-0000E5334FC47619";
     1814        };
     1815        E14A27D40CDF1D7000A5BD78 /* PBXBookmark */ = {
     1816                isa = PBXBookmark;
     1817                fRef = E14A27D50CDF1D7000A5BD78 /* CPS.h - SCM */;
     1818        };
     1819        E14A27D50CDF1D7000A5BD78 /* CPS.h - SCM */ = {
     1820                isa = PBXFileReference;
     1821                path = "CPS.h - SCM";
     1822                sourceTree = "<group>";
     1823        };
     1824        E14A27D80CDF1D7000A5BD78 /* XCDiffFileBookmark */ = {
     1825                isa = XCDiffFileBookmark;
     1826                id = "C21A30A2-78B3-470E-8AD7-C494FB896B3A-23114-0000E52E1DE45AC1";
     1827        };
     1828        E14A27D90CDF1D7000A5BD78 /* PBXBookmark */ = {
     1829                isa = PBXBookmark;
     1830                fRef = E14A27DA0CDF1D7000A5BD78 /* main.c - SCM */;
     1831        };
     1832        E14A27DA0CDF1D7000A5BD78 /* main.c - SCM */ = {
     1833                isa = PBXFileReference;
     1834                path = "main.c - SCM";
     1835                sourceTree = "<group>";
     1836        };
     1837        E14A27DB0CDF1D7000A5BD78 /* PBXTextBookmark */ = {
     1838                isa = PBXTextBookmark;
     1839                fRef = E16C83CC03F7AF7B00050002 /* README */;
     1840                name = "README: 76";
     1841                rLen = 0;
     1842                rLoc = 2583;
     1843                rType = 0;
     1844                vrLen = 2874;
     1845                vrLoc = 742;
     1846        };
     1847        E14A27DC0CDF1D7000A5BD78 /* PBXTextBookmark */ = {
     1848                isa = PBXTextBookmark;
     1849                fRef = C6859E970290921104C91782 /* appswitch.1 */;
     1850                name = "appswitch.1: 52";
     1851                rLen = 9;
     1852                rLoc = 1950;
     1853                rType = 0;
     1854                vrLen = 2535;
     1855                vrLoc = 0;
     1856        };
     1857        E14A27DD0CDF1D7000A5BD78 /* PBXTextBookmark */ = {
     1858                isa = PBXTextBookmark;
     1859                fRef = E14A27A80CDF1ADE00A5BD78 /* Processes.h */;
     1860                name = "Processes.h: 799";
     1861                rLen = 0;
     1862                rLoc = 27925;
     1863                rType = 0;
     1864                vrLen = 2319;
     1865                vrLoc = 26823;
     1866        };
     1867        E14A27DF0CDF1E4400A5BD78 /* PBXTextBookmark */ = {
     1868                isa = PBXTextBookmark;
     1869                fRef = 08FB7796FE84155DC02AAC07 /* main.c */;
     1870                name = "main.c: 468";
     1871                rLen = 0;
     1872                rLoc = 20172;
     1873                rType = 0;
     1874                vrLen = 3254;
     1875                vrLoc = 17383;
     1876        };
     1877        E14A27E00CDF1E4400A5BD78 /* PBXBookmark */ = {
     1878                isa = PBXBookmark;
     1879                fRef = E14A27E10CDF1E4400A5BD78 /* main.c - SCM */;
     1880        };
     1881        E14A27E10CDF1E4400A5BD78 /* main.c - SCM */ = {
     1882                isa = PBXFileReference;
     1883                path = "main.c - SCM";
     1884                sourceTree = "<group>";
     1885        };
     1886        E14A27E20CDF1E4400A5BD78 /* PBXBookmark */ = {
     1887                isa = PBXBookmark;
     1888                fRef = E14A27E30CDF1E4400A5BD78 /* CPS.h - SCM */;
     1889        };
     1890        E14A27E30CDF1E4400A5BD78 /* CPS.h - SCM */ = {
     1891                isa = PBXFileReference;
     1892                path = "CPS.h - SCM";
     1893                sourceTree = "<group>";
     1894        };
     1895        E14A27E40CDF1E4400A5BD78 /* PBXTextBookmark */ = {
     1896                isa = PBXTextBookmark;
     1897                fRef = E16C83CC03F7AF7B00050002 /* README */;
     1898                name = "README: 76";
     1899                rLen = 0;
     1900                rLoc = 2583;
     1901                rType = 0;
     1902                vrLen = 2874;
     1903                vrLoc = 742;
     1904        };
     1905        E14A27E50CDF1E4400A5BD78 /* PBXTextBookmark */ = {
     1906                isa = PBXTextBookmark;
     1907                fRef = C6859E970290921104C91782 /* appswitch.1 */;
     1908                name = "appswitch.1: 52";
     1909                rLen = 9;
     1910                rLoc = 1950;
     1911                rType = 0;
     1912                vrLen = 2535;
     1913                vrLoc = 0;
     1914        };
     1915        E14A27E60CDF1E4400A5BD78 /* PBXTextBookmark */ = {
     1916                isa = PBXTextBookmark;
     1917                fRef = E14A27A80CDF1ADE00A5BD78 /* Processes.h */;
     1918                name = "Processes.h: 799";
     1919                rLen = 0;
     1920                rLoc = 27925;
     1921                rType = 0;
     1922                vrLen = 2319;
     1923                vrLoc = 26823;
     1924        };
     1925        E14A27E80CDF1E5200A5BD78 /* PBXTextBookmark */ = {
     1926                isa = PBXTextBookmark;
     1927                fRef = 08FB7796FE84155DC02AAC07 /* main.c */;
     1928                name = "main.c: 449";
     1929                rLen = 0;
     1930                rLoc = 19322;
     1931                rType = 0;
     1932                vrLen = 3254;
     1933                vrLoc = 17383;
     1934        };
     1935        E14A27E90CDF1E5200A5BD78 /* PBXBookmark */ = {
     1936                isa = PBXBookmark;
     1937                fRef = E14A27EA0CDF1E5200A5BD78 /* main.c - SCM */;
     1938        };
     1939        E14A27EA0CDF1E5200A5BD78 /* main.c - SCM */ = {
     1940                isa = PBXFileReference;
     1941                path = "main.c - SCM";
     1942                sourceTree = "<group>";
     1943        };
     1944        E14A27EB0CDF1E5200A5BD78 /* PBXBookmark */ = {
     1945                isa = PBXBookmark;
     1946                fRef = E14A27EC0CDF1E5200A5BD78 /* CPS.h - SCM */;
     1947        };
     1948        E14A27EC0CDF1E5200A5BD78 /* CPS.h - SCM */ = {
     1949                isa = PBXFileReference;
     1950                path = "CPS.h - SCM";
     1951                sourceTree = "<group>";
     1952        };
     1953        E14A27ED0CDF1E5200A5BD78 /* PBXTextBookmark */ = {
     1954                isa = PBXTextBookmark;
     1955                fRef = E16C83CC03F7AF7B00050002 /* README */;
     1956                name = "README: 76";
     1957                rLen = 0;
     1958                rLoc = 2583;
     1959                rType = 0;
     1960                vrLen = 2874;
     1961                vrLoc = 742;
     1962        };
     1963        E14A27EE0CDF1E5200A5BD78 /* PBXTextBookmark */ = {
     1964                isa = PBXTextBookmark;
     1965                fRef = C6859E970290921104C91782 /* appswitch.1 */;
     1966                name = "appswitch.1: 52";
     1967                rLen = 9;
     1968                rLoc = 1950;
     1969                rType = 0;
     1970                vrLen = 2535;
     1971                vrLoc = 0;
     1972        };
     1973        E14A27EF0CDF1E5200A5BD78 /* PBXTextBookmark */ = {
     1974                isa = PBXTextBookmark;
     1975                fRef = E14A27A80CDF1ADE00A5BD78 /* Processes.h */;
     1976                name = "Processes.h: 799";
     1977                rLen = 0;
     1978                rLoc = 27925;
     1979                rType = 0;
     1980                vrLen = 2319;
     1981                vrLoc = 26823;
     1982        };
     1983        E14A27F10CDF1E5D00A5BD78 /* PBXTextBookmark */ = {
     1984                isa = PBXTextBookmark;
     1985                fRef = 08FB7796FE84155DC02AAC07 /* main.c */;
     1986                name = "main.c: 449";
     1987                rLen = 0;
     1988                rLoc = 19322;
     1989                rType = 0;
     1990                vrLen = 3254;
     1991                vrLoc = 17383;
     1992        };
     1993        E14A27F20CDF1E5D00A5BD78 /* PBXBookmark */ = {
     1994                isa = PBXBookmark;
     1995                fRef = E14A27F30CDF1E5D00A5BD78 /* main.c - SCM */;
     1996        };
     1997        E14A27F30CDF1E5D00A5BD78 /* main.c - SCM */ = {
     1998                isa = PBXFileReference;
     1999                path = "main.c - SCM";
     2000                sourceTree = "<group>";
     2001        };
     2002        E14A27F40CDF1E5D00A5BD78 /* PBXBookmark */ = {
     2003                isa = PBXBookmark;
     2004                fRef = E14A27F50CDF1E5D00A5BD78 /* CPS.h - SCM */;
     2005        };
     2006        E14A27F50CDF1E5D00A5BD78 /* CPS.h - SCM */ = {
     2007                isa = PBXFileReference;
     2008                path = "CPS.h - SCM";
     2009                sourceTree = "<group>";
     2010        };
     2011        E14A27F60CDF1E5D00A5BD78 /* PBXTextBookmark */ = {
     2012                isa = PBXTextBookmark;
     2013                fRef = E16C83CC03F7AF7B00050002 /* README */;
     2014                name = "README: 76";
     2015                rLen = 0;
     2016                rLoc = 2583;
     2017                rType = 0;
     2018                vrLen = 2874;
     2019                vrLoc = 742;
     2020        };
     2021        E14A27F70CDF1E5D00A5BD78 /* PBXTextBookmark */ = {
     2022                isa = PBXTextBookmark;
     2023                fRef = C6859E970290921104C91782 /* appswitch.1 */;
     2024                name = "appswitch.1: 52";
     2025                rLen = 9;
     2026                rLoc = 1950;
     2027                rType = 0;
     2028                vrLen = 2535;
     2029                vrLoc = 0;
     2030        };
     2031        E14A27F80CDF1E5D00A5BD78 /* PBXTextBookmark */ = {
     2032                isa = PBXTextBookmark;
     2033                fRef = E14A27A80CDF1ADE00A5BD78 /* Processes.h */;
     2034                name = "Processes.h: 799";
     2035                rLen = 0;
     2036                rLoc = 27925;
     2037                rType = 0;
     2038                vrLen = 2319;
     2039                vrLoc = 26823;
     2040        };
     2041        E14A27FC0CDF1F7100A5BD78 /* PBXTextBookmark */ = {
     2042                isa = PBXTextBookmark;
     2043                fRef = 08FB7796FE84155DC02AAC07 /* main.c */;
     2044                name = "main.c: 62";
     2045                rLen = 0;
     2046                rLoc = 2706;
     2047                rType = 0;
     2048                vrLen = 3151;
     2049                vrLoc = 425;
     2050        };
     2051        E14A27FD0CDF1F7100A5BD78 /* PBXTextBookmark */ = {
     2052                isa = PBXTextBookmark;
     2053                fRef = 08FB7796FE84155DC02AAC07 /* main.c */;
     2054                name = "main.c: 66";
     2055                rLen = 22;
     2056                rLoc = 2886;
     2057                rType = 0;
     2058                vrLen = 3154;
     2059                vrLoc = 425;
     2060        };
     2061        E14A27FE0CDF1F7100A5BD78 /* PBXBookmark */ = {
     2062                isa = PBXBookmark;
     2063                fRef = E14A27FF0CDF1F7100A5BD78 /* CPS.h - SCM */;
     2064        };
     2065        E14A27FF0CDF1F7100A5BD78 /* CPS.h - SCM */ = {
     2066                isa = PBXFileReference;
     2067                path = "CPS.h - SCM";
     2068                sourceTree = "<group>";
     2069        };
     2070        E14A28000CDF1F7100A5BD78 /* PBXBookmark */ = {
     2071                isa = PBXBookmark;
     2072                fRef = E14A28010CDF1F7100A5BD78 /* main.c - SCM */;
     2073        };
     2074        E14A28010CDF1F7100A5BD78 /* main.c - SCM */ = {
     2075                isa = PBXFileReference;
     2076                path = "main.c - SCM";
     2077                sourceTree = "<group>";
     2078        };
     2079        E14A28020CDF1F7100A5BD78 /* PBXTextBookmark */ = {
     2080                isa = PBXTextBookmark;
     2081                fRef = C6859E970290921104C91782 /* appswitch.1 */;
     2082                name = "appswitch.1: 52";
     2083                rLen = 9;
     2084                rLoc = 1950;
     2085                rType = 0;
     2086                vrLen = 2535;
     2087                vrLoc = 0;
     2088        };
     2089        E14A28030CDF1F7100A5BD78 /* PBXTextBookmark */ = {
     2090                isa = PBXTextBookmark;
     2091                fRef = E14A27A80CDF1ADE00A5BD78 /* Processes.h */;
     2092                name = "Processes.h: 799";
     2093                rLen = 0;
     2094                rLoc = 27925;
     2095                rType = 0;
     2096                vrLen = 2319;
     2097                vrLoc = 26823;
     2098        };
     2099        E14A28060CDF1F9B00A5BD78 /* PBXTextBookmark */ = {
     2100                isa = PBXTextBookmark;
     2101                fRef = 08FB7796FE84155DC02AAC07 /* main.c */;
     2102                name = "main.c: 66";
     2103                rLen = 0;
     2104                rLoc = 2946;
     2105                rType = 0;
     2106                vrLen = 3170;
     2107                vrLoc = 425;
     2108        };
     2109        E14A28070CDF1F9B00A5BD78 /* PBXBookmark */ = {
     2110                isa = PBXBookmark;
     2111                fRef = E14A28080CDF1F9B00A5BD78 /* CPS.h - SCM */;
     2112        };
     2113        E14A28080CDF1F9B00A5BD78 /* CPS.h - SCM */ = {
     2114                isa = PBXFileReference;
     2115                path = "CPS.h - SCM";
     2116                sourceTree = "<group>";
     2117        };
     2118        E14A28090CDF1F9B00A5BD78 /* PBXBookmark */ = {
     2119                isa = PBXBookmark;
     2120                fRef = E14A280A0CDF1F9B00A5BD78 /* main.c - SCM */;
     2121        };
     2122        E14A280A0CDF1F9B00A5BD78 /* main.c - SCM */ = {
     2123                isa = PBXFileReference;
     2124                path = "main.c - SCM";
     2125                sourceTree = "<group>";
     2126        };
     2127        E14A280B0CDF1F9B00A5BD78 /* PBXTextBookmark */ = {
     2128                isa = PBXTextBookmark;
     2129                fRef = C6859E970290921104C91782 /* appswitch.1 */;
     2130                name = "appswitch.1: 52";
     2131                rLen = 9;
     2132                rLoc = 1950;
     2133                rType = 0;
     2134                vrLen = 2535;
     2135                vrLoc = 0;
     2136        };
     2137        E14A280C0CDF1F9B00A5BD78 /* PBXTextBookmark */ = {
     2138                isa = PBXTextBookmark;
     2139                fRef = E14A27A80CDF1ADE00A5BD78 /* Processes.h */;
     2140                name = "Processes.h: 799";
     2141                rLen = 0;
     2142                rLoc = 27925;
     2143                rType = 0;
     2144                vrLen = 2319;
     2145                vrLoc = 26823;
     2146        };
     2147        E14A280E0CDF203F00A5BD78 /* PBXBookmark */ = {
     2148                isa = PBXBookmark;
     2149                fRef = E16C83CC03F7AF7B00050002 /* README */;
     2150        };
     2151        E14A28100CDF206E00A5BD78 /* PBXTextBookmark */ = {
     2152                isa = PBXTextBookmark;
     2153                fRef = 08FB7796FE84155DC02AAC07 /* main.c */;
     2154                name = "main.c: 66";
     2155                rLen = 0;
     2156                rLoc = 2946;
     2157                rType = 0;
     2158                vrLen = 3170;
     2159                vrLoc = 425;
     2160        };
     2161        E14A28110CDF206E00A5BD78 /* PBXTextBookmark */ = {
     2162                isa = PBXTextBookmark;
     2163                fRef = 08FB7796FE84155DC02AAC07 /* main.c */;
     2164                name = "main.c: 478";
     2165                rLen = 0;
     2166                rLoc = 20489;
     2167                rType = 0;
     2168                vrLen = 3139;
     2169                vrLoc = 17632;
     2170        };
     2171        E14A28140CDF206E00A5BD78 /* PBXTextBookmark */ = {
     2172                isa = PBXTextBookmark;
     2173                fRef = E16C83CC03F7AF7B00050002 /* README */;
     2174                name = "README: 76";
     2175                rLen = 0;
     2176                rLoc = 2584;
     2177                rType = 0;
     2178                vrLen = 2814;
     2179                vrLoc = 0;
     2180        };
     2181        E14A28150CDF206E00A5BD78 /* PBXBookmark */ = {
     2182                isa = PBXBookmark;
     2183                fRef = E14A28160CDF206E00A5BD78 /* CPS.h - SCM */;
     2184        };
     2185        E14A28160CDF206E00A5BD78 /* CPS.h - SCM */ = {
     2186                isa = PBXFileReference;
     2187                path = "CPS.h - SCM";
     2188                sourceTree = "<group>";
     2189        };
     2190        E14A28170CDF206E00A5BD78 /* PBXBookmark */ = {
     2191                isa = PBXBookmark;
     2192                fRef = E14A28180CDF206E00A5BD78 /* main.c - SCM */;
     2193        };
     2194        E14A28180CDF206E00A5BD78 /* main.c - SCM */ = {
     2195                isa = PBXFileReference;
     2196                path = "main.c - SCM";
     2197                sourceTree = "<group>";
     2198        };
     2199        E14A28190CDF206E00A5BD78 /* PBXTextBookmark */ = {
     2200                isa = PBXTextBookmark;
     2201                fRef = E14A27A80CDF1ADE00A5BD78 /* Processes.h */;
     2202                name = "Processes.h: 799";
     2203                rLen = 0;
     2204                rLoc = 27925;
     2205                rType = 0;
     2206                vrLen = 2319;
     2207                vrLoc = 26823;
     2208        };
     2209        E14A28210CDF20F700A5BD78 /* PBXTextBookmark */ = {
     2210                isa = PBXTextBookmark;
     2211                fRef = 08FB7796FE84155DC02AAC07 /* main.c */;
     2212                name = "main.c: 447";
     2213                rLen = 0;
     2214                rLoc = 19079;
     2215                rType = 0;
     2216                vrLen = 3154;
     2217                vrLoc = 17632;
     2218        };
     2219        E14A28220CDF20F700A5BD78 /* PBXBookmark */ = {
     2220                isa = PBXBookmark;
     2221                fRef = E14A28230CDF20F700A5BD78 /* main.c - SCM */;
     2222        };
     2223        E14A28230CDF20F700A5BD78 /* main.c - SCM */ = {
     2224                isa = PBXFileReference;
     2225                path = "main.c - SCM";
     2226                sourceTree = "<group>";
     2227        };
     2228        E14A28240CDF20F700A5BD78 /* PBXTextBookmark */ = {
     2229                isa = PBXTextBookmark;
     2230                fRef = E16C83CC03F7AF7B00050002 /* README */;
     2231                name = "README: 76";
     2232                rLen = 0;
     2233                rLoc = 2584;
     2234                rType = 0;
     2235                vrLen = 2814;
     2236                vrLoc = 0;
     2237        };
     2238        E14A28250CDF20F700A5BD78 /* PBXTextBookmark */ = {
     2239                isa = PBXTextBookmark;
     2240                fRef = E14A27A80CDF1ADE00A5BD78 /* Processes.h */;
     2241                name = "Processes.h: 799";
     2242                rLen = 0;
     2243                rLoc = 27925;
     2244                rType = 0;
     2245                vrLen = 2319;
     2246                vrLoc = 26823;
     2247        };
     2248        E14A28340CDF227400A5BD78 /* XCDiffFileBookmark */ = {
     2249                isa = XCDiffFileBookmark;
     2250                id = "256BC039-EE85-4E3D-82E5-80D340A7EDC3-23114-0000E633184BD777";
     2251        };
     2252        E14A28350CDF227400A5BD78 /* PBXBookmark */ = {
     2253                isa = PBXBookmark;
     2254                fRef = E14A28360CDF227400A5BD78 /* main.c - SCM */;
     2255        };
     2256        E14A28360CDF227400A5BD78 /* main.c - SCM */ = {
     2257                isa = PBXFileReference;
     2258                path = "main.c - SCM";
     2259                sourceTree = "<group>";
    5022260        };
    5032261        E1607EF90AF3700B001EAB72 /* appswitch */ = {
     
    5092267        E1607F090AF3700B001EAB72 /* appswitch */ = {
    5102268                isa = PBXExecutable;
    511                 activeArgIndex = 2147483647;
    5122269                activeArgIndices = (
     2270                        YES,
    5132271                );
    5142272                argumentStrings = (
     2273                        "-l",
    5152274                );
    5162275                autoAttachOnCrash = 1;
     2276                breakpointsEnabled = 0;
    5172277                configStateDict = {
     2278                        "PBXLSLaunchAction-0" = {
     2279                                PBXLSLaunchAction = 0;
     2280                                PBXLSLaunchStartAction = 1;
     2281                                PBXLSLaunchStdioStyle = 2;
     2282                                PBXLSLaunchStyle = 0;
     2283                                class = PBXLSRunLaunchConfig;
     2284                                commandLineArgs = (
     2285                                );
     2286                                displayName = "Executable Runner";
     2287                                environment = {
     2288                                };
     2289                                identifier = com.apple.Xcode.launch.runConfig;
     2290                                remoteHostInfo = "";
     2291                                startActionInfo = "";
     2292                        };
    5182293                };
    5192294                customDataFormattersEnabled = 1;
    5202295                debuggerPlugin = GDBDebugging;
    5212296                disassemblyDisplayState = 0;
     2297                dylibVariantSuffix = "";
    5222298                enableDebugStr = 1;
    5232299                environmentEntries = (
     
    5272303                libgmallocEnabled = 0;
    5282304                name = appswitch;
     2305                savedGlobals = {
     2306                };
    5292307                sourceDirectories = (
    5302308                );
     2309                variableFormatDictionary = {
     2310                };
    5312311        };
    5322312        E16C83CC03F7AF7B00050002 /* README */ = {
    5332313                uiCtxt = {
    534                         sepNavIntBoundsRect = "{{0, 0}, {778, 1236}}";
    535                         sepNavSelRange = "{1594, 0}";
     2314                        sepNavIntBoundsRect = "{{0, 0}, {758, 1144}}";
     2315                        sepNavSelRange = "{2584, 0}";
     2316                        sepNavVisRange = "{0, 2814}";
    5362317                        sepNavVisRect = "{{0, 0}, {778, 872}}";
    5372318                        sepNavWindowFrame = "{{15, 67}, {817, 930}}";
     
    5442325                scmConfiguration = {
    5452326                        SubversionToolPath = /opt/local/bin/svn;
     2327                        repositoryName = dev.sabi.net;
    5462328                };
    5472329                scmType = scm.subversion;
     
    5532335        E1A0BD3203EFAD9E00050001 /* CPS.h */ = {
    5542336                uiCtxt = {
    555                         sepNavIntBoundsRect = "{{0, 0}, {662, 3612}}";
    556                         sepNavSelRange = "{4292, 56}";
     2337                        sepNavIntBoundsRect = "{{0, 0}, {877, 869}}";
     2338                        sepNavSelRange = "{446, 0}";
     2339                        sepNavVisRange = "{0, 634}";
    5572340                        sepNavVisRect = "{{0, 2937}, {662, 498}}";
    558                         sepNavWindowFrame = "{{284, 60}, {936, 905}}";
     2341                        sepNavWindowFrame = "{{33, 87}, {936, 905}}";
    5592342                };
    5602343        };
    561         E1A3245B0AF398A3003E2DC8 /* PBXTextBookmark */ = {
    562                 isa = PBXTextBookmark;
    563                 fRef = E16C83CC03F7AF7B00050002 /* README */;
    564                 name = "README: 46";
    565                 rLen = 0;
    566                 rLoc = 1594;
    567                 rType = 0;
    568                 vrLen = 2520;
    569                 vrLoc = 0;
    570         };
    571         E1A3245C0AF398A3003E2DC8 /* PBXTextBookmark */ = {
    572                 isa = PBXTextBookmark;
    573                 fRef = E1ED1FFE0AF38A5800F9825D /* IOCFBundle.h */;
    574                 name = "CFSTR(\"CFBundleIdentifier\")";
    575                 rLen = 27;
    576                 rLoc = 278;
    577                 rType = 0;
    578                 vrLen = 519;
    579                 vrLoc = 0;
    580         };
    581         E1A324600AF398B4003E2DC8 /* PBXTextBookmark */ = {
    582                 isa = PBXTextBookmark;
    583                 fRef = E16C83CC03F7AF7B00050002 /* README */;
    584                 name = "README: 46";
    585                 rLen = 0;
    586                 rLoc = 1594;
    587                 rType = 0;
    588                 vrLen = 2520;
    589                 vrLoc = 0;
    590         };
    591         E1A324610AF398B4003E2DC8 /* PBXTextBookmark */ = {
    592                 isa = PBXTextBookmark;
    593                 fRef = E1ED1FFE0AF38A5800F9825D /* IOCFBundle.h */;
    594                 name = "CFSTR(\"CFBundleIdentifier\")";
    595                 rLen = 27;
    596                 rLoc = 278;
    597                 rType = 0;
    598                 vrLen = 519;
    599                 vrLoc = 0;
    600         };
    601         E1ED1FFD0AF38A5800F9825D /* PBXTextBookmark */ = {
    602                 isa = PBXTextBookmark;
    603                 fRef = E1ED1FFE0AF38A5800F9825D /* IOCFBundle.h */;
    604                 rLen = 0;
    605                 rLoc = 2147483647;
    606                 rType = 0;
    607         };
    608         E1ED1FFE0AF38A5800F9825D /* IOCFBundle.h */ = {
    609                 isa = PBXFileReference;
    610                 lastKnownFileType = sourcecode.c.h;
    611                 name = IOCFBundle.h;
    612                 path = /System/Library/Frameworks/IOKit.framework/Versions/A/Headers/IOCFBundle.h;
    613                 sourceTree = "<absolute>";
    614                 uiCtxt = {
    615                         sepNavIntBoundsRect = "{{0, 0}, {778, 872}}";
    616                         sepNavSelRange = "{278, 27}";
    617                         sepNavVisRect = "{{0, 0}, {778, 872}}";
    618                 };
    619         };
    620         E1ED200E0AF38AB700F9825D /* XCBreakpointsBucket */ = {
    621                 isa = XCBreakpointsBucket;
    622                 name = "Project Breakpoints";
    623                 objects = (
    624                 );
    625         };
    626         E1ED20980AF3924800F9825D /* PBXBookmark */ = {
    627                 isa = PBXBookmark;
    628                 fRef = E16C83CC03F7AF7B00050002 /* README */;
    629         };
    630         E1ED20AE0AF392EB00F9825D /* PBXTextBookmark */ = {
    631                 isa = PBXTextBookmark;
    632                 fRef = E16C83CC03F7AF7B00050002 /* README */;
    633                 name = "README: 48";
    634                 rLen = 0;
    635                 rLoc = 1594;
    636                 rType = 0;
    637                 vrLen = 2541;
    638                 vrLoc = 0;
    639         };
    640         E1ED20AF0AF392EB00F9825D /* PBXTextBookmark */ = {
    641                 isa = PBXTextBookmark;
    642                 fRef = E1ED20B00AF392EB00F9825D /* IOCFBundle.h */;
    643                 name = "CFSTR(\"CFBundleIdentifier\")";
    644                 rLen = 27;
    645                 rLoc = 278;
    646                 rType = 0;
    647                 vrLen = 519;
    648                 vrLoc = 0;
    649         };
    650         E1ED20B00AF392EB00F9825D /* IOCFBundle.h */ = {
    651                 isa = PBXFileReference;
    652                 lastKnownFileType = sourcecode.c.h;
    653                 name = IOCFBundle.h;
    654                 path = /System/Library/Frameworks/IOKit.framework/Versions/A/Headers/IOCFBundle.h;
    655                 sourceTree = "<absolute>";
    656         };
    6572344}
  • trunk/appswitch/appswitch/appswitch.xcodeproj/project.pbxproj

    r307 r345  
    3232                08FB7796FE84155DC02AAC07 /* main.c */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 4; lastKnownFileType = sourcecode.c.c; path = main.c; sourceTree = "<group>"; tabWidth = 8; usesTabs = 0; };
    3333                C6859E970290921104C91782 /* appswitch.1 */ = {isa = PBXFileReference; lastKnownFileType = text.man; path = appswitch.1; sourceTree = "<group>"; };
    34                 E1607F080AF3700B001EAB72 /* appswitch */ = {isa = PBXFileReference; includeInIndex = 0; lastKnownFileType = "compiled.mach-o.executable"; path = appswitch; sourceTree = BUILT_PRODUCTS_DIR; };
     34                E1607F080AF3700B001EAB72 /* appswitch */ = {isa = PBXFileReference; explicitFileType = "compiled.mach-o.executable"; includeInIndex = 0; path = appswitch; sourceTree = BUILT_PRODUCTS_DIR; };
    3535                E16C83CC03F7AF7B00050002 /* README */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = README; sourceTree = "<group>"; };
    3636                E1A0BD3203EFAD9E00050001 /* CPS.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = CPS.h; sourceTree = "<group>"; };
     
    135135                        isa = PBXProject;
    136136                        buildConfigurationList = E1607EEF0AF36FB6001EAB72 /* Build configuration list for PBXProject "appswitch" */;
     137                        compatibilityVersion = "Xcode 2.4";
    137138                        hasScannedForEncodings = 1;
    138139                        mainGroup = 08FB7794FE84155DC02AAC07 /* appswitch */;
    139140                        projectDirPath = "";
     141                        projectRoot = "";
    140142                        targets = (
    141143                                E1607EF90AF3700B001EAB72 /* appswitch */,
     
    167169/* Begin XCBuildConfiguration section */
    168170                E1607EF00AF36FB6001EAB72 /* Development */ = {
     171                        isa = XCBuildConfiguration;
     172                        buildSettings = {
     173                                SDKROOT = /Developer/SDKs/MacOSX10.4u.sdk;
     174                        };
     175                        name = Development;
     176                };
     177                E1607EF10AF36FB6001EAB72 /* Deployment */ = {
    169178                        isa = XCBuildConfiguration;
    170179                        buildSettings = {
     
    173182                                        i386,
    174183                                );
    175                         };
    176                         name = Development;
    177                 };
    178                 E1607EF10AF36FB6001EAB72 /* Deployment */ = {
    179                         isa = XCBuildConfiguration;
    180                         buildSettings = {
    181                                 ARCHS = (
    182                                         ppc,
    183                                         i386,
    184                                 );
     184                                SDKROOT = /Developer/SDKs/MacOSX10.4u.sdk;
    185185                        };
    186186                        name = Deployment;
    187                 };
    188                 E1607EF20AF36FB6001EAB72 /* Default */ = {
    189                         isa = XCBuildConfiguration;
    190                         buildSettings = {
    191                                 ARCHS = (
    192                                         ppc,
    193                                         i386,
    194                                 );
    195                         };
    196                         name = Default;
    197187                };
    198188                E1607F050AF3700B001EAB72 /* Development */ = {
     
    232222                        name = Deployment;
    233223                };
    234                 E1607F070AF3700B001EAB72 /* Default */ = {
    235                         isa = XCBuildConfiguration;
    236                         buildSettings = {
    237                                 INSTALL_PATH = "$(HOME)/bin";
    238                                 MACOSX_DEPLOYMENT_TARGET = 10.3;
    239                                 PRODUCT_NAME = appswitch;
    240                                 WARNING_CFLAGS = (
    241                                         "-Wmost",
    242                                         "-Wno-four-char-constants",
    243                                         "-Wno-unknown-pragmas",
    244                                 );
    245                         };
    246                         name = Default;
    247                 };
    248224/* End XCBuildConfiguration section */
    249225
     
    254230                                E1607EF00AF36FB6001EAB72 /* Development */,
    255231                                E1607EF10AF36FB6001EAB72 /* Deployment */,
    256                                 E1607EF20AF36FB6001EAB72 /* Default */,
    257232                        );
    258233                        defaultConfigurationIsVisible = 0;
    259                         defaultConfigurationName = Default;
     234                        defaultConfigurationName = Deployment;
    260235                };
    261236                E1607F040AF3700B001EAB72 /* Build configuration list for PBXNativeTarget "appswitch" */ = {
     
    264239                                E1607F050AF3700B001EAB72 /* Development */,
    265240                                E1607F060AF3700B001EAB72 /* Deployment */,
    266                                 E1607F070AF3700B001EAB72 /* Default */,
    267241                        );
    268242                        defaultConfigurationIsVisible = 0;
    269                         defaultConfigurationName = Default;
     243                        defaultConfigurationName = Deployment;
    270244                };
    271245/* End XCConfigurationList section */
  • trunk/appswitch/appswitch/main.c

    r306 r345  
    33 Nicholas Riley <appswitch@sabi.net>
    44
    5  Copyright (c) 2003-06, Nicholas Riley
     5 Copyright (c) 2003-07, Nicholas Riley
    66 All rights reserved.
    77
     
    2626const char *APP_NAME;
    2727
    28 #define VERSION "1.1d1"
     28#define VERSION "1.1d2"
    2929
    3030struct {
     
    6464    // CoreGraphics errors
    6565    { kCGErrorIllegalArgument, "window server error.\nAre you logged in?" },
     66    { kCGErrorInvalidContext, "application context unavailable" },
    6667    { fnfErr, "file not found" },
    6768    // (abused) errors
     
    295296}
    296297
    297 char *getInfoCString(CFDictionaryRef info, CFStringRef key) {
    298     CFStringRef str = CFDictionaryGetValue(info, key);
     298CFStringRef stringTrimmedToWidth(CFStringRef str, CFIndex width) {
    299299    if (str == NULL)
    300         return "";
    301     static char *cStr = NULL;
    302     static bool wasDynamic = false;
    303     if (wasDynamic)
    304         free(cStr);
    305     cStr = (char *)CFStringGetCStringPtr(str, CFStringGetSystemEncoding());
    306     if (cStr != NULL) {
    307         wasDynamic = false;
    308     } else {
    309         CFIndex cStrLength = CFStringGetMaximumSizeOfFileSystemRepresentation(str);
    310         cStr = (char *)malloc(cStrLength * sizeof(char));
    311         if (!CFStringGetFileSystemRepresentation(str, cStr, cStrLength)) {
    312             CFShow(cStr);
    313             errexit("internal error: string encoding conversion failed");
    314         }
    315         wasDynamic = true;
    316     }
    317     return cStr;
     300        str = CFSTR("");
     301    CFIndex length = CFStringGetLength(str);
     302    if (length == width)
     303        return CFRetain(str);
     304   
     305    CFMutableStringRef padStr = CFStringCreateMutableCopy(NULL, width, str);
     306    CFStringPad(padStr, CFSTR(" "), width, 0);
     307    return padStr;
    318308}
    319309
     
    326316    };
    327317    pid_t pid;
    328     char *format = NULL;
     318    CFStringRef format = NULL;
     319    CFIndex nameWidth = 19;
     320    CFIndex pathWidth = 0;
    329321    if (OPTS.appAction == APP_LIST) {
    330322        int termwidth = 80;
     
    336328             ioctl(STDIN_FILENO,  TIOCGWINSZ, (char *)&ws) != -1) ||
    337329            ws.ws_col != 0) termwidth = ws.ws_col;
    338         char *formatButPath = "%9ld.%ld %5ld %4s %4s %-19.19s";
    339         int pathlen = termwidth - strlen(banner) - 1;
    340         // XXX don't ever free 'format', should fix if we get called repeatedly
     330        char *formatButPath = "%9ld.%ld %5ld %@ %@ %@";
     331        // XXX don't ever release 'format', should fix if we get called repeatedly
    341332        if (OPTS.longList) {
     333            pathWidth = 1;
    342334            printf("%s PATH (bundle identifier)\n", banner);
    343             asprintf(&format, "%s %%s", formatButPath);
    344         } else if (pathlen >= 4) {
    345             printf("%s PATH\n", banner);
    346             asprintf(&format, "%s %%-%d.%ds", formatButPath, pathlen, pathlen);
     335            format = CFStringCreateWithFormat(NULL, NULL, CFSTR("%s %%@"), formatButPath);
    347336        } else {
    348             format = formatButPath;
     337            pathWidth = termwidth - strlen(banner) - 1;
     338            if (pathWidth >= 4) {
     339                printf("%s PATH\n", banner);
     340                format = CFStringCreateWithFormat(NULL, NULL, CFSTR("%s %%@"), formatButPath);
     341            } else {
     342                pathWidth = 0;
     343                format = CFStringCreateWithCString(NULL, formatButPath, kCFStringEncodingUTF8);
     344            }
    349345        }
    350346    }
     
    366362            case MATCH_PID: err = GetProcessPID(&psn, &pid); if (err != noErr || OPTS.pid != pid) continue;
    367363                break;
    368             case MATCH_PATH: if (!infoStringMatches(info, CFSTR("BundlePath"), OPTS.path)) continue;
     364            case MATCH_PATH: if (!infoStringMatches(info, CFSTR("BundlePath"), OPTS.path) &&
     365                !infoStringMatches(info, CFSTR("CFBundleExecutable"), OPTS.path)) continue;
    369366                break;
    370367            case MATCH_BUNDLE_ID: if (!infoStringMatches(info, CFSTR("CFBundleIdentifier"), OPTS.bundleID)) continue;
     
    376373            if (GetProcessPID(&psn, &pid) != noErr)
    377374                pid = -1;
    378             printf(format, psn.lowLongOfPSN, psn.highLongOfPSN, pid,
    379                    getInfoCString(info, CFSTR("FileType")), getInfoCString(info, CFSTR("FileCreator")),
    380                    getInfoCString(info, CFSTR("CFBundleName")), getInfoCString(info, CFSTR("BundlePath")));
    381             if (OPTS.longList) {
    382                 char *bundleID = getInfoCString(info, CFSTR("CFBundleIdentifier"));
    383                 if (bundleID[0] != '\0')
    384                     printf(" (%s)", bundleID);
     375            CFStringRef path = NULL;
     376            // XXX padding/truncation probably breaks with double-width characters
     377            if (pathWidth) {
     378                path = CFDictionaryGetValue(info, CFSTR("BundlePath"));
     379                if (path == NULL)
     380                    path = CFDictionaryGetValue(info, CFSTR("CFBundleExecutable"));
     381                if (!OPTS.longList)
     382                    path = stringTrimmedToWidth(path, pathWidth);
    385383            }
    386             putchar('\n');
     384            CFStringRef name = stringTrimmedToWidth(CFDictionaryGetValue(info, CFSTR("CFBundleName")), nameWidth);
     385            CFStringRef type = stringTrimmedToWidth(CFDictionaryGetValue(info, CFSTR("FileType")), 4);
     386            CFStringRef creator = stringTrimmedToWidth(CFDictionaryGetValue(info, CFSTR("FileCreator")), 4);
     387            CFStringRef line = CFStringCreateWithFormat(NULL, NULL, format,
     388                psn.lowLongOfPSN, psn.highLongOfPSN, pid, type, creator, name, path);
     389            CFRelease(name);
     390            CFRelease(type);
     391            CFRelease(creator);
     392            if (!OPTS.longList)
     393                CFRelease(path);
     394            else {
     395                CFStringRef bundleID = CFDictionaryGetValue(info, CFSTR("CFBundleIdentifier"));
     396                if (bundleID != NULL && CFStringGetLength(bundleID) != 0) {
     397                    CFStringRef origLine = line;
     398                    line = CFStringCreateWithFormat(NULL, NULL, CFSTR("%@ (%@)"), line, bundleID);
     399                    CFRelease(origLine);
     400                }
     401            }
     402            char *cStr = (char *)CFStringGetCStringPtr(line, CFStringGetSystemEncoding());
     403            if (cStr != NULL) {
     404                puts(cStr);
     405            } else {
     406                CFIndex cStrLength = CFStringGetMaximumSizeOfFileSystemRepresentation(line);
     407                cStr = (char *)malloc(cStrLength * sizeof(char));
     408                if (!CFStringGetFileSystemRepresentation(line, cStr, cStrLength)) {
     409                    CFShow(cStr);
     410                    errexit("internal error: string encoding conversion failed");
     411                }
     412                puts(cStr);
     413                free(cStr);
     414            }
    387415            continue;
    388416        }
     
    394422
    395423    errexit("can't find matching process");
    396     return psn;
     424    return psn; // not reached
    397425}
    398426
     
    410438        case APP_LIST: break; // already handled in matchApplication
    411439        case APP_SWITCH: err = SetFrontProcess(&psn); verb = "set front"; break;
     440        // XXX show/hide return paramErr - rdar://problem/5579375 - ask on carbon-dev later
    412441        case APP_SHOW: err = ShowHideProcess(&psn, true); verb = "show"; break;
    413442        case APP_HIDE: err = ShowHideProcess(&psn, false); verb = "hide"; break;
     
    416445        case APP_KILL_HARD:
    417446        {
     447            // no Process Manager equivalent - rdar://problem/4808400
    418448            if (kill(getPID(&psn), SIGKILL) == -1)
    419449                err = (errno == ESRCH) ? procNotFound : (errno == EPERM ? permErr : paramErr);
     
    431461    switch (OPTS.action) {
    432462        case ACTION_NONE: break;
     463        // no Process Manager equivalents - rdar://problem/4808397
    433464        case ACTION_SHOW_ALL: err = CPSPostShowAllReq(&psn); verb = "show all"; break;
    434465        case ACTION_HIDE_OTHERS: err = CPSPostHideMostReq(&psn); verb = "hide other"; break;
Note: See TracChangeset for help on using the changeset viewer.